Ribbon
Overview
The ribbon renderer connects particles with continuous ribbons, and maps a texture on them.
This renderer is supported in all of our public engine integrations.
Ribbons are displayed onscreen based on an input position, size, color and additional per particle or static properties.

Geometry generation
The ribbon renderer connects all particles in a layer that have the same parent particle:

-
Particle exact positions displayed with a billboard renderer (red cross) are connected together as they have the same parent particle (EventMultiplier)
-
Parent particles exact position displayed with a billboard renderer (red cross) emitting trail events. Child particles have a ribbon renderer, connecting all particles with the same parent
Geometry inputs
Property |
Type |
Description |
|
|
Specifies how the ribbon geometry should be build & aligned.
|
|
|
Number of intersecting ribbon planes when |
|
|
Number of tube subdivisions when |
|
|
Enables the Lit rendering feature: |
|
|
ribbon center in world coordinates |
|
|
Width of the ribbon in world units |
|
|
Normal of the ribbon surface when |
Editor Materials:
-
Ribbon_Transparent/Legacy_Default_Ribbon: Regular transparent ribbon (additive, alpha-blended, or premultiplied-alpha)
-
Ribbon_Opaque/Legacy_Opaque_Ribbon: Opaque ribbon, depth tested.
-
Ribbon_Distortion/Legacy_Distortion_Ribbon: Ribbon drawing in the distortion pass, useful for heat-shimmering effects
-
Ribbon_CorrectDeformation_Transparent/Legacy_Default_Ribbon: Transparent ribbon with correct-deformation on textures
-
Ribbon_CorrectDeformation_Opaque/Legacy_Opaque_Ribbon: Opaque ribbon with correct-deformation on textures
-
Ribbon_CorrectDeformation_Distortion/Legacy_Distortion_Ribbon: Distortion ribbon with correct-deformation on textures
-
Ribbon_AnimatedMasked: Extented transparent ribbon with animated textures
Render-features
Lit
Lights the particle with the scene lights.
Property |
Type |
Description |
|
|
Can cast shadows |
|
|
Material roughness (PBR). A roughness of |
|
|
Material metalness (PBR). A metalness of |
|
|
|
Input pins |
||
|
|
Texture map representing tangent-space normals to be used for lighting. |
|
|
Roughness ® and Metalness (G) packed in an RGBA texture |
|
|
|
LegacyLit
Lights the particle with the scene lights. (legacy shader)
Property |
Type |
Description |
|
|
Used to fake sub-surface scattering on the particles. |
|
|
Exponentiation of the lighting term |
|
|
RGB Multiplier applied to the incoming light |
|
|
Additional uniform light |
|
|
Can cast shadows (not implemented in editor) |
Input pins |
||
|
|
Texture map representing tangent-space normals to be used for lighting. |
|
|
Source map used in specular lighting computation |
NormalBend
Bends the vertex normals of the ribbon to mimic a spherical surface when lighting is enabled.
Property |
Type |
Description |
|
|
Bending factor to apply to the ribbon normals. |
NormalWrap
Remaps the N dot L value in the lighting equation to move back the unlit area of the ribbon, and mimic subsurface scattering / partial backlighting.
Property |
Type |
Description |
|
|
Used to fake sub-surface scattering on the particles. |
SoftParticles
Particles fade away when becoming too close to solid scene geometry, preventing a hard clipping effect where they intersect the scene.
Property |
Type |
Description |
|
|
Fade distance of particles in world units |
AlphaRemap
Allows remapping the alpha using a 2D grayscale texture looked up with the particle alpha along its U coordinate, and a custom per-particle Cursor along its V coordinate.
Property |
Type |
Description |
Input pins |
||
|
|
Texture map used as the alpha remap lookup. |
|
|
|
TextureUVs
Allows to independently flip the U and V texture coordinate in the shader, or rotate the UV coordinates 90 degrees clockwise.
Property |
Type |
Description |
|
|
When enabled, flips the |
|
|
When enabled, flips the |
|
|
When enabled, rotates the texture coordinates 90 degrees clockwise. ( |
TransformUVs
Exposes more control on the UV coordinates of the ribbon corners.
Property |
Type |
Description |
|
|
When enabled, does not transform the UVs used to sample the alpha channel. |
Input pins |
||
|
|
UV offset |
|
|
UV rotation angle |
|
|
UV scale |
Atlas
Allows to use a sprite-sheet as the diffuse texture, and control which subset of the texture is used using a per-particle TextureID input.
Property |
Type |
Description |
|
|
|
|
|
Subdivision count |
|
|
Frame blending type
|
|
|
Multiplier over the uv distortion |
Input pins |
||
|
|
Atlas definition (.pkat) |
|
|
Motion vectors texture, used to blend between frames when |
|
|
Index of the sub-rect to use inside the atlas |
Diffuse
Draws the particle as a regular diffuse surface in addition to distortion.
Property |
Type |
Description |
Input pins |
||
|
|
Texture map used for the diffuse lighting component |
|
|
Diffuse color, multiplied with the diffuse map color. |
DiffuseRamp
Uses the red channel of the diffuse texture (can be grayscale) to lookup a 1D color ramp to get the final RGB diffuse color.
Property |
Type |
Description |
Input pins |
||
|
|
1D texture map used tor for diffuse color remap. |
Emissive
Exposes an emissive map to use as a purely emissive color in addition to the regular diffuse component.
Property |
Type |
Description |
Input pins |
||
|
|
Texture map used for the emissive lighting component. |
|
|
Emissive color, multiplied with the emissive texture |
EmissiveRamp
Uses the red channel of the emissive texture (can be grayscale) to lookup a 1D color ramp to get the final RGB emissive color.
Property |
Type |
Description |
Input pins |
||
|
|
1D texture map used tor for emissive color remap. |