Welcome, Guest! Login | Register
Rigidbody imposter issue
Info
Report
434 Posts

Rename this project without the txt extension.

First i decided to imposter the 2meter sphere to reduce resources.

Then while testing with out skinmesh's attached, i notice that only the original sphere rolls like the ball it is.
The imposter rigidbodies slide across the surface, not roll, which ruins the whole purpose of using imposters.
I included a project to show the issue, and uses all default resources,

Please try the project for me and validate it behaves the same way on your system as mine.

Post here with your results.

EDIT: Sorry, i originally used the 2meter sphere, but updated it to use the premade beachball rigidbody, but the same end results were seen with both.
Created on: 1 month ago
Edited on: 1 month ago
Info
Report
73 Posts

rigid imposters are not officially supported, even though they work, things like this should be expected.

script help: 'Create the specified number of imposters for the object (must be SkinMesh)'
imposter help: 'The Imposter object is typically used to create run-time instances of SkinMesh and Particles objects.'

my guess is that the roll parameter is just not passed to imposters due to the extra processing required, but otherwise works for basic stuff. you could confirm this by using imposter object instead of scripted.
Created on: 1 month ago
Info
Report
434 Posts

yeah, i'll try the imposter object, i'm thinking its just a pre-scripted process turned into an object..
Created on: 1 month ago
Info
Report
434 Posts

Ok, so the imposter object works, but if imposter script commands are applied to the impostered object, it breaks the imposter rotations as before.

But one solution, if using more than 1 imposter, is to move the imposter object to it's start location first, then start the imposter to create 1 imposter and repeat for the other imposters, moving the imposter object to its start location, then start the imposter object.

This sounds like a bit of running around, but actually its pretty much the same process as if you create all your imposters in script first, then position them to their start locations, then continue with the project, except you're moving the imposter object instead of the created imposters.

If you don't move the imposter object first, then the imposter objects all collide with each other.
Created on: 1 month ago
Edited on: 1 month ago
Info
Report
73 Posts

after thinking about the imposter forces, 3drad does actually 'officially support' rigid imposters, but only refers to them once here:

'iObjectImposterVelocitySet(OBJ_X,int,Vector3)     OBJ_X = object handle. Must be a RigidBody object.'

good to know object based imposters can still roll, i've made note of this for if i ever make falling boulders etc.
Created on: 1 month ago
Reply
Preview
Post
Or use the advanced reply form here...
Sponsored