Particles [update]

Particles Rendering

CentiLeo supports rendering several particle engines using CentiLeo Object Tag:

  • New Cinema 4D particles since 2024.4

  • Alembic point cloud

  • X-Particles 

  • Thinking Particles

  • Standard (Legacy) C4D Emitter

  • MoGraph elements (e.g. Matrix object)

  • Cloner Multi-Instances (if Object Tag is assigned to cloner it will render Object Tag reference objects)

Potentially out-of-core amount of particles (hundreds of millions of particle positions) can be rendered by CentiLeo using GPU and our data streaming technology if the CPU and RAM performance are ready to provide such complex simulation setup. CentiLeo can also render complex particle shape with huge amount of geometry (polygons or curves) using streaming for out-of-core dataset inside a particle.

CentiLeo shading system provides access to all particle attributes (such as color, uvw, velocity and others) that are produced by supported particle engine.

Particle Geometry

Particles engine generates particle positions and their parameters and to render each particle with actual geometry the tag “CentiLeo Object Tag” should be added to Particle Group or to Alembic point cloud or to xpEmitter object for X-Particles. 

There is a basic Sphere geometry mode for particle which doesn't require adding reference objects.

The Scale parameter is used to change the size of all particles. Keep in mind that if the object with very large extents is going to be added to reference objects list then the Scale should be reduced up-front to prevent from drawing very huge particles compared to the point cloud extents.

The actual particle size depends on particle transformation matrix, scale, particle radius and dimensions of particle reference object.

particles_test_setup.jpg

Particle Shading

It’s important to assign variation to particle colors on render. CentiLeo renderer detects all available particle attributes for supported particle engines. These attributes include particle ID, Velocity, UVW, Color, Age, Life, Distance Travelled and other attributes. The access to these particles is provided using the Object / Particle Attribute, MoGraph Info and Particle Info nodes. In short it's needed to assign material to the particle generator and then use Object Attribute node to select the attribute colors exported from particle generator.

Custom Geometry

The Object tag has two Geometry modes, one of them is Custom geometry which requres to setup “Reference Objects” where user specified geometry objects can be added to represent particles on render. The referenced objects may represent some part of scene sub hiearchy but without nested particle generators. If several object references are available then they will be assigned randomly to the particle positions.

particles1.jpg

Motion Blur

Global motion blur is enabled in renderer settings in Camera tab and it has effect for all scene objects. Up to 32 transformation keys (object matrix change) are supported for all regular Cinema 4D objects, but particles support just 2 transformation keys. Deformation motion blur produces 2 step blur for deforming object geometry with constant topology (non changing polygon count).

Non-cached X-Particle simulations may produce few artifacts sometimes in case motion blur is enabled because motion blur rendering requires evaluating particle positions around the generated frame. For this reason particle caching may be required to get high quality rendering. In this case particle caching to Alembic file is a very good option. Also New Cinema 4D particles engine provide very fast caching mechanism.

render_settings_motion_blur.png

Velocity Motion blur

There are extra motion blur settings which can be found in Object Tag. For example the motion blur can be disabled.

Some particle engines (New Cinema 2024 particles, X-Particles, Thinking Particles, legacy C4D emitter) provide particle velocity without special handling. So the checkbox Velocity available should be enabled in the Object Tag, but in this case the units of provided velocity vector should be properly set (per frame or per second).

Alembic point cloud velocity channel should be additionaly set if velocity tag is available for Alembic. This tag should be set to Velocity3D channel in Object Tag in case it's backed to vertex color tag. Otherwise the velocity can be backed in 3 separae vertex map tags which are set to Velocity X, Y, Z channels.