I got the same result with Simple State as with If: a couple of rogue particles. Not surprising because Simple State uses If internally.
Another thing you could try if IsPassiveRigidBody doesn't work for you:
- Use a custom attribute to keep track of whether each particle should be affected by the Bullet node (Boolean, or integer if you want more than one "state").
- Before the Bullet node, store all relevant attributes (PointPosition, PointVelocity, Force, Mass, Orientation, AngularVelocity, etc.) as custom attributes. Set velocities and force to zero and Mass really really high.
- Let Bullet do its thing.
- After the Bullet node, restore the attributes based on based on your condition, and if desired simulate or move those particles using your own logic.
gray
2012/7/10 Grahame Fuller <
Grahame...@autodesk.com<mailto:
Grahame...@autodesk.com>>
I couldn't repro your results in my quick tests. I got a few rogue particles moving when using If - a couple might have been self-collisions but others were puzzling. Mute was more reliable.
IsPassiveRigidBody also worked well. Did you remember to set their PointVelocity and AngularVelocity to zero? Passive RBDs don't react to forces but they do update based on velocity.
gray
On Tue, Jul 10, 2012 at 3:38 PM, Jonah Friedman <
jon...@gmail.com<mailto:
jon...@gmail.com><mailto:
jon...@gmail.com<mailto:
jon...@gmail.com>>> wrote:
Also, you can't iterate on it and after it runs, it doesn't seem to set attributes like "pointPosition" or "orientation" in any normal way. I'm not a fan of the node either.
From:
softimag...@listproc.autodesk.com<mailto:
softimag...@listproc.autodesk.com><mailto:
softimag...@listproc.autodesk.com<mailto:
softimag...@listproc.autodesk.com>> [mailto:
softimag...@listproc.autodesk.com<mailto:
softimag...@listproc.autodesk.com><mailto:
softimag...@listproc.autodesk.com<mailto:
softimag...@listproc.autodesk.com>>] On Behalf Of Alan Fregtman