Java-Gaming.org    
Featured games (79)
games approved by the League of Dukes
Games in Showcase (476)
Games in Android Showcase (106)
games submitted by our members
Games in WIP (530)
games currently in development
News: Read the Java Gaming Resources, or peek at the official Java tutorials
 
    Home     Help   Search   Login   Register   
Pages: [1] 2 3 ... 5
  ignore  |  Print  
  JOODE Development Status  (Read 19465 times)
0 Members and 1 Guest are viewing this topic.
Offline hdietrich

Junior Member




Harald Dietrich


« Posted 2006-03-28 12:31:40 »

Hi guys,

I've been playing around with ODEJava a while ago and stopped my efforts again, because there were too much unpredictable behaviour in this library, which made it useless for me. So I appreciate the development of a pure Java implementation of ODE very much.

I started to check out the latest sources of JOODE and tried to find out what's the current status of the project. From this I could identify the following points:

  • the activity on the project (CVS commits) seems to be low in the last few weeks
  • I could figure out that a lot of functionality if ODE is not ported to Java until now (limits and motors on joints, cylinder geometry, hash spaces)
  • the code itself seems to be a very raw port of the C sources (C-stylish method and property names, few use of an object oriented approach, no use of the collection API)

In earlier posts about the status of JOODE it looks like you were planning to release a first version in the end of March. I guess this will not fit into your timeframe anymore. What are your current problems?

  • did you experience servere problems when porting the code or
  • is it really only a question of time?

For me it is very hard to see if the code is working. The Testcases seem to be working, but they are very rudimentary. I would love to see the project going on and could spend some effort to make the porting and clean up of the resulting code going on (ven though I am not a real expert in physic engines). But before doing this I would like to make sure if the effort is not only a waste of time. Who can tell me more about it?

Harald
Offline arne

Senior Member




money is the worst drug- we should not let it rule


« Reply #1 - Posted 2006-03-28 13:33:06 »

have you checked the java.net cvs out, or the one at sourceforge?

Only the sourceforge one https://sourceforge.net/projects/joode/ is up to date.
the last commit is only some days old.

end of march - is not yet past Wink and t_larkworthy only has to find the bug in his code for convex-convex collisions (ok - this is some kind of an unknown factor)

Arne

:: JOODE :: Xith3d :: OdeJava ::
Offline hdietrich

Junior Member




Harald Dietrich


« Reply #2 - Posted 2006-03-28 16:58:40 »

I am on the SourceForge forge. Maybe I am just a little bit too exited to see JOODE work and expected still more to change on the subjects mentioned above  Wink

Am I right that your started to implement a convex hull geometry in favour of the ODE geometries (sphere, box, cylinder, trimesh)? Otherwise I would miss at least the cylinder geometry (for vehicle physics).

Could you tell me where you implemented new or replaced existing functionality (compared to ODE) ?
Games published by our own members! Check 'em out!
Legends of Yore - The Casual Retro Roguelike
Offline arne

Senior Member




money is the worst drug- we should not let it rule


« Reply #3 - Posted 2006-03-28 17:35:42 »

mmh theres the convex hull stuff - it's going to replace box and we think on building a GeomTerrain with it. I don't know how it's going to work out with GeomTriMesh, because TriMeshes are fairly different.

and there are also some differences in the handling of the spaces but that are actually more internal differences, that shouldn't matter to the average user. There's OctTreeSpace now which doesn't exist in ODEJava.

If you need something, that's not implemented yet, you're welcome to implement it (e.g. the cylinders) instead of hashspace you could use OctTreeSpace for now.

:: JOODE :: Xith3d :: OdeJava ::
Offline Amos Wenger

Senior Member




Everything's possible, but not everything's fun...


« Reply #4 - Posted 2006-03-28 18:03:12 »

