X-Particles by Insydium is a popular particle system for Cinema 4D, although OctaneRender® does not render X-Particles directly. Therefore, it is necessary to supply Octane with geometry for X-Particle renders. This is done via the Octane Object tag — typically a sphere, but any geometry will do — just make sure that the geometry is efficiently constructed and minimal, as many particles will consume a significant amount of VRAM.


X-Particles Version build 895 or newer is required

Recent versions of the c4dOctane plugin have been upgraded to support a recent version of the X-Particles SDK. As a result, X-Particles scenes older than with XP build 895 will not be compatible. To use an older version of X-Particles, it is necessary to revert to versions of Octane older than 2020.


Setting Up X-Particles to work with Octane

XP Emitters are the simplest way to generate particles, but the power of X-Particles lies in the X-Particles Control System. In terms of Octane, this means that Octane Object tags need to be applied to either the xpEmitter, xpGenerator or associated Particle Group (all of which depends upon the specific set up.) Determining the proper recipient  for the Octane Object tag can sometimes require some experimentation. When working with scenes containing all of these aspects, start with the xpEmitter, then the Particle Group (if present) and then the xpGenerator.



Octane Object Tag — Particles




The Octane Object tag > Particle Rendering tab is used to add any geometry intended to stand in for the generic X-Particle — the Particle Rendering tab will only be active on objects that Octane considers to be a valid particle generator. 


The Enable menu in the Particle Render section contains four options:

    • None — No particles will be rendered with this option.
    • Geometry — Any Cinema 4D geometry can be used as a particle (take care to keep particle geometry very simple to conserve VRAM). The geometry may also need an Octane Object tag applied, depending upon the specific setup. Materials can be directly applied to the geometry or to the emitter.
    • Voxel — This option does not work with X-Particles and should be ignored.
    • SDF —This option does not work with X-Particles and should be ignored.


Wetmaps

When making materials that make use the X-Particles Wetmap, use the Composite material instead of the Mix material. Mix Material has several limitations in Octane:

    • Mix Material works only with two materials
    • Mix Material needs to work in conjunction with two other node materials so it is difficult to move to other scenes
    • Mix Material doesn't work in the C4D Asset/Content Browser
    • Mix Material doesn't work correctly with Solo mode


The Composite Material solves all of these limitations, and it works correctly also with Solo mode.


Convert Mix Material To Composite Material

Select the Mix Material in the Cinema 4D Material Manager, then go to Live View > Materials > Convert Material and choose Convert Material. A new Composite Material will be created and the contributing materials will be converted to sub-materials. For more information on the Composite Material, see here.


XP Trails

Add object tag, set to hair mode. Due to dynamic point counts, motion blur is not available for XP Trails (or any other object that changes point counts on-the-fly).



Trail Color via Attribute Node

The Attribute node is used to extract the correct color for the XP Trails modifier.

Trail Thickness

The thickness of the trail is based upon the values in the hair root and tip nodes. As these values are fixed, there is no way to vary the size of the trail based upon the size of the particle that generates the trail.


EXplosia

Octane will render Explosia output via the Octane VDB Volume object. Explosia must first be simulated and then be set to save in OpenVBD format, after which it can be loaded into the Octane VDB Volume object to be rendered. If motion blur is desired, the Velocity channels be enabled before the simulation and saved as part of the Octane VDB Volume object. For more on the Octane VDB Volume Object, see this section.

Explosia Volume Position Offset

Octane and Explosia use different coordinate systems, which means that the location of the Explosia volume will be different when loaded into the Octane VDB Volume object. To correct this, it is necessary to make the Z value negative (typically -1).

VDB Object Grids/Channels

All VDBs gave channels/grids which contain different types of data. If a VDB has more than one channel, these channels must then be assigned. If not, Octane will make an arbitrary choice frame by frame, and that will cause some unwanted results. The same grid can be mapped to all three of the channels in the Octane Volume object.

VDB Color

Octane uses VDB channels or grids for shading the volume, so it is necessary to have similar channels in the Explosia VDB output. These channels are mapped into the absorption, scattering and emission channels as needed. Each of these channels can have shaders applied to dial in the look desired. For more information on these channels, see this section


Motion Blur

Motion blur with X-Particles can be more involved than just enabling the motion blur render option, depending on the situation. Make sure the xpEmitter (or other xp source and suitable geometry in the particle rendering list ) has an Octane Object tag applied to it. As particles are added throughout the scene, render times will increase frame to frame, so be prepared for that.


If X-Particles is causing crashes with Octane, it may help to reduce the Motion Blur cache used by Live Viewer. To do so, go to the Octane Camera tag > Motion Blur tab, and reduce M.Blur caches [frame] (discussed here) to a value of 1 to avoid crashes (this value defaults to 25, which can overwhelm the Live Viewer if too many particles are active). Note motion blur is not rendered accurately in Live Viewer, as it is intended primarily as a lighting and material review system. For more information, see here.


It may be necessary to enable the Use GUIDs on Motion Blur option in the Octane Object tag > Motion Blur tab. The option is described here


xpCache / xpOpenVDBMesh and motion blur

The xpCache does not work correctly when caching output from the xpOpenVDBMesher generator, as the motion blur data does not get written into the cache — as a result, the mesh will render, but without any motion blur. To address this issue, disable the cache for the xpOpenVDBMesher generator and then the motion blur will correctly render. By disabling the cache, the mesh is generated "on the fly," and writes out the correct motion blur information as the mesh is generated. Note that use of the smoothing filters may also affect the motion blur data; it may be necessary to disable these options as well.


It is necessary to enable Transfer Velocity in the xpOpenVDBMesher generator. This will create the required information for Octane to calculate motion blur properly, as shown in the following illustration:



XP Open VDB Mesher — tags




The Transfer Velocity option will create three velocity tags and attach the tags to the xpOpenVDBMesher generator. These tags need to be placed in the appropriate slots, matching the specific X, Y and Z axes, located in the Octane Object tag > Motion Blur tab > Vertex Speed turn down, which is visible when the Object Motion Blur menu is set to Vertex Speed, as shown in the following illustration:



Octane Object Tag — Vertex Speed




XP Foam

If xpFoam is not visible, be sure to check the radius of the particles.


Network Rendering

Network rendering has certain requirements for third party plugins whose output is to be rendered with Octane:

X-Particles

As X-Particles is a specific Cinema 4D plugin, it is not suitable for rendering networks, unless the network is local (such as a Team Render or Deadline-based network). Instead, it is best to export the XP System in the Alembic file format (the X-Particles documentation covers the process). Please note that this format has the potential to increase scene file sizes and network transmission times significantly. Any localized network that can access the X-Particles plugin should be able to render X-Particles in Octane.

Xplosia

Octane renders Xplosia output via the Open VDB format only. Grid data is correctly supported.


Getting Proper X-Particle Colors

To match the colors from X-Particles use the Instance Color node. The node is added to the material that is applied to the primitive used as the particle object as defined in the Octane Object tag > Particle Rendering tab. Note that this will work only for geometric particles (where the geometry is specified in the Octane Object tag).