How to use animated geo to emit particles ?

   1838   4   2
User Avatar
Member
269 posts
Joined: July 2013
Offline
If I want to emit particles from an animated character, do I need to use an alembic file rather than keyframed geometry? I have also seen something called cached geometry, is this another method?

For compositing, is it possible to render the particles separately as a render pass and have the object emitting them occlude the particles behind so the particles behind the object remain hidden in the separate particles render pass?

Or can you render the object emitter and particles together in Mantra. I find that the emitting object is made invisible, only the particles are rendered.

On experimenting, I think I found one way, which is to use a Static Object node to represent the object emitter and make it inactive as a collider by adjusting the Merge node settings. To add a material to it you have to make it a separate copy at the Geometry level, otherwise it causes problems with the particle renders. Is this the method used?
Edited by litote - May 2, 2023 12:44:51
User Avatar
Member
542 posts
Joined: Nov. 2016
Offline
You can emit particles from all those types of geometries. You'll need the Alembic geometry to be unpacked if you want to use the surface to emit particles.

To occlude the particles with the emitter, create an object in which you import the emitter's geometry using Object Merge, and include it in the Forced Matte parameter of your Mantra node.
User Avatar
Member
269 posts
Joined: July 2013
Offline
Thanks for you helpful reply, Tanto.

By unpack Alembic, do you mean add an Unpack node? What does unpacking the Alembic actually do? Does it convert it to true geometry with polygons?

Is this the correct set up? These are my steps:

Since the object emitter won’t render with the particles, you need to create an occlusion matte to hide the particles that are behind the object, then render a separate pass for the object:
(1) Add a Material node at Geometry level to the emitting object, above the POP Network. Deactivate it (turn off blue flag) so it does not affect render of particles.
(2) Create a second Geometry node at Objects level and inside add an Object Merge node. For Object 1 field, point to the original object emitter (and if it uses a Transform for animation you should point to this node so the copy also animates). You can deactivate its blue flag to hide it viewport at Objects level.
(3) In the Mantra ROP in Objects tab click on icon on right of Forced Matte field. Select the Geometry node that contains the Object Merge node. In popup, type a distinguishing name for Bundle field and hit Create and them Accept Bundle buttons.
(4) Activate the POP Network node at Geometry to render occluded particles.
(5) To render a separate pass of the emitter, activate the Material node flag to render from that node. You can’t render from the Object Merge node because Mantra is using its as a matte object, so you must render from within the original geo node

Your text to link here... [ibb.co]

Edited by litote - May 2, 2023 22:23:11
User Avatar
Member
542 posts
Joined: Nov. 2016
Offline
litote
By unpack Alembic, do you mean add an Unpack node? What does unpacking the Alembic actually do? Does it convert it to true geometry with polygons?

Yes, that's what it does, otherwise it is loaded directly from disk with no access to the actual geometry. You can indeed unpack it with an Unpack node, or use Unpack Alembic Delayed Load Primitives in the "Load As" drop-down menu of your Alembic node.

litote
Is this the correct set up? These are my steps:

Since the object emitter won’t render with the particles, you need to create an occlusion matte to hide the particles that are behind the object, then render a separate pass for the object:
(1) Add a Material node at Geometry level to the emitting object, above the POP Network. Deactivate it (turn off blue flag) so it does not affect render of particles.
(2) Create a second Geometry node at Objects level and inside add an Object Merge node. For Object 1 field, point to the original object emitter (and if it uses a Transform for animation you should point to this node so the copy also animates). You can deactivate its blue flag to hide it viewport at Objects level.
(3) In the Mantra ROP in Objects tab click on icon on right of Forced Matte field. Select the Geometry node that contains the Object Merge node. In popup, type a distinguishing name for Bundle field and hit Create and them Accept Bundle buttons.
(4) Activate the POP Network node at Geometry to render occluded particles.
(5) To render a separate pass of the emitter, activate the Material node flag to render from that node. You can’t render from the Object Merge node because Mantra is using its as a matte object, so you must render from within the original geo node

Your text to link here... [ibb.co]


That seems needlessly complicated, you do not want to have to change flags before starting a render, that's a good recipe for mistakes. The way I would do it would be to create nulls on the side of your particle emission setup, one for the emitter, and one for the particles.



Then at Object level, create two new render objects. These objects only contain an Object Merge node that point to each of your two nulls. Tou can set the material at Object level as well. These will be the render objects.



Then create two Mantra nodes. One will render the particles with the emitter as a matte object, and the second one will render the emitter with the particles as phantom objects, so they don't occlude the emitter, but still cast shadows and produce reflections.



Edited by Tanto - May 3, 2023 10:22:05

Attachments:
Screenshot from 2023-05-03 10-13-49.png (20.6 KB)
Screenshot from 2023-05-03 10-13-41.png (29.1 KB)
Screenshot from 2023-05-03 10-10-52.png (25.4 KB)
Screenshot from 2023-05-03 10-13-58.png (17.8 KB)
Screenshot from 2023-05-03 10-14-05.png (59.1 KB)
Screenshot from 2023-05-03 10-14-13.png (58.9 KB)

User Avatar
Member
269 posts
Joined: July 2013
Offline
Thanks do much for you time in detailing this Tanto!

I did not know about the method of rendering the emitter with the particles as phantom objects.

Really appreciate your help.
  • Quick Links