Sorry your browser is not supported!

You are using an outdated browser that does not support modern web technologies, in order to use this site please update to a new browser.

Browsers supported include Chrome, FireFox, Safari, Opera, Internet Explorer 10+ or Microsoft Edge.

Work in Progress / DarkBASIC Professional ODE Physics wrapper (WIP)

Author
Message
APEXnow
Retired Moderator
21
Years of Service
User Offline
Joined: 15th Apr 2003
Location: On a park bench
Posted: 25th Feb 2005 18:59
DarkBASIC Professional ODE Physics wrapper (WIP)

Welcome to my ODE Physics wrapper for DarkBASIC Professional.

This is a work in progress (time limited) release of the ODE physics wrapper.
The DLL will cease to function after approximately five minutes

No documentation is available as yet so please bare this in mind.

Installation:
Copy the ODEPhysics.dll file to your DarkBASIC Professional - "./compiler/plugins-user" folder
Include the ODE.dba file as part of your project

There are over 220 functions available in this library, but as this is a
Work In Progress wrapper, not all ODE functions are yet available.

******************************
*** USER LICENSE ***
******************************
You ARE allowed to distribute the "ODEPhysics.dll file included in this package with your games and
applications (this applies to the not yet released full version only). You are NOT allowed to distribute this library as part
of another physics system (for example, a high-level physics system which uses this library),
or as a single package. The rest of the files included within the wrapper cannot be redistributed.

(C) Paul S. J. Millard 2005
http://www.apexnow.co.uk
apex@apexnow.co.uk

http://www.apexnow.co.uk/dbpro-ode-physics-1.0.0.zip


Home of the Cartography Shop - DarkBASIC Professional map importer
Baggers
20
Years of Service
User Offline
Joined: 31st May 2004
Location: Yonder over dem dere hills
Posted: 25th Feb 2005 19:44
Good start but was this suposed to happen ? (see attached pic)

Attachments

Login to view attachments
APEXnow
Retired Moderator
21
Years of Service
User Offline
Joined: 15th Apr 2003
Location: On a park bench
Posted: 25th Feb 2005 21:14
Yeah, there does seem to be a lil'problem with objects falling through. It doesn't happen on my machine, but it all depends on the Contact parameters and ERP/CMF settings. As said, there's more to do yet and test.

Paul.


Home of the Cartography Shop - DarkBASIC Professional map importer
Baggers
20
Years of Service
User Offline
Joined: 31st May 2004
Location: Yonder over dem dere hills
Posted: 25th Feb 2005 23:27
Cool yeah other than that it looked a very solid start, ill keep my eye on this
APEXnow
Retired Moderator
21
Years of Service
User Offline
Joined: 15th Apr 2003
Location: On a park bench
Posted: 26th Feb 2005 01:30
Baggers, thanks for your feedback

Paul.


Home of the Cartography Shop - DarkBASIC Professional map importer
Spline
20
Years of Service
User Offline
Joined: 30th Oct 2004
Location: London U.K
Posted: 26th Feb 2005 06:40
Nice work apex
is ODE very complicated to understand
APEXnow
Retired Moderator
21
Years of Service
User Offline
Joined: 15th Apr 2003
Location: On a park bench
Posted: 26th Feb 2005 06:54
It's a diverse but heavily functional physics system. There are over 250 odd functions available, but I've still yet to implement wrappers for a few more of the important ones.

Paul.


Home of the Cartography Shop - DarkBASIC Professional map importer
Lost in Thought
20
Years of Service
User Offline
Joined: 4th Feb 2004
Location: U.S.A. : Douglas, Georgia
Posted: 6th Mar 2005 15:18
Glad to see the progress for your efforts on this. I'll be keeping an eye on this one

Benjamin
21
Years of Service
User Offline
Joined: 24th Nov 2002
Location: France
Posted: 7th Mar 2005 02:41
Why is it time limited?


