Bug with render / distribution on face - instance on elements node?

Bug with render / distribution on face - instance on elements node?

Blender 5.0, Cycles, GPU

  • I have an animation which I render as images, with transparency
  • I instance planes with a simple texture with alpha transparency on faces
  • the source of the distribution is a video texture, keyframed to the animation, inside a geonode: I mask each “channel” via mix / subtract nodes and use the fake “channel” output as selection for the “distribute on faces” node.
  • I keyframe also the seed of the distribution, but this is unrelevant to the bug (it happens regardless)

In viewport, the distribution is correct, the instanced texture planes happens only where expected.

But in the render, roughly half of the frames are flooded with planes instead.

If I render each frame individually, and not as an animation, they render correctly.
Also, If I render in EEVEE the frames are rendered correctly too.

Any suggestion, as to ascertain wheter it’s something I need to check or if this is actually a bug?

Screenshots:

This is frame #8 in the viewport: everything is as it should be.

This is the rendered frame 8 (the white is only in the uploaded version, it is actually transparent):

This is a screenshot of the export directory:

This the relevant part of the node tree:

That should be less problematic to use a video texture to delete existing geometry than to regenerate differently geometry, at each frame.

It looks like you have a lot of settings keyframed for that regeneration of geometry.
It is probably time required for computations of this geometry, that is problematic for certain frames.

Your set-up is already done. I suggest that you add some Bake nodes to cache this animation of geometry, before rendering animation.
That way, Geometry will not be computed during rendering process, but just read from cache.

Thank you very much, that’s probably it, and the baking and caching should solve it!