Java-Gaming.org
Play Revenge of the Titans! The situation is critical. We need fancy commanders to defend Earth, the moon, Mars!
Featured games (78)
games approved by the League of Dukes
Games in Showcase (408)
games submitted by our members
Games in WIP (293)
games currently in development
News: Read the Java Gaming Resources, or peek at the official Java tutorials
 
    Home     Help   Search   Login   Register   
Pages: [1]
  ignore  |  Print  
  unrecoverable stack overflow  (Read 2181 times)
0 Members and 1 Guest are viewing this topic.
Offline numknuf

Senior Newbie




bompi


« Posted 2003-12-21 15:55:42 »

An unrecoverable stack overflow has occurred.

An unexpected exception has been detected in native code outside the VM.
Unexpected Signal : EXCEPTION_STACK_OVERFLOW (0xc00000fd) occurred at PC=0xC889724
Function=Java_net_java_dev_odejava_ode_OdeJNI_SWIGdBallJointTodJoint+0xB1F4
Library=odejava.dll

I get this using the stepfast method when I have a lot of, around 184, boxes stacked on top of each other.

How can I count the number of ContactJoints created or increase the stack.
Offline Jani Laakso

Junior Member




Do it with Java!


« Reply #1 - Posted 2003-12-21 17:42:31 »

I assume you are using windows dll, this is ODE related issue, check "/Stack:num" option for the compiler. This can occur when you have masses of simultaneous collisions happening. In other words, there can be plenty of objects around but many simultaneous collisions can be a problem.

Check http://opende.sourceforge.net/ode-latest-userguide.html for more information.

Here's a snippet from Ode's documentation:

12.11. The Windows version of ODE crashes with large systems

ODE requires stack space roughly on the order of O(n)+O(m2), where n is the number of bodies and m is the sum of all the joint constraint dimensions. If m is large, this can be a lot of space!

Unix-like operating systems typically allocate stack space as it is needed, with an upper limit that might be in the hundreds of Mb. Windows compilers normally allocate a much smaller stack. If you experience crashes when running large systems, try increasing the stack size. For example, the MS VC++ command line compiler accepts the /Stack:num flag to set the upper limit.
Offline numknuf

Senior Newbie




bompi


« Reply #2 - Posted 2003-12-21 18:09:19 »

Yes, I'm using the windows ODE. I used the dll that you provided. Do I have to recompile it to increase the stack?

And is it possible to count the number of collisions or Contact Joints created? This will probably indicate why I get a stack overflow error.
Games published by our own members! Check 'em out!
Try the Free Demo of Revenge of the Titans
Offline Jani Laakso

Junior Member




Do it with Java!


« Reply #3 - Posted 2003-12-21 18:16:09 »

I am releasing new Odejava 0.2 with huge changes (full support of ODE API, added also higher level API). I try to recompile this DLL with bigger stack option, hope you can wait a day or two Smiley

Collision checking is done still at C layer, it is most effective way but also most inconvinient. TODO contains adding Java collision callback routine, but this is not yet at Odejava. So currently you need to recompile whole library if you want to access collision information.

After 0.2 is out, the todo for Java callback functions priority will raise. This is the ideal solution for most users.
Offline numknuf

Senior Newbie




bompi


« Reply #4 - Posted 2003-12-21 18:53:55 »

Thanks. Smiley
Offline Jani Laakso

Junior Member




Do it with Java!


« Reply #5 - Posted 2004-01-03 10:15:17 »

Well, it took a bit more than couple days but now it's done Smiley
Check out the cvs, odejava/lib/win32 contains now a DLL that has increased stack space. Normal stackspace is 1Mb, this DLL has 2Mb initial, and maximum of 4Mb. I have tested this with about 200 concurrent collisions with boxes stacked on each other.
Pages: [1]
  ignore  |  Print  
 
 
You cannot reply to this message, because it is very, very old.

Play Revenge of the Titans! The situation is critical. We need fancy commanders to defend Earth, the moon, Mars!
 
Get high quality music tracks for your game!

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

The first screenshot will be displayed as a thumbnail.

The invasion has landed! On Mars! And you're there to beat 'em!
cubemaster21 (142 views)
2013-05-17 21:29:12

alaslipknot (150 views)
2013-05-16 21:24:48

gouessej (181 views)
2013-05-16 00:53:38

gouessej (174 views)
2013-05-16 00:17:58

theagentd (184 views)
2013-05-15 15:01:13

theagentd (169 views)
2013-05-15 15:00:54

StreetDoggy (213 views)
2013-05-14 15:56:26

kutucuk (237 views)
2013-05-12 17:10:36

kutucuk (236 views)
2013-05-12 15:36:09

UnluckyDevil (241 views)
2013-05-12 05:09:57
Complex number cookbook
by Roquen
2013-04-24 12:47:31

2D Dynamic Lighting
by Oskuro
2013-04-17 16:46:12

2D Dynamic Lighting
by Oskuro
2013-04-17 16:45:57

2D Dynamic Lighting
by Oskuro
2013-04-17 16:23:20

Noise (bandpassed white)
by Roquen
2013-04-05 17:36:01

Noise (bandpassed white)
by Roquen
2013-04-03 16:17:38

Java Data structures
by Roquen
2013-03-29 13:21:12

Topic Request
by kutucuk
2013-03-22 21:42:01
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!
Page created in 0.117 seconds with 20 queries.