"Lets migrate like bricks" - Me
APEXnow
Retired Moderator
21
Years of Service
User Offline
Joined: 15th Apr 2003
Location: On a park bench
Posted: 8th Mar 2005 19:53
Benjamin, although the ODE physics system is OpenSource, I'm not planning to write wrappers for every function available in the library and just give it away. I've already done this with the CSM importer and the other tools available on my site. Now I'd like a little something back. I will be planning on selling the wrapper, although it will not be expensive. But you must appreciate that I would like to start making some revinue on the work which is directed at the Wrapper, not the physics system itself. The plugin currently supports 95% of the ODE physics functions and this is over 230 functions so far. I'll be adding helper functions to make life simpler for setting up physics quickly for objects in DarkBASIC Professional.

The time limit system is to prevent my wrapper from being exploited and used for any commercial or non-commericial purposes. Basically what you have here at the moment is a demonstration of what the end product will be like.

Paul.


Home of the Cartography Shop - DarkBASIC Professional map importer
Baggers
20
Years of Service
User Offline
Joined: 31st May 2004
Location: Yonder over dem dere hills
Posted: 9th Mar 2005 02:07
Hey APEX...now i dont want to try and put you down because this looks like a class project, however this community has been lucky enough to recieve netwons physics wrapper for free, will yours be able to compete with this ? ...if so on what levels (e.g. Speed, ease of use, accuracy )?
APEXnow
Retired Moderator
21
Years of Service
User Offline
Joined: 15th Apr 2003
Location: On a park bench
Posted: 9th Mar 2005 04:57
Baggers, I'm in no way attempting to create a competitive string against other physics systems as the Newton physics library is an excellent alternative. I'm just adding to that collective resource of already supported physics libraries available to DarkBASIC Professional users. At the end of the day, the choice for which system a user decides to use is entirely optional.

To really learn more about what the Open Dynamics Enigne can do, please visit http://www.ode.org/.

My primary reason for producing this wrapper is that I found the engine extremely powerful in what could be acheived, not only with simple geometric objects such as cubes, cylinders and spheres etc, but it supports rigid body physics dynamics for trimesh data, i.e. any three dimensional solid shape. This is ideal as a combined system to my Cartography Shop map importer.

The general idea is that users of Cartography Shop will be able to create maps with configurable entities and map brushes which react to forces and gravity etc. Exposing the ODE function set to DarkBASIC Professional is just one piece of the puzzle. But to allow easy configuration of grouped meshes in Cartography Shop would be even better. Don't you agree that this has serious potential for would be game/map developers? I can't afford to give this away if people are willing pay that little contribution for what they could evetually make on their kickass killer app!

Paul.


Home of the Cartography Shop - DarkBASIC Professional map importer
Lost in Thought
20
Years of Service
User Offline
Joined: 4th Feb 2004
Location: U.S.A. : Douglas, Georgia
Posted: 9th Mar 2005 05:45
Like I said in the cshop thread ... with the support you give for all your current software, I'll buy it when you get it done. I love media copy and the importer; and your support for both has been outstanding.

APEXnow
Retired Moderator
21
Years of Service
User Offline
Joined: 15th Apr 2003
Location: On a park bench
Posted: 9th Mar 2005 06:01
Thank's L.I.T.


Home of the Cartography Shop - DarkBASIC Professional map importer
MikeS
Retired Moderator
21
Years of Service
User Offline
Joined: 2nd Dec 2002
Location: United States
Posted: 9th Mar 2005 09:06
Great work Apex. I can see a lot of hard work has gone into this. As far as you selling the wrapper goes, I see no problem in that, for once the end product is released I might take an even closer look.