Hi hdietrich,
Yeah the code is pretty raw and some functions are still C-style, but heh that's a first attempt to get something running. We can do refactoring when needed. Yeah the CVS activity is pretty low, actually I'm waiting for t_larkworthy to finish his convex-convex collision detection stuff before doing extensive testing. And Yeah limits and motor on joints are not yet ported, these are planned for the second release of JOODE (according to t_larkworthy's post).
But I can assure you the project isn't dead at all.

"Once you start working on something, don't be afraid of failure and don't abandon it. People who work sincerely are the happiest"
Offline hdietrich

Junior Member




Harald Dietrich


« Reply #5 - Posted 2006-03-31 19:26:25 »

To be honest, JOODE is no port of ODE anymore. I started to move the code for Cylinder geometry from ODE to JOODE and realized that the JOODE impelemntation of the colliders has not much in common with the code in ODE. I guess there is more "new" code than ported code in JOODE now. At the moment I don't know how to handle this.
Offline arne

Senior Member




money is the worst drug- we should not let it rule


« Reply #6 - Posted 2006-03-31 22:50:50 »

Yeah it's OO you know Wink

I think the best way would be for you to simply look at the example of sphere, and then simply port the logic. That's how I did this with Box. In the Geom itself are only simple methods like calculation of the penetration depth and so on. For the different Collision-Types (e.g. Sphere-Cylinder, Cylinder-Cylinder) you'll have to write a new class handling that collision and also register it in Colliders. The best way to find how to do this is again to look at already ported examples (Sphere-Sphere or Box-Sphere - only Box-Box doesn't work correctly).

Your work is appreciated. Smiley

@Tom: If you don't hurry with your Convex-Hull code, you'll also have to implement Convex-Cylinder Collisions, hehe Wink

:: JOODE :: Xith3d :: OdeJava ::
Offline Amos Wenger

Senior Member




Everything's possible, but not everything's fun...


« Reply #7 - Posted 2006-03-31 23:22:58 »

I wonder if Tom is dead or if he's in holidays at the Bahamas... or if he has been debugging for 3 weeks..  Grin

"Once you start working on something, don't be afraid of failure and don't abandon it. People who work sincerely are the happiest"
Offline t_larkworthy

Senior Member


Medals: 1
Projects: 1


Google App Engine Rocks!


« Reply #8 - Posted 2006-04-02 17:14:01 »

Hello. I have not been in the office for a while. I am here. I am desperate to get back into JOODE but it is the end of term and I have TONS of stuff to do. I had a robot competition on Tuesday. Our robot blew up! Smoke and everything. But yeah, I have lots of major projects in over the next two weeks and then exams. And my Summer project starts before my exams! Urgh. Rediculous workload it really is. For those who are interested, which I doubt there are any, I am taking pictures of fly brains under a confocal microscope and automatically mapping them using machine learning techniques. Woo! I can't wait.
So yeah. Don't expect me to do much over the next 3 weeks. But I promise I will be back with avengance ASAP

Runesketch: an Online CCG built on Google App Engine where players draw their cards and trade. Fight, draw or trade yourself to success.
Offline hdietrich

Junior Member




Harald Dietrich


« Reply #9 - Posted 2006-04-02 18:36:58 »

OK, then check in your code (convex stuff) and tell us about the status. I guess there are some people willing to translate/implement further (JO)ODE features.

Otherwise arne will get involved in the fluid dynamics implementation too much  Wink
Games published by our own members! Check 'em out!
Legends of Yore - The Casual Retro Roguelike
Offline arne

Senior Member




money is the worst drug- we should not let it rule


« Reply #10 - Posted 2006-04-02 18:56:11 »

hehe

:: JOODE :: Xith3d :: OdeJava ::
Offline hdietrich

Junior Member




Harald Dietrich


« Reply #11 - Posted 2006-04-03 20:23:56 »

Code for capped cylinder is coming soon Grin
Offline bobbokop

Junior Newbie





« Reply #12 - Posted 2006-04-03 22:20:16 »

Sorry if my infos are not up to date. However, are you speaking about the CappedCylinder collision code?
Offline Ask_Hjorth_Larsen

Junior Member




Java games rock!


« Reply #13 - Posted 2006-04-04 03:36:23 »

On the page it just says 'No File Packages Defined'.  How can I get the source files? I can understand from hdietrich's statements that they must be available somewhere.

EDIT: right, right. The CVS. Always check once more before posting....
Offline Amos Wenger

Senior Member




Everything's possible, but not everything's fun...


« Reply #14 - Posted 2006-04-04 09:16:13 »

On the page it just says 'No File Packages Defined'.  How can I get the source files? I can understand from hdietrich's statements that they must be available somewhere.

EDIT: right, right. The CVS. Always check once more before posting....
Yeah.  Grin

"Once you start working on something, don't be afraid of failure and don't abandon it. People who work sincerely are the happiest"
Offline hdietrich

Junior Member




Harald Dietrich


« Reply #15 - Posted 2006-04-04 11:11:22 »

I said soon. I just have to do some testing, before I can provide the code. I will post it to this form, since I do not have write access to CVS.
Offline hdietrich

Junior Member




Harald Dietrich


« Reply #16 - Posted 2006-04-04 11:26:56 »

By the way, who has write access to JOODE CVS at all?
Offline Amos Wenger

Senior Member




Everything's possible, but not everything's fun...


« Reply #17 - Posted 2006-04-04 13:55:17 »

t_larkworthy, arne and me.
You can apply for developer access at the sourceforge.net project and t_larkworthy will give you the rights.

"Once you start working on something, don't be afraid of failure and don't abandon it. People who work sincerely are the happiest"
Offline t_larkworthy

Senior Member


Medals: 1
Projects: 1


Google App Engine Rocks!


« Reply #18 - Posted 2006-04-04 20:36:28 »

Hmmmm... can't seem to get access to CVS at the moment. I can't upload my latest collision code....

Runesketch: an Online CCG built on Google App Engine where players draw their cards and trade. Fight, draw or trade yourself to success.
Offline cborders

Junior Member





« Reply #19 - Posted 2006-04-04 20:46:29 »

The CVS repo at sourceforge has been down for the last couple of days.
Offline t_larkworthy

Senior Member


Medals: 1
Projects: 1


Google App Engine Rocks!


« Reply #20 - Posted 2006-04-05 16:00:02 »

Woo, we have a new developer. Welcome hdietrich

Runesketch: an Online CCG built on Google App Engine where players draw their cards and trade. Fight, draw or trade yourself to success.
Offline arne

Senior Member




money is the worst drug- we should not let it rule


« Reply #21 - Posted 2006-04-05 16:19:14 »

welcome Smiley

:: JOODE :: Xith3d :: OdeJava ::
Offline hdietrich

Junior Member




Harald Dietrich


« Reply #22 - Posted 2006-04-05 16:24:26 »

Hey, this time you were really fast  Wink

Until now CVS doesn't let me check in code. I guess it takes some time until the new settings will be applied.
Offline t_larkworthy

Senior Member


Medals: 1
Projects: 1


Google App Engine Rocks!


« Reply #23 - Posted 2006-04-05 18:18:32 »

yeah there is a bit of a delay, CVS is working for me again now. I have not updated yet though (my uni account has exceeded is disk quota gain, sigh)

Runesketch: an Online CCG built on Google App Engine where players draw their cards and trade. Fight, draw or trade yourself to success.
Offline hdietrich

Junior Member




Harald Dietrich


« Reply #24 - Posted 2006-04-05 19:55:24 »

Code for primitive geometries and colliders has been added.
For each collider a test has been added.

Be aware that not all of the colliders have been implemented and therefor not all tests show a valid behaviour. I just wanted to add them to have an overview of what is working and what is still missing.
Offline kylix999

Junior Member





« Reply #25 - Posted 2006-04-05 20:41:40 »


what do you think , what is current status of joode development in %,

50 % , 70 %,   of course in your opinion
Offline hdietrich

Junior Member




Harald Dietrich


« Reply #26 - Posted 2006-04-05 20:57:33 »

For a complete integration of ODE functionality it is still a long way to go, but I think its worth having releases before that.

Things to do in the next days:
1. implementation of all primitive colliders (could be accomplished quite soon)
2. implementation of convex colliders (don't know what's the status of t_larkworthy)
3. basic support of limits and motors in joints (see above)
4. clean up of the API

After that has been done I think 80% of the functionality has been ported. The rest will be the more complex stuff, which will take some time.

Further things to do:
4. implementation or TriMesh geometry and colliders
5. full support of limits and motors in joints

Of course thats my personal opinion and I am quite new to the code, so I could be totally wrong  Grin. Please correct me.
Offline arne

Senior Member




money is the worst drug- we should not let it rule


« Reply #27 - Posted 2006-04-06 17:08:39 »

good job hdiertich Smiley

I just looked at the CapsuleSphereCollisionTest (but it'll be similar with the other Test-cases you made) There you set the mass of the second Body to 0.
The collision looks fine, which is why I'm wondering. So for example the first Body actually gets slower when the collision happens, but because the second body has no mass at all, it cannot give some of it's kinetic energy to the other body - so it actually shouldn't slow (no matter what the other body does)
 -> there might be a problem in the basics of our collision algorithm. Sad

:: JOODE :: Xith3d :: OdeJava ::
Offline hdietrich

Junior Member




Harald Dietrich


« Reply #28 - Posted 2006-04-06 17:38:58 »

I'm currently digging into this, because I expected a body without mass to behave like a static object (F=m*a is always zero for m=0).
Offline arne

Senior Member




money is the worst drug- we should not let it rule


« Reply #29 - Posted 2006-04-06 17:51:34 »

actually I expected a division by 0
a = F/m Wink

:: JOODE :: Xith3d :: OdeJava ::
Pages: [1] 2 3 ... 5
  ignore  |  Print  
 
 
You cannot reply to this message, because it is very, very old.

 

Add your game by posting it in the WIP section,
or publish it in Showcase.

The first screenshot will be displayed as a thumbnail.

pw (13 views)
2014-07-24 01:59:36

Riven (11 views)
2014-07-23 21:16:32

Riven (12 views)
2014-07-23 21:07:15

Riven (13 views)
2014-07-23 20:56:16

ctomni231 (43 views)
2014-07-18 06:55:21

Zero Volt (38 views)
2014-07-17 23:47:54

danieldean (32 views)
2014-07-17 23:41:23

MustardPeter (34 views)
2014-07-16 23:30:00

Cero (50 views)
2014-07-16 00:42:17

Riven (50 views)
2014-07-14 18:02:53
HotSpot Options
by dleskov
2014-07-08 03:59:08

Java and Game Development Tutorials
by SwordsMiner
2014-06-14 00:58:24

Java and Game Development Tutorials
by SwordsMiner
2014-06-14 00:47:22

How do I start Java Game Development?
by ra4king
2014-05-17 11:13:37

HotSpot Options
by Roquen
2014-05-15 09:59:54

HotSpot Options
by Roquen
2014-05-06 15:03:10

Escape Analysis
by Roquen
2014-04-29 22:16:43

Experimental Toys
by Roquen
2014-04-28 13:24:22
java-gaming.org is not responsible for the content posted by its members, including references to external websites, and other references that may or may not have a relation with our primarily gaming and game production oriented community. inquiries and complaints can be sent via email to the info‑account of the company managing the website of java‑gaming.org
Powered by MySQL Powered by PHP Powered by SMF 1.1.18 | SMF © 2013, Simple Machines | Managed by Enhanced Four Valid XHTML 1.0! Valid CSS!