Random Collisions

frier

15-11-2007 04:56:15

Im making a racing game, i've put in all the vehicles and the and ground collision mesh and it ran all fine in debug mode. running around 60fps.

Then i created a release build of the game and now we are running around 600fps. We have found that the car will hit like an invisible wall while driving at a speed slower then 170kph, in Release mode, but it works fine in Debug mode at any speed.

We've checked the collision mesh and to our eyes its all flat and looks fine.

Whats some techniques i could use to find out why the car "hits" something and comes to a dead stop in certain parts of the track?

NxOgre (NxOgre 0.9-33.Debug) Started, working with:

- PhysX => 2.7.2
- Ogre => 1.5.0 'Shoggoth'
- Platform => Windows Debug


NxOgre (NxOgre 0.9-33) Started, working with:

- PhysX => 2.7.2
- Ogre => 1.5.0 'Shoggoth'
- Platform => Windows

NickM

15-11-2007 06:20:43

Sounds like a strange problem, have you tried using the remote debugger to see if the car is hitting invisible objects.

frier

15-11-2007 07:00:30

Ive tried to use it though it talks about network access sharing sharing issues on my computer that i cant resolve,

Its a very werid issue and i dont really know where to start to attempt to fix it, i tried to mess with a few tire settings but that didnt help....

i can upload the terrain and the mesh if you guys want to have a look at the mesh.

i also found that when i run it in release mode on my old 2.4ghz machine its fine because the frames in release mode are like 70fps... but as soon as i slap it on a machine doing 600-700fps it hits invisible objects.

ill break down what ive found.

Old Machine Running about 60 -70 FPS, in release mode
Runs smooth, no invisble walls that i notice will have been hit

New Machine(s) running 600 -700 FPS, in release mode
Hits invisble walls. 2 Seperate computers running this fast have the same issue.

But if i run the fast computer on debug mode and they get 60fps its all cool and runs fine.. SUCH A WERID PROBLEM

Using all the same DLLs libs, code, operating systems


:(

jchmack

15-11-2007 08:11:54

Is the wall in the same spot all the time? If so i would say you may have a stray actor or something that your car might be colliding with. It may be that at lower framerates your cars are skipping over these so try to use some form of CCD. Debug mode and slower computers will make the framerate drop making the simulation more inaccurate. Trust your high framerate simulation and assume that the lower framerates apps are just missing the "walls" because of well... lower framerates.

If you are using actors for any logic detection (IE AI sensors to tell your cars to turn away from other cars or something) then you may want to make sure you disable collisions with these.

About your remote debugger problem are you trying to connect to another computer or you own echo port? If its another comp make sure u are using the correct IP and are forwarding to the correct ports. Your echo port should be pretty easy to use but it tends to slow down physx. It seems to cap mine at about 30fps.

Hope this helps =)

frier

15-11-2007 08:48:50

Hi jchmack,

that sounds exactly right ot me also about the slow framerate deal and me passing through all these invisible actors..


And yes i do have logic detection nodes in my game, but they are only entitys and nodes and i havnt set them up to be actors in anyway. but ill try removing them all together and see if it still happens.

Yes im just trying to use the remote debugger on my PC. But when i load VS remote debugger i get the following error

"Visual Studio Remode Debuggin Monitor will not be able to debug applications because the "NetWork access: Sharing and security model for local accounts' local security policy option is set to 'guest only - local users authenticate as guests'. This can be configured with the "local Security settings administration tool"

i tried to do that but didnt understand it too well, any of you guys seen this message before?

Horizon

15-11-2007 09:28:34

I'm guessing jchmack means the PhysX Visual Remote Debugger, not the Visual Studio remote debugger. The first one will show you a graphic view of your scene including the option to select objects, view debug information and even manipulate objects by dragging them around. If you haven't yet, be sure to look at it. You need to put one line into your code:
mNxPhysicsSDK->getFoundationSDK().getRemoteDebugger()->connect ("localhost", 5425);

betajaen

15-11-2007 09:41:15

Al right everyone has an answer to this, so I'll ask a few questions:

1. Are you running a fixed or variable Scene Controller?
2. Have you tried running the Release version with VSync on?
3. Why are you using '33 of NxOgre when '38 is available?

frier

15-11-2007 10:01:53

Horizon,
ill try that one


betajean

1. i'm currently using a variable stepping, i tried fixed but it moves like moon gravity.
2. yes i tried release mode with vSync on, and im very very surprised i still get the same results.
3. umm, dunno does '38 have actor groups in it?