(21-07-2021, 09:18 PM)sothorael Wrote: I've had some trouble with other products and parenting emitters to a character (or spawning them on death) to create blood pools. Other products seem to 'refuse' gravity when parented, and the particles fly off into the distance rather than flow downwards.
There's no reason for gravity not to work when parenting an emitter in any engine, unless you're performing simulation in the emitter's local space. Even then, it's trivial to convert a world space gravity vector to the emitter's local space (just use Unity's
InverseTransformVector). Tried this will Unity's built-in particle system, works just fine.
(21-07-2021, 09:18 PM)sothorael Wrote: The example videos look awesome and I'm tempted to spend the money, but I'm wondering if the emitters can be easily parented to a ragdoll/rigidbody and moved without losing the ability for gravity to work (think continual leaking if moved). I tried looking through the forum and the videos, but haven't seen anything specific to this that would tell me for sure before spending
Obi makes a distinction between the
solver (the component that performs the simulation) and the
emitter (the component that creates particles). See:
http://obi.virtualmethodstudio.com/manua...cture.html
Simulation is always performed in the solver's local space:
http://obi.virtualmethodstudio.com/manua...olver.html
So if you rotate the solver, gravities will rotate with it. You can use two approaches:
- Place the solver outside of the character, in a transform that does not move/rotate with it. Then place the emitter anywhere in the character's hierarchy.
- Place the solver at the character's root, then convert gravity from world to local space.
Either way it's completely doable. Keep in mind that Obi assumes you're comfortable with C# scripting and familiar with basic physics/3D concepts (vector spaces, forces/impulses/accelerations, inertial reference frames, etc). Let me know if you need any help with it.
kind regards,