A book? I hate book. Book is stupid.
(Formerly known as Yellow)
adr
21
Years of Service
User Offline
Joined: 21st May 2003
Location: Job Centre
Posted: 9th Mar 2005 23:08
I think an alternative to newton can only be a good thing - paid for or otherwise. What APEX needs (if you don't mind me putting words in your mouth ) is some showcase efforts. I've looked on the ODE page and there seems to be a lot of vehicular implementations of ODE. Newton's vehicle joint seems to be relatively new, so that might explain the difference in car offerings ....

I'm tempted to download this and have a go...

book is death - wife is stupid
Required
19
Years of Service
User Offline
Joined: 25th Feb 2005
Location: Server Down
Posted: 9th Mar 2005 23:28
I've downloaded it, might see what I can make with it.
Something I was not keen on about Newton Dynamics, was how it was wrapped rather than redeveloped for the Dark Basic Professional Syntax.

Makes it feel complex and bulky to use.

If you are interested I have Open Dynamics Engine's bigger brother Kea/Auther. 13MB with examples (2MB with out), and is capable of just about everything Havok can do.

System: Windows XP CPU: AMD Athlon 2600+ RAM: 512MB Video: GeForce FX 5200 Audio: C-Media 9739 DirectX: Version 9.0c
APEXnow
Retired Moderator
21
Years of Service
User Offline
Joined: 15th Apr 2003
Location: On a park bench
Posted: 10th Mar 2005 00:37
Quote: "is some showcase efforts"


@adr, this is the next phase of the wrapper, but I agree, most definately required.

@Required, yeah, although the wrapper is essentially links direct to the ODE libraray, I've added several functions of my own which allow creation of mass/body/geom structures which DarkBASIC Professional cannot handle directly through DLL calls. So effectively creating IDs to the newly created structures. I also plan to simplify integration of DBP objects into the library so that a user just needs to specify the object ID or joint ID to apply etc. It varies in complexity if done directly in code, but with the combination of Cartography Shop predefined entities etc. It will literally be a case of create a map or prefab, apply it's properties like mass'n such, then just load it up with the CSM importer.

Paul.


Home of the Cartography Shop - DarkBASIC Professional map importer
Juso
22
Years of Service
User Offline
Joined: 23rd Sep 2002
Location: Finland
Posted: 12th Mar 2005 03:45
It works - and it works fine!

There seems to be one nuisance (as in Newton too). You always have to make one object in physics world and the other in DBPro world. Why this double work? Why not 'Make PhysicsObject Box 1,20,40,20' which does all the work! Make it simple (as all Basics should be), so you can beat them all!
adr
21
Years of Service
User Offline
Joined: 21st May 2003
Location: Job Centre
Posted: 12th Mar 2005 05:10
Quote: "Why this double work?"


Understand that physics engines just work on maths. In order to gain a wide market appeal, they're generic; they don't care about the internals of DBP. They can calculate the forces of the impact of a given point in 3D space, given a mass of that point and a velocity and a normal of the point of contact. That's it - it's all just numbers. Walaber got around half of the problem by making newton actually move the objects using IanM's interface DLL, but how is the DLL supposed to know when you create an object? Unfortunately, because of the closed book nature of DBP we can't really hook physics engines in that tightly.

book is death - wife is stupid
APEXnow
Retired Moderator
21
Years of Service
User Offline
Joined: 15th Apr 2003
Location: On a park bench
Posted: 12th Mar 2005 05:42
No, that's right, I was planning on adding functions as an include that will setup this co-op nature of DB and ODE together using one call. It'll be interesting though.

Paul.


Home of the Cartography Shop - DarkBASIC Professional map importer
walaber
21
Years of Service
User Offline
Joined: 22nd Oct 2003
Location: Los Angeles, CA
Posted: 12th Mar 2005 13:37
also, how many games have a simple box for a visual object? the main reason is that the visual object, and it's physical representation will always be different (with the physical version always being simplified).

personally I think this should be fixed on the user end. with the Newton wrapper, I've solved the problem with my custom ".bod" format. if you have a model, you load it up into my Rigid Body Designer tool, and setup the physics for that model. then inside your program, you can load the model and all of its physics settings in one command. I assume ApexNow will be using a similar solution for the CSHOP / ODE system (a really great idea by the way).

but to be honest, these things are often left to the user to solve on a pre-game basis... that way you can add info to the file format that pertains only to your game...

p.s. any chance for an executable version of this? i don't have internet at home right now, which is my only PC with DBPro on it...

Go Go Gadget DBPRO!

Athlon XP 2400+ || DDR-SDRAM 1GB || Nvidia GeForce 4 Ti4200 AGP 8x 128MB
APEXnow
Retired Moderator
21
Years of Service
User Offline
Joined: 15th Apr 2003
Location: On a park bench
Posted: 12th Mar 2005 20:28
@Walaber

Yeah your .bod format is just the sort of direction this needs to go. I'll still be focusing on the Cartography Shop setup idea although there is an opensource 3D editor which allows setup of the ODE rigidbody/joint types for models and then export them to a standard file. Typically this is really going to be needed if people are to create vehicle joint constraints on wheels etc. Just modifying properties in CShop will be difficult unless they can see a representation of the simulation in action. This won't be possible in CShop alone.

Also, before I release the next version, some good examples are needed. The bouncing cube was just a starter for testing the mapping of object angles with DBP. I'll also take in advisement and generate EXE files which can be executed directly without recompile.

Thanks for adding your view as well. Nice to see that it's generated interest all round

Paul.


Home of the Cartography Shop - DarkBASIC Professional map importer
Juso
22
Years of Service
User Offline
Joined: 23rd Sep 2002
Location: Finland
Posted: 13th Mar 2005 18:02 Edited at: 13th Mar 2005 18:04
You can even make games or at least environments with mere boxes and spheres and cylinders. In most existing games physicals objects are always those boxes and cylinders. In very few games there are ragdolls.

I done myself one rag doll with Newton and it took 300 lines of code. Its too much for a hobbyist to get something to play about.

And what about DBPro's future physical engine, is there needed double commands?

So if Apex or someone makes a dll with 'one line' physical commands, it would be a huge improment. And ragdoll commands with 2 lines
APEXnow
Retired Moderator
21
Years of Service
User Offline
Joined: 15th Apr 2003
Location: On a park bench
Posted: 17th Mar 2005 21:09
People. I'm looking for someone to take this project over!! Development requires that you have Dev-C++ v4.9.8.0 and the current version of ODE installed. My stipulation is that I will hand over the wrapper source code on the basis that the end product is released under the GNU public licence for free software. I'll remove the time limit stuff from the source, but basically what I'm saying is this. If you plan to use my code to continue the development of the wrapper, you cannot sell it! Basically, the Newton wrapper has been released as is without charge, so I wish for the same.

There are other things that I would like to be getting on with and because of issues with not quite understanding the behaviour of ODE and DBP scene relationships, I've basically lost focus on this project. Three reasons have come to light...

1. There is already a complete plugin available to Blitz users which is available and potentially convetable to DBP based on runtime linkage.

2. Newton is free and already being used in alot of projects.

3. TGC will probably deal with this issue on physics at a later date and I'm prepared to wait.

Anybody seriously interested in taking this on, please let me know.

Paul.


Home of the Cartography Shop - DarkBASIC Professional map importer
APEXnow
Retired Moderator
21
Years of Service
User Offline
Joined: 15th Apr 2003
Location: On a park bench
Posted: 21st Mar 2005 17:52
No one interested?


Home of the Cartography Shop - DarkBASIC Professional map importer
Spline
20
Years of Service
User Offline
Joined: 30th Oct 2004
Location: London U.K
Posted: 22nd Mar 2005 03:49
hi apex i would be very intrested in you source code
but i have nether the nowhow or experiance to be able to complete the project this millenium, i have been playing around with different physics engines, and have just started learning c++ i have visual studio .net 2003.
i would be greatfull if maybe you would release the code to me so i may learn from it thanx
APEXnow
Retired Moderator
21
Years of Service
User Offline
Joined: 15th Apr 2003
Location: On a park bench
Posted: 23rd Mar 2005 17:56
Spline, I appreciate the offer, but seriously, I'm looking for someone with good C/C++ experience who is willing to actually take this project on and complete it. It doesn't just involve the source code, it also requires knowledge of the ODE physics engine. Thanks anyway.

Paul.


Home of the Cartography Shop - DarkBASIC Professional map importer

Login to post a reply

Server time is: 2024-11-23 03:01:56
Your offset time is: 2024-11-23 03:01:56