0
$\begingroup$

I have the goal of trying to instantiate objects that emit particles, and have the new objects follow points on other objects.

My approach has been to attempt to use Animation Nodes. However, the add-on seems broken? I am following a few tutorials such as this one: https://www.youtube.com/watch?v=S3uschDguJk

As you can see, the basic idea is to instance an object with a particle emitter onto vertices of an animated object (or several). The instancing part works, but in Blender 2.8 and 2.9, the particles do not emit properly once the Object Output Transforms is used to actually move the instance objects onto the vertices. They do not move at all, and lose all interaction with physics or fields.

Partcicle failure As you can see, the original emits particles with physics interaction, but the instanced objects (while generating particles) have them remaining stationary on the surface (and following along with the object animation). In the above youtube video the behaviour is different.

I have also attempted setting location with the attribute node, but (once again) the actual placement of the objects work, but the particles lose any physics

Any advice regarding how to fix this - or alternatives? Many thanks in advance!

$\endgroup$
1
  • $\begingroup$ a blind file would help... $\endgroup$
    – Chris
    Commented Feb 10, 2021 at 15:58

2 Answers 2

1
$\begingroup$

You can bake object transformation into keyframes using Set Keyframes node. It should work.

If you don't want to bake animation then try this method:

Step 1: Create empty objects using Object Instancer and do whatever animations you want to those empty objects.

Step 2: Create instances of actual object having particles using Object Instancer. Then unlink it from node. You can do that by pressing Unlink Instances From Node. which can be found on advanced settings of Object Instancer node. Then move those objects into another collection. enter image description here

Step 3. Get objects from collection using Collection Info node. Then set empties as parent for these objects using Attribute Output node. enter image description here

$\endgroup$
2
  • $\begingroup$ Thanks! That works well. However, why are these extra steps needed? The old way was much more elegant where the object transform would be set and particles still behaved independently? $\endgroup$
    – Foxis
    Commented Feb 10, 2021 at 16:49
  • $\begingroup$ I'm not sure why it don't work may be because AN is updating object data on every execution. Between my answer need a correction, you need to put objects into a new collection after unlinking from node. $\endgroup$ Commented Feb 10, 2021 at 17:25
0
$\begingroup$

Another workaround is to union the result(s) to a fixed object. My AN-generated rockets weren't emitting exhaust right (particles reset on every frame and hugged the rockets).

I added a boolean to an empty mesh, assigned it to read the whole collection that AN outputted, and then the particles behaved more as expected. (Still no subframe particle emission positions, though)

modifier list on my empty mesh

more AN context including collection assignments

$\endgroup$

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .