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.

Dark Physics & Dark A.I. & Dark Dynamix / supplied NxActorDesc is not valid. CreateActor returns NULL” error

Author
Message
Jammy
21
Years of Service
User Offline
Joined: 15th Jan 2003
Location: Scotland
Posted: 11th Jan 2007 04:58
Hi,

I am getting a “supplied NxActorDesc is not valid. CreateActor returns NULL” error.

This is intermittent and seems random - but enough to make my game unplayable and I cannot recreate the error outside my game – which has a few thousand lines of code.

My PC is a single core athlon64 - i do not have phyics card

Can anyone help ?

Cash Curtis II
19
Years of Service
User Offline
Joined: 8th Apr 2005
Location: Corpus Christi Texas
Posted: 11th Jan 2007 18:39
Are you using Dark AI? I would get this seemingly random error, but it turned out not to be random. For me, it would happen when I would move the physics controllers an illegal value, usually -1.0#IND (I think that was it), because I was improperly feeding Dark AI position values. Very hard to find, very easy to fix once I did. Just have position readouts of your entities, and you'll narrow it down.


Come see the WIP!
Jammy
21
Years of Service
User Offline
Joined: 15th Jan 2003
Location: Scotland
Posted: 12th Jan 2007 03:16
Yes i am using physics and AI - so this could be the problem. Not Sure what your illegal value "-1.0#ind" is though. I will look again at my controlers and see if i can find a problem. thanks.

If anyone else has any ideas though - please post.

Cash Curtis II
19
Years of Service
User Offline
Joined: 8th Apr 2005
Location: Corpus Christi Texas
Posted: 12th Jan 2007 18:34
Then that is definitely the source of your problems. I wish I could remember the exact problem...

Tomorrow I'll try to reproduce it. It shouldn't be that hard, I know pretty much how it happens.

The #IND thing is an illegal floating point value. When the problem first popped up I started printing out my entity positions, and instead of a number it would give me that for the X Y and Z positions. I looked it up on Google and it is the result of bad math.


Come see the WIP!
Jammy
21
Years of Service
User Offline
Joined: 15th Jan 2003
Location: Scotland
Posted: 13th Jan 2007 11:49
ah- I see now what you mean - Thought the problem was with my main player - but it is probably one of the bad guys - controlled with dark ai. I allways show the player xyz - but will start tracking the other entitys. Perhaps caused by a problem with my obstacles.

Xarshi
18
Years of Service
User Offline
Joined: 25th Dec 2005
Location: Ohio
Posted: 14th Jan 2007 03:23
yeah,basicly,that one value is screwing up the whole actor description Cuz in case you didn't notice,PhysX works in a system of descriptions(which I find EXTREMELY annoying). So if you screw one little thing up(like,confuse PhysX),then it will throw the entire program off.

Hello
Jammy
21
Years of Service
User Offline
Joined: 15th Jan 2003
Location: Scotland
Posted: 24th Jan 2007 05:31
See screenshot



Because I am using Dark AI to control Baddies but want to use dark physics collision, I have been creating character controllers just before “physics update” for collision then deleting them to allow AI to move the baddie. Rigid bodies, static and dynamic messed up movement.

Unfortunately, for some reason dark AI causes the “Object Position x( )” Command to return “-1#IND” instead of proper x co-ordinate (the same happens with z coordinate) – See top left of the screen shot - these are cat xyz co-ordinates.

This only happens when the gerbil jumps straight up and is getting attacked by a cat.

So when I create the character controller it is using “-1IND” as a coordinate and causing an error and declaring it as a physics error – even though It originates in AI.

This has now been fixed by a very simple solution – If new Coordinates are going to give the error – just use the old ones. Took a long time to figure this out and although my solution is not Pretty, it is effective.

thanks to Cash Curtis II

Cash Curtis II
19
Years of Service
User Offline
Joined: 8th Apr 2005
Location: Corpus Christi Texas
Posted: 24th Jan 2007 06:47
Quote: "I have been creating character controllers just before “physics update” for collision then deleting them to allow AI to move the baddie. "

That's not at all how you should be doing that. It's slow, and you'll likely encounter interaction problems. You should be moving the controller toward the AI position the entire distance between them. Then you check the distance between them, because of collisions, and if the distance is greater than the height of the model you reset the AI position. The AI doesn't detect the collisions, and the result could be a controller created inside of a physics body. This will result in massive slowdowns and errors. The system hates it when two bodies occupy the same space.

Quote: "This has now been fixed by a very simple solution – If new Coordinates are going to give the error – just use the old ones. Took a long time to figure this out and although my solution is not Pretty, it is effective."

That's just a bandaid solution. I tried it at first, but it didn't really fix the problem. The system would still slow down.


Come see the WIP!

Login to post a reply

Server time is: 2024-11-24 17:42:40
Your offset time is: 2024-11-24 17:42:40