Particle System

Overview

The Particle System is a set of operators implemented as OmniGraph nodes and other tools for simulating and rendering of particle effects. This page contains documentation for the Particle System including a Getting Started, a User Interface and Tutorials.

ParticleIntro

Getting Started

Extensions

To start using the toolset, the Particles extension must be enabled in Window->Extensions.

ParticleExtensions

If the images you’re using in your material have a range of transparency you’ll want to enable Fractional Cutout Opacity in Render Settings->Real-Time->Translucency

FractionalCutoutOpacity

Particle Reset/Toggle Tool

ResetToggleTool01

There are a few ways to reset or toggle a particle system. You can either go to Edit->Particles->Particle Tools Window which creates a window with selection buttons that you can dock in kit, or select the options in that window.

ResetToggleTool02

Sources

Particle emitters, dynamic fields and particle colliders need source geometry objects to function.

Source Type in Kit/USD

Shape

UsdGeomCube, UsdGeomSphere

Cube and Sphere prims

UsdGeomMesh

Meshes prims

Templates

ParticleTemplate

The Particle System Extension provides a number of sample templates that can be loaded quickly to see how some common and production effects are set up in Create.

Templates has basic field and node setups.

Examples have production particle system setups.

There are two ways to get to the templates and examples.

The Particle templates and support files are in the data folder in the particle system extension source/extensions/omni.particle.system/data/ in the Templates or Production Samples.

You can also load the template and example particle files from the Create menu. Go to Create-> Particles and choose categories and files in Templates or Examples menus.

ParticleTemplate02

Creating Particle Systems

ParticleCreate201

There are two methods to create particle systems.

Menu shortcut You can use the shortcut method in the menu to create different sparticle systems types using sources as outlined in Tutorials 1 - 4.

Omnigraph You can create particle systems from scratch in Omnigraph as outlined in tutorials 5 - 8.

See the table below for details.

Tutorials

Description

Tutorial 1

Using the Menu Shortcut method, create a geometry replicator particle system.
Use Omnigraph to add in St Panners, a field and ramp modulator nodes.

Tutorial 2

Using the Menu Shortcut method, create a point instancer particle system.
Add in a mesh instance and change the sprite to the instance.
Use Omnigraph to add a collider and use targeting to connect meshes.

Tutorial 3

Using the Menu Shortcut method, create a particle visualizer particle system
Using the Menu Shortcut method, use the particle visualizer as a source for a new trail particle system.
Use Omnigraph to add a Noise field and its source.

Tutorial 4

Using the Menu Shortcut method, create a particle visualizer particle system.
Add a flow preset from the menu.
Using the Menu Shortcut method, connect the flow simulation to the particle system.

Tutorial 5

Using Omnigraph, create a geometry replicator particle system, then add St Panners, a field and ramp modulator nodes.
There are setups for other particle types at the end of the tutorial.

Core Particle System Nodes

ParticleCore01

The following are the default nodes when you make a base particle system.

Subgraph / Particle System node

This node holds the collection of core nodes a particle system consists of. A subgraph is a scope that can contain nodes. Each subgraph can be scheduled and evaluated in a different way.

Omnigraph offers push pull and dirty pull evaluation. An action graph evaluator. In the future more evaluations will come online.

A complex effect may be assembled from multiple particle systems.

Note

If you create a particle system via the menu the Subgraph is renamed particle system

ResetToggleTool01

Emitter Node

The emitter injects new particles into the system. Its UI is divided into several sections: Emitter, Emission Cycle, Spawn, Display, Orientation, Collision and Source Primitive sections.

Emitter

This group of parameters control the Emitter basics.

EmitterNode01

Emitter

Description

Active

Toggle: Controls whether the Emitter Node is Active or Inactive.

Emit from Volume or Surface

Toggle: When enabled, particles will be emitted throughout the volume of the Emitter Source Prim.
When disabled, particles will be emitted from the surface of the Emitter Source Prims

Random Seed

Changing this value changes the particles emitted randomly.

Emitter Spawn Rate

This group controls how you want the particle to spawn. Burst, looping.

EmitterRate01

Spawn Rate

Description

Spawn Rate Per Second

Emission rate number of particles per second.

Spawn Rate Per distance

Emission rate, in particles per unit of distance.
Emission active when source moves.

Emitter Emission Cycle

This group of parameters control the Emitter Node’s method of spawning. The particle system is looping or bursting.

EmitterCycle01

Emission Cycle

Description

Activate Cycle Emission

Toggle: When Enabled, emission will be made active and inactive in cycles with period specified by the Cycle Emission.
Enable this toggle to use Burst Spawn Count.
The active portion is specified by Cycle Emission Start and Cycle Emission End.

Loop Cycle

Toggle: When Activate Burst Emission is on and this is enabled, the cycle runs repeatedly.
When Activate Burst Emission is on and this is disabled, the cycle only runs once.

Cycle Duration

When Activate Cycle Emission is on, this is the cycle time period in seconds.

Cycle Emission Start

This is a value from 0 to 1 indicating where in the cycle emission starts.
This only applies when Activate Cycle Emission is on.
If this value is 0, the emission will start at the beginning of the cycle, regardless of cycle duration.
Example: If cycle duration is 7 seconds, and this value is 0.5, emission will start 3.5 seconds after the beginning of each cycle.
Example: If cycle duration is 4 seconds, and this value is 0.5, emission will start 2 seconds after the beginning of each cycle.

Cycle Emission End

This is a value from 0 to 1 indicating where in the cycle emission ends.
This only applies when Activate Cycle Emission is on.
If this value is 1, the emission will stop at the end of the cycle, regardless of cycle duration.
Example: If cycle duration is 7 seconds, and this value is 0.5, emission will end 3.5 seconds after the beginning of each cycle.
Example: If cycle duration is 4 seconds, and this value is 0.5, emission will end 2 seconds after the beginning of each cycle.

Burst Spawn Count

Number of particles to emit at time zero or at the beginning of the Emission in each cycle.
Activate Cycle Emission must be enabled.

Emitter Direction, Speed and Mass

This group of parameters control the particle’s behavior on spawn.

Emitterinit01

Direction, Speed and Mass

Description

Emit Along Axis

Uses the Emitter Source toi push particles along the X axis.
Rotate the Emitter Source to change the push direction.
Emit Along Axis averages with Emit Away From Center
Speed influences the particle’s speed.

Emit Away From Center

Pushed particles out from the Emitter Source Shape normals.
The shape of the Emitter Source influences the direction of the push.
Emit Away from Center averages with Emit Along Axis.
Speed influences the particle outward push.

Random Direction

Push particles in a random X,Y,Z direction per spawn.

Add Source Velocity

When this is non-zero, this portion of the velocity of an emission source is added to the particles emitted from it.
The higher positive or negative value, the more velocity applied respectively.
If zero no velocity is applied.

Speed

The outward movement of the particle per Spawn
See Emit Along Axis and Emit Away From Center.

Speed Random

Randomly change the Speed of the particle per spawn.

Mass

“Weight” of the particle.

Emitter Lifespan

This group allows you to change the lifespan of the particle in seconds.

EmitterLifespan01

Lifespan

Description

Lifespan

Lifetime of the particles in seconds

Lifespan Random

Randomly change the lifetime to the particle per spawn.

Emitter Emit From Particles

This group allows you to alter the trail of the emitter. You must have the particles as a source for your trail emissions for these parameters to function. This group allows you to inherit the following parameters from the particle system source emitter.

EmitterFromParticles

Emit From Particles

Description

Random Position

Multiplier: Randomize source particle positions.

Velocity

Multiplier: Inherit Velocity when emitting from particles.

Mass

Multiplier: Inherit Mass when emitting from particles.

Scale

Multiplier: Inherit Scale when emitting from particles.

Radius

Multiplier: Inherit Radius when emitting from particles.

Color

Multiplier: Inherit Color when emitting from particles.

Opacity

Multiplier: Inherit Opacity when emitting from particles.

Emitter Display

This group of parameters control the particle’s visualization. This works with with the Translucent Material.

EmitterDisplay01

Display

Description

Particle Size

Change the size of the particle or mesh in X,Y,Z.

Random Particle Size

Randomly change the size of the particle or mesh in X,Y,Z per spawn.

Indexed Object

Object index is valid if you have multiple sources to output.
The number corresponds with the order you imported your sources.

Random Indexed Object

Randomly pick an Object Index source in a range per spawn.

Generate Color and Opacity

Toggle: If enabled the particle will generate color and opacity.
This allows the particle to be colored with vertex colors and opacity to be influenced by a float.

Color

Sets a vertex color per particle spawn.
You must have Generate Color and Opacity enabled above and Enable Vertex Colors enabled in your Translucent Material

Random Color

Sets a random vertex color to the particle per spawn.
You must have Generate Color and Opacity enabled above and Enable Vertex Colors enabled in your Translucent Material.

Opacity

Controls how transparent your particle renders.
You must have Generate Color and Opacity enabled above and Enable Opacity enabled in your Translucent Material
If your translucent Particle isn’t displaying correctly, toggle Enable Fractional Cutout Opacity in RTX Settings, Ray Tracing.

Random Opacity

Randomly change the particle Opacity per particle spawn.
You must have Generate Color and Opacity enabled above and Enable Opacity enabled in your Translucent Material
If your translucent Particle isn’t displaying correctly, toggle Enable Fractional Cutout Opacity in RTX Settings, Ray Tracing.

Emitter Orientation

This group of parameters control the particle’s orientation.

Controlling Orientation If you want a particle or shape to be in a specific orientation, disable Face Active Camera and Orient With Active Camera in the Geometry Replicator or Point Instancer. Aim Inherits Velocity in Solver also can influence Orientation.

EmitterDisplay01

Orientation

Description

Rotation

Rotate the particle in X Y Z in degrees.

Random Rotation

Randomly rotate the particle in X, Y, Z along a degree range per spawn.

Aim

Aim points the particle in a specific direction in x,y,z.

Random Aim

Aim the particle in a random direction per spawn.

Up

Change the ‘top’ value of the particle in x, Y, Z.

Random Up

Randomly change the ‘top’ value of the particle on spawn.

Emitter Collision

This group of parameters control the particle’s collision shape.

EmitterCollision01

Collision

Description

Radius Influences Scale

Toggle: If enabled the Radius of the collision multiplies the Size of the particle.
You must have Scale Inherit Collision Radius toggled in the Solver.

Radius

The radius of the particle collision.

Random Radius

Randomly set a collision radius in a range.

Emitter Source Primitive

This group allows you to add source primitives to your emitter.

EmitterSourcePrimitive01

Source Primitive

Description

Primitive

This field shows where your source geometry primitive is located in the stage/layer.

Add Target(s)

This button allows you to add source primitives to the emitter.

Solver Node

The solver node implements numerical integration of the underlying particles data at each simulation step.

SolverNode01

Solver

Solver Parameter

Description

Active

Toggle: Controls whether the Node is Active or Inactive.

Solver Status

Status Parameter

Description

Current Particle Count

Displays the active count of particles in real time

Solver Particle Spawn

Particle Spawn Parameter

Description

Aim Inherits Velocity

Aim parameters inherit the velocity of the particle.

Maximum Particle Count

The Maximum amount of particles to spawn per cycle.
-1 is no maximum.

Solver Evaluation Mode

Evaluation Mode Parameter

Description

Playback Evaluation

Toggle: Simulate in runtime or animation playback mode.

Playback Start Frame

The start frame of the simulation in animation playback mode.

Playback End Frame

The end frame of the simulation in animation playback mode.
-1 is no end frame.

State prim

The State prim is automatically created by the Solver. It has no user-facing functionality.

Sprite

The Sprite is automatically created as a default display method. It has no user-facing functionality.

Emission Types and Outputs

There are four different emitter types you can use inside of the particle system. Here is a handy guide of what they do.

Emission Type

Description

Geometry Replicator

Copies geometry to points (defaults to a sprite).
All of the output geometry must use a single material per particle system.

Point Instancer

Virtually copies geometry to points at render time (defaults to sprite).
This supports source objects with different materials.
This does not support ST Panner.
This does not support ramp modulated vertex colors.

Point Cloud Flow Emitter

Allows flow to be driven by particle system behavior.

Particle Visualizer

Draws lines representing aim of the particle.

Geometry Replicator Node

GeoReplicator01

Geometry Replicator generates mesh geometry you can touch and post modify.

Geometry Replicator Parameters

GeoReplicator01

This group allows you to change the particle and display after it has been solved.

Geometry replicator

Description

Active

Toggle: Controls whether the Geometry Replicator Node is Active or Inactive.

Face Active Camera

Toggle: If enabled, the y axis of the geometry will face the camera for each replica.
If disabled, the particle or shape to use its local orientations.

Orient With Active Camera

Toggle: If enabled, the y axis of the geometry will face the camera for each replica, and the x axis of the geometry will be vertical relative to the camera. “,
if disabled, the particle or shape to use its local orientations.
Note: When this is on, Face Active Camera is ignored.

Inherit Color and Opacity

Toggle: If enabled the particle will inherit color and opacity.
This allows the particle to be colored with vertex colors and opacity to be influenced by a float.

Rotation

Rotate the particle or shape in X,Y,Z.

Aim

Aim points the particle in a specific direction in X,Y,Z.

Up

Change the ‘top’ value of the particle in X,Y,Z.

Scale Multiplier

Multiply the Particle Size in X,Y,Z.

Filter Object index

When this is non-negative, geometry will only be copied to particles with this object index.

Geometry Replicator Visualization

GeoReplicatorViz01

This group allows you to change the look of the particle display for production and a number of debug visual options.

Geometry Replicator Visualization

Description

Visualize Geometry

Toggle: Enables mesh wireframe visualization.

Visualize geometry Normals

Toggle: Enables mesh normals visualization.

Visualize Points

Toggle: Enables particle point visualization.

Visualize Velocities

Toggle: Enables particle velocity visualization.

Output to Mesh

Toggle: When enabled, this node writes to the prim(s) specified by outputs:mesh.
If disabled, it doesn’t write to any prims.

Visualization Color

This changes the display color of the visualization options.

Geometry Replicator Source Primitive

GeoReplicatorSprim01

This group allows you to change the mesh/primitive.

Geometry Replicator Primitive

Description

Primitive

This field shows where your source geometry (default Sprite) is located in the stage/layer.

Add Target(s)

This button allows you to change the display of the geometry replicator to a different mesh.

Geometry Replicator Material Connector

When A Geometry Replicator is created, the output node allows you to link the material to the Geometry

GeoReplicatorOutput01

Point Instancer

This node outputs the simulated data to an USD Point Instancer prim for rendering.

Point Instancer Parameters

PointInstancer01

This group allows you to change the particle and display after it has been solved.

Point Instancer Parameter

Description

Active

Toggle: Controls whether the Point Instancer Node is Active or Inactive.

Face Active Camera

Toggle: If enabled, the y axis of the geometry will face the camera for each replica.
If disabled, the particle or shape to use its local orientations.

Orient With Active Camera

Toggle: If enabled, the y axis of the geometry will face the camera for each replica, and the x axis of the geometry will be vertical relative to the camera. “,
if disabled, the particle or shape to use its local orientations.
Note: When this is on, Face Active Camera is ignored.

Inherit Color and Opacity

Toggle: If enabled the particle will inherit color and opacity.
This allows the particle to be colored with vertex colors and opacity to be influenced by a float.

Rotation

Rotate the particle or shape in X,Y,Z.

Aim

Aim points the particle in a specific direction in X,Y,Z.

Up

Change the ‘top’ value of the particle in X,Y,Z.

Scale Multiplier

Multiply the Particle Size in X,Y,Z.

Filter Object index

When this is non-negative, geometry will only be copied to particles with this object index.

Point Instancer Material Connector

The Material Connection for te Point Instancer is in the Sprite Node.

PointInstancerSprite01

Particle Visualizer

the Particle Visualizer draws the aim of the particle and nothing else. This is a good method to use if you want to drive other Omniverse tools (like flow) but don’t have a need to display geometry/particles.

Particle Visualizer Output Node

PointInstancerSprite01

The Particle Visualizer Output node has options to change the look of the particle display

Particle Visualizer Parameter

Particle Visualizer Parameter

Description

Active

Toggle: Controls whether the Geometry Replicator Node is Active or Inactive.

Color Particles By Aim

Toggle: This changes the color of the particle based on its Aim.

Rotation

Rotate the particle or shape in X,Y,Z.

Aim

Aim points the particle in a specific direction in X,Y,Z.

Up

Change the ‘top’ value of the particle in X,Y,Z.

Scale Multiplier

Multiply the Particle Size in X,Y,Z.

Point Cloud Flow Emitter

This node emits into Flow (our GPU based gas simulator). To create this node from the drop-down menu you must select a particle solver node and a FlowSimulate prim in the stage.

PointCloudFlowEmit01

Flow Emitter Parameter

Flow Emitter Parameter

Description

Active

Toggle: Controls whether the Node is Active or Inactive.

Flow Emitter Relationship

Flow Emitter Relationships

Description

Particles

Path to the Particle system sourced to drive the Flow behavior.

Add Target(s)

Button allows to add new or multiple targets to drive Flow.

Flow Emitter Point

Link to the Flow Emitter point

Add Targets(s)

Allows to link to new or multiple flow emitter point nodes.

Flow Emitter Point

FlowEmitPoint01

This node is a part of the flow. Link below for its documentation:

Flow Emitter Point Documentation

Field Nodes

ParticleFields01

Fields allow you to change the particle over time using a source as volume of influence for the field.

Destroy Field

ParticletDestroyField01

The Destroy field will kill particles when crossing the destroy field source shape. The result can also be inverted.

ParticleDestroyFieldParams01

Destroy Field Parameter

Destroy Field Parameters

Description

Active

Toggle: Controls whether the Destroy Field Node is Active or Inactive.

Inverse Field

Toggle: if Enabled, the destroy field will use the inverse of the source geometry.

Destroy Field Source Primitive

Source Primitive

Description

Primitive

This field shows the path where your destroy field source is located in the stage/layer.

Add Target(s)

This button allows you to change to a different source.

Direction Field

ParticleDirectionField01

The Direction field will move particles in a direction based on the direction field shape position, rotation and scale. Particles outside of the field will not be affected

ParticleDirectionFieldParams01

Direction Field

Direction Field Parameters

Description

Active

Toggle: Controls whether the Direction Field Node is Active or Inactive.

Direction Field Settings

Direction Field Settings

Description

Attenuation

Attenuation will reduce the amount of energy of the direction.
Attenuation is how much the effect of the field decays from the ‘center’ to the ‘boundary’ of the Direction Field Source.
If set to zero the Magnitude is applied to the entire field.

Magnitude

The amount of force to apply to the direction.

Direction Field Source Primitive

Source Primitive

Description

Primitive

This field shows the path where your direction field source is located in the stage/layer.

Add Target(s)

This button allows you to change to a different source

Drag Field

ParticleDragField01

This field will apply drag, a reduction in linear velocity over time, inside of the drag field shape.

ParticleDragFieldParams01

Drag Field

Drag Field Parameters

Description

Active

Toggle: Controls whether the Drag Field Node is Active or Inactive.

Drag Field Settings

Drag Field Settings

Description

Attenuation

Attenuation will reduce the amount of drag Magnitude.
Attenuation is how much the effect of the field decays from the ‘center’ to the ‘boundary’ of the Drag Field Source.
If set to zero the Magnitude is applied to the entire field.

Magnitude

The amount of force to apply to the drag.

Drag Field Source Primitive

Source Primitive

Description

Primitive

This field shows the path where your drag field source is located in the stage/layer.

Add Target(s)

This button allows you to change to a different source.

Noise Field

ParticleNoiseField01

The noise field generates a noise to influence particles inside the Noise Field Source.

ParticleNoiseFieldParams01

Noise Field

Noise Field Parameters

Description

Active

Toggle: Controls whether the Noise Field Node is Active or Inactive.

Noise Field Settings

Noise Field Settings

Description

Use Velocity

Consider velocity of the particle when calculating noise.

Attenuation

Attenuation will reduce the amount of noise Magnitude.
Attenuation is how much the effect of the field decays from the ‘center’ to the ‘boundary’ of the Noise Field Source
If set to zero the Magnitude is applied to the entire field.

Frequency

Value changes position to increase or decrease the noise sample.

Magnitude

The amount of force to apply to the drag.

Octaves

The amount of times the noise is sampled.

Noise Field Source Primitive

Source Primitive

Description

Primitive

This field shows the path where your noise field source is located in the stage/layer.

Add Target(s)

This button allows you to change to a different source.

Radial Field

ParticleRadialField01

The radial field creates an zone of attraction or repulsion based on the field shape.

ParticleRadialFieldParams01

Radial Field

Radial Field Parameters

Description

Active

Toggle: Controls whether the Radial Field Node is Active or Inactive.

Radial Field Settings

Radial Field Settings

Description

Attenuation

Attenuation will reduce the amount of radial Magnitude.
The Attenuation uses a linear falloff with the center of the source being zero Attenuation and the edge being full Attenuation.
If set to zero the Magnitude is applied to the entire field.

Magnitude

The amount of force to apply to the field.
A positive value will cause the particles to be pushed away from the source shape.
A negative value will cause the particles to be pulled toward or attracted to the center of the source shape

Radial Field Source Primitive

Source Primitive

Description

Primitive

This field shows the path where your radial field source is located in the stage/layer.

Add Target(s)

This button allows you to change to a different source.

Vortex Field

ParticleVortexField01

This field will move the particles in a vortex (swirl), based on the field shape position, rotation and scale. Particles outside of the field will not be affected.

ParticleVortexFieldParams01

Vortex Field

Noise Field Parameters

Description

Active

Toggle: Controls whether the Vortex Field Node is Active or Inactive.

Vortex Field Settings

Vortex Field Settings

Description

container

This will affect the overall look of the vortex.
Higher values will tighten the vortex in the field.

Attenuation

Attenuation will reduce the amount of vortex Magnitude.
Attenuation is how much the effect of the field decays from the ‘center’ to the ‘boundary’ of the Vortex Field Source
If set to zero the Magnitude is applied to the entire field.

Magnitude

The amount of force to apply to the drag.

Random Magnitude

Randomize the amount of force through the vortex field.

Random Seed

Changing this value changes the particles emitted randomly.

Vortex Field Source Primitive

Source Primitive

Description

Primitive

This field shows the path where your vortex field source is located in the stage/layer.

Add Target(s)

This button allows you to change to a different source.

Collider Node

ParticleCollider01

This resolves collisions of particles with collision geometry or other particles.

ParticleColliderParams01

Collider

Collider

Description

Active

Toggle: Controls whether the Collider Node is Active or Inactive.

Collider Collision Settings

Collision Settings

Description

Enable Collision

Toggle: If this is true, particles will collide against any collision geometry, else collision geometry will be ignored.

Enable Self Collision

Toggle: If this is true, particles will collide against each other, else particles will pass through each other.

Die On Collision

Toggle: If this is true, particles will die upon colliding with collision geometry.

Die On Self Collision

Toggle: If this is true, particles will die upon colliding with other particles.

Bounce

The portion of particle velocity normal to the surface preserved on bounces.

Friction

The portion of particle velocity tangent to the surface preserved on bounces.

Collider Source Primitive

Source Primitive

Description

Primitive

This field shows the path where your collision primitive(s) source is located in the stage/layer.

Add Target(s)

This button allows you to change to a different source.

ST Panner Node

ParticleSTPanner01

This node animates the texture coordinates of particle sprites for looping over tiled textures creating a flipbook effect. The animation speed is controllable.

St Panner Parameters

ParticleSTPannerParams01

St Panner Image Tiles

This group controls the division of your texture’s coordinate space.

Image Tiles

Description

Image Tile Columns

Set the amount of frames in S coordinate space.

Image Tile Rows

Set the amount of frames in T coordinate space.

Flip Columns

Toggle: Flip the UV space in S coordinate space.

Flip Rows

Toggle: Flip the UV space in T coordinate space.

St Panner Tile Range

This group controls the range that your divided texture (Tiles).

Tile Range

Description

Start Tile Column

The start frame in the S coordinate space (columns). -1 uses default frames set.

Start Tile Rows

The start frame in the T coordinate space (rows). -1 uses default frames set.

End Tile Column

The end frame in S coordinate space (columns). -1 uses default frames set.

End Tile Rows

The end frame in T coordinate space (rows). -1 uses default frames set.

St Panner Tile Playback Options

This group controls different methods to playback your tiles. Useful when you are using a tiling textures.

Tile Playback Options

Description

Randomize Start Tile

Toggle: Starts each particle at a random tile in the range, based on the particle ID, instead of the first tile in the range.

Use Time for Tile Speed

Toggle: When enabled, the simulation cycles through all of the tiles every Tile Range Time In Seconds.
When disabled, the simulation cycles through all of the tiles exactly once over each particle’s lifetime.

Tile Range Time In Seconds

When Use Time for Tile Speed is enabled, this is the time period over which a full cycle of the tile range occurs.
If this is set to 0, each particle permanently stays on whichever tile it started with.

Ramp Modulator Node

ParticleRampModulators01

Ramp modulators allow you to change particle behavior over the lifetime on the particle on a curve or ramp. You can put any vector or float from the emitter in the attribute to remap field.

Ramp Modulator Valid Parameters

Below is a list of valid parameters for the Ramp Modulator Node. These parameters appear in their drop down menu in attribute to remap.

Ramp Modulator Valid Parameters

Description

Scalar Parameters

objectIndex
radius
opacity
ageNormalized
mass
age
lifespan

Vector parameters

scale
rotation
up
velocity
aim
position
color

Note

Point Instancers do not support the Opacity and Color parameter

Ramp Modulator UI

Ramp Modulator UI

Description

Ramp Time

Ramp normalizes the lifetime of the particle from 0 to 1.

Float parameters

Use Scalar Ramp attribute to remap emitter float parameters to ramp.

Vector parameters

Use Color Ramp attribute to remap emitter vector parameters or colors to ramp.

Adding A key or point

Left Click the ramp or color ramp.

Removing a key or point

Double left click the ramp point or color key.

Moving a key or point

Left click select and type in the scalar position and value field.
Left click select and drag a point.

Changing interpolation

Left click select the key and change the interpolation in the dropdown field.
Interpolation works from the point selected.

Color Picker

Clicking on the color value field causes a color picker to appear. Use this to select colors or change vectors.

Enter

Values and colors do not apply until the values are entered.
ParticleRampModulatorsParams01

Ramp Modulator Node Parameters

Ramp Modulator

This group controls if the ramp modulator is on and its mode

Ramp Modulator

Description

Active

Toggle: Controls whether the Ramp Modulator active or inactive.

Mode

Dropdown controls how the ramp modulator changes the particle. Defaults to Multiply
over: Overrides whatever settings you had in the emitter.
add: Additive settings. Ramp adds to values
multiply: Multiply settings. Ramp multiplies to values.

Ramp Modulator Scalar Ramp

ParticleRampModulatorsScalar01

Use parameters in this group when you want to change float parameters with a ramp over the normalized lifetime of the particle.

Scalar Ramp

Description

attribute to remap

Name of scalar attribute to remap. (float)

scalar ramp

Use this to create points for a curve/ramp.
This curve represents the normalized lifetime of the particle.

position

This field shows the point’s time/location on the curve.

value

This field shows the point’s value on the curve.

interpolation

Linear: A direct line from point to point.
Smooth: An eased line from point to point.

Ramp Modulator Color Ramp

ParticleRampModulatorsColor01

Use parameters in this group when you want to change vector parameters with a ramp over the normalized lifetime of the particle.

Color Ramp

Description

attribute to remap

Name of color attribute to remap. (float)

scalar ramp

Use this to create keys for a curve/ramp.
This color range represents the normalized lifetime of the particle.

position

This field shows the key’s time/location on the range.

value

This field shows the key’s value on the range.
Selecting this field will pop up a color picker.

interpolation

Linear: A direct line from point to point.
Smooth: An eased line from point to point.

Ramp Modulator Color Picker

Use the color picker to select colors and set vector ranges. This will not update until you select enter.

ParticleColorPicker01

Color Picker

Description

Color UI

Click on color to select color.
Values do not apply until entered.

R, G, B

Use this to key in Red, Green and Blue values
Use fields to set Vector parameters. (X, Y, Z)

H, S, V

Use fields to set Hue, Saturation and Value values.

Hex field

Enter Hexadecimal code values here.

Translucent Material

ParticleTranslucentMaterial01

Translucent Material Parameters

The particle tool comes with a default translucent material that you can use with your particles.

Translucent Material Texture

ParticleTranslucentMaterialTexture01

This group carries your texture information. You can load textures and change texture and brightness here.

Texture

Description

Texture

Select your texture in this field using the file browse button.
You can also locate files if you have a path in the field.

Texture Color Space

auto
raw
sRGB

Color texture brightness

Change color brightness. This is an additive function.

Color texture contrast

Change color contrast. This is a power function.

Translucent Material Flipbook

ParticleTranslucentMaterialFlipbook01

This group allows you to subdivide a texture and animate it. This only works if you hit play in Omniverse.

Flipbook

Description

Enable flipbooks

Toggle: Controls whether the flipbook is enabled or disabled.

Number of columns

Set the number of columns here.

Number of rows

Set the number of rows here.

Playback speed

Set the speed of the playback in seconds.

Albedo

ParticleTranslucentMaterialAlbEmiss01

This group sets an vector diffuse color.

Albedo

Description

Diffuse color

Set the diffuse color R, G, B.

Translucent Material Emissive

This group sets an emissive color and Intensity

Emissive

Description

Enable Emissive

Toggle: Controls whether to enable or disable an emissive to the material.

Emissive color

Set the emissive color R, G, B.

Emissive Intensity

Sets an emissive intensity.

Translucent Material Emission

Emission

Description

Emission from texture

Toggle: Controls whether to enable or disable an emission from the loaded texture.

Translucent Material Inputs Opacity

ParticleTranslucentMaterialOpacity01

This group controls opacity from the loaded texture for the material.

Inputs

Description

Opacity

Controls the overall fractional opacity of the texture.

Opacity

Description

Opacity from texture

Toggle: Use opacity from the textures alpha channel.

Opacity texture min

Opacity texture minimum value.

Opacity texture maximum

Opacity texture maximum value.

Opacity texture brightness

Change opacity brightness. This is an additive function.

Opacity texture contrast

Change opacity contrast. This is a power function.

Draw a round particle

Toggle: Creates a round particle from the particle mesh.

Translucent Material Vertex Color

ParticleTranslucentMaterialFlags01

This group holds the toggles to enable disable vertex colors as well as texcoord index controls.

Vertex Color

Description

Enable Vertex Color

Toggle: Controls whether vertex color is enabled or disabled.
Enable this if you want to change colors or over time in the particle system.

Enable vertex color alpha channel

Toggle: Controls whether vertex color alpha channel is enabled or disabled.
Enable this if you want to change opacity or over time in the particle system.

texcoord channel index

Vertex color UV index.

Translucent Material Geometry

Geometry

Description

Double sided

Toggle: Controls whether the geometry is single sided or double sided.

Translucent Material Flags

Material Flag

Description

Exclude from White Mode

Toggle: Controls whether the geometry is included or excluded from white mode.

Tutorial 1: Create a geometry replicator particle system

This set of tutorials have you creating a simple smoke column using sprites. We’ll be taking a look at all of the core nodes as well as looking at the material, st panner, fields, ramp modulators.

If you want to follow along with the video or the documentation, you’ll need a texture file. Download and unzip the files for the tutorial in the link below.

Particle System Tutorial Files

1a) Create a basic particle system

In this section we’ll be creating a basic particle system using a geometry replicator.

Video 1: Create a Geometry Replicator Emitter

Create a Source and choose an emission type

First, create a source for the particle system emitter.

1. Go to Create->Shapes-> and select Sphere

ParticleTutCreateSource01

Next we need to select an emission type. For this example, we’ll be using a geometry replicator emission type. This type allows us to use the ST panner node in a later step.

2. With the sphere selected, go to Create->Particles-> and select with Geometry Replicator.

ParticleTutGeoReplicator01

Now you have a geometry replicator using the sphere as a source. We don’t need to see the source for this tutorial, so we’ll be turning off its visibility.

3. Turn off visualization of the sphere by clicking on the eye in Stage-> World -> Sphere.

ParticleTutSphereViz01

Your source is invisible and you’ll only see particles emitted in space. Your particle should look something like this:

ParticleGrStep01

Select a texture for your Material

Next we need to select a texture for the material we’ll be using with the st panner node in the next step. We’ll also be changing a setting in kit and the emitter to see the particle better.

The file we’re loading is a texture rendered out in a third party program. Its set up to have 8 x 8 frames and looks like this:

ParticleGrWisp01

1. Go to Stage -> World -> Looks and select the translucent_particle material that was created when you made the particle system.

2. Go to Property -> Texture and click the Browse… button

ParticleGrMat01

3. A Select Asset window will open. Go to where your particle_system_tutorial_files folder is located, and select the smoke_wisp.png and click the Select Button.

ParticleGrSelectAsset01

Kit Render Settings

Now that the texture is loaded you’ll notice its hard to see. We need to change a couple settings in the Render Settings and the Emitter to better view it.

1. Go to the Render settings tab and select Real Time in the renderer dropdown.

ParticleGrRTSelect01
  1. Open the Translucency dropdown and toggle the Enable Fractional Cutout Opacity to on.

ParticleGrRTCutout01

The particle is visible but still very hard to see so next we’ll change the size of the particle

Emitter Tweaks

1. Go to Stage -> World -> particle system and select emitter.

2. In Property, go to Display and change the Particle size to 10 in X, Y, and Z.

ParticleGrEmitTweaks01

Now the particle is large enough to see. We’ll be making tweaks as we go through the tutorial. Next ST Panners.

ParticleGrStep01a

Save your file.

1b) Adding St Panners

In this section we’re going to use an st panner to create a flipbook. We’ll need to add the St Panner in Omnigraph. This is a tutorial is a continuation of the previous tutorial section. This is part b of the series.

Video 1b: Adding an ST Panner

Create the St Panner node in Omnigraph

Go to OmniGraph and click Editor.

ParticleTutOmniEditor01

The setup for the particle system is streamlined in Omnigraph for ease of use. Here you’ll see all of the essential nodes for creating particle systems are displayed.

ParticleTutOmniEd01

1. Inside the World/particle_system box hit the TAB key.

2. Inside the search window do a search for St Panner.

3. Click on the particle system: st panner entry and an st panner node will appear.

ParticleTutOmniPan02

Connect the St Panner node

1. Position the ST Panner node between the Solver and geometry replicator node.

2. Left click drag from point to point to connect. Right click on a point to disconnect if needed.

3. Connect the st panner node as shown below.

Note

St Panners must be connected after the solver.

ParticleTutOmniPan03

Close the Omnigraph editor.

St Panner settings

Now that the st panner node is created we’ll divide up the texture to animate.

1. Go to Stage -> World -> particle system and select particle_system_st_panner

2. Go to Property -> Image Tiles and change the Image Tile Columns and Image Tile Rows to 8

ParticleTutOmniPan04

Now the texture is animating like a flipbook.

St Panner Emitter and Source Tweaks

Source Changes

Go to the sphere and rotate its axis.

1. Go to Stage-> World and select the sphere

2. In Property Change the following parameters.

Go to Rotate and rotate the z axis to 90.

Go to Scale and change the x, y, and z axis to .1.

ParticleTutGrSphereMods01

This rotates the source up for the next step.

Emitter Changes

1. Go to Stage -> World -> particle system and select emitter

2. In Property change the following parameters:

Direction, Speed and Mass -> Emit along Axis 1

Direction, Speed and Mass -> Emit Away From Center 0

Direction, speed and Mass -> Speed 75

Lifespan -> Lifespan 3

Display -> Generate Color and Opacity Toggle on

Display -> Opacity .5

Display -> Random Rotation Y axis 360.

ParticleGrTutEmitMods01b

Now your particles should be moving up. Next we’ll add in a field. to change the movement.

ParticleTutGrStep01b

1c) Adding Fields

In this section we’re going to use a field to move the particle column to simulate a wind. This is part c of the series.

Video Tutorial 1c: Adding Fields

Create a source for your Direction field

To use a field you need to give it its own source to act as a volume of influence. Using sources as a volume for fields is a constant no matter what field you use.

1. Go to Create->Shapes-> and select Sphere

ParticleTutCreateSource01

This will create Sphere_01.

2. Select the sphere and make the following changes in Property:

Geometry -> Radius 500

then turn visibility off by toggling the Eye icon in Stage -> World -> Sphere_01

1. Go to Create->Shapes-> and select Sphere

ParticleTutFieldSrce01

Omnigraph Setup

Go to OmniGraph and click Editor.

ParticleTutOmniEditor01

The setup for the particle system is streamlined in Omnigraph for ease of use. Here you’ll see all of the essential nodes for creating particle systems are displayed.

ParticleTutGrOmniField01

1. Inside the World/particle_system box hit the TAB key.

2. Inside the search window do a search for direction.

3. Click on the particle system: direction force field entry and an direction force field will appear.

4. Connect particle system: direction force field to the graph as shown below.

Note

Fields must be connected before the solver.

ParticleTutGrOmniField02

Now you need to connect the source to the field.

1. Go to Stage -> World and Select and hold Sphere_01

2. Drag and drop Sphere_01 into the Omnigraph Editor inside the world/particle system box as shown below.

ParticleTutGrOmniField02

Now connect Sphere_01 to the particle_system_direction_field to the inputs:prim as shown below.

ParticleTutGrOmniFieldConnect01

Now the particles should be moving in a direction.

Close the Omnigraph Editor.

Direction Field Tweaks

Now we have the direction field hooked up to the particle system. The particles are moving too fast. Let’s change some parameters in the Direction force node.

1. Select Stage -> World -> particle system -> particle system direction force field.

2. Change the following parameters in Property:

Direction Field Settings -> Attenuation .5

Direction Field Settings -> Magnitude .08

ParticleTutGrOmniDirModst01

Now the particles are moving in a more natural way.

ParticleTutGr01c

Next we’ll be changing the opacity and scale of the particles over time with ramp modulators.

1d) Using Ramp Modulators

In this section we’re going to add a Ramp Modulator to change the scale and opacity of the particle over time. Ramp modulatiors can take floats and vector parameters anc change them over the lifetime of the particle. This is part d of and final section of the series.

Video Tutorial 1d: Ramp Modulators

Omnigraph Setup

Go to OmniGraph and click Editor.

ParticleTutOmniEditor01

1. Inside the World/particle_system box hit the TAB key.

2. Inside the search window do a search for ramp.

3. Click on the particle system: ramp modulator entry and an ramp modulator node will appear.

ParticleTutGrOmniRamp02

4. Connect particle system: ramp modulator to the graph as shown below.

Note

Ramp modulators must be connected after the solver.

ParticleTutGrOmniRamp03

Close the Omnigraph Editor.

Ramp Modulator Parameters

With the Ramp Modulator node connected we can now make modifications.

Note

The mode of the Ramp Modulator allows you to modify the way the ramp modulator changes your particle over time. The mode defaults to 2 (multiply).

Ramp Modulator Modes

Description

Mode

Dropdown controls how the ramp modulator changes the particle. Defaults to Multiply
over: Override Settings.
add: Additive settings. Ramp adds to values
multiply: Multiply settings. Ramp multiplies to values.

1. Go to Stage -> World -> particle system and select particle_system_ramp_modulator .

2. Go to property and make the following changes:

Scalar Ramp (float) changes

In Scalar ramp -> attribute to remap select opacity in the dropdown menu.

Left click on the ramp to add 2 points to the line. Double click to remove points.

1. Left click the first point and change Interpolation to smooth

2. Left click select the second point *either move the point by dragging or enter: **position* .25 and value .5

3. Left click on the third point and either move the point by dragging or enter:** position** .75 value .5. Interpolation smooth

The particles will be fading in and out of opacity over the lifetime of the particle.

ParticleTutGrSRamp01

Color Ramp changes

In Color ramp -> attribute to remap select scale in the dropdown menu.

1. Left click on the red (first) key then click on the value bar and a color picker will appear. Type in R: 1, G: 1, B: 1. click outside of the color picker to enter your values.

2. Double click on the green (center) key to remove it.

3. Left Click on the blue (third) key and click on the value bar and a color picker will appear. Type R: 5, G: 5, B: 5. click outside of the color picker to enter your values.

ParticleTutGrCRamp01

The particles will be scaling from 1 to 5 times its size over time.

ParticleTutGrCRamp02

In this tutorial set we’ve created a geometry replicator and added an st_panner, fields, and a ramp modulator. This concludes this tutorial.

Tutorial 2: Create a point instancer particle system with a collider

In this section we’ll be creating a set of colliding sphere mesh particles using a point instancer. We’ll be looking at point instancers, how to change a sprite into a mesh and how to set up colliders.

If you want to follow along with the video or the documentation, you’ll need a couple usd mesh files. Download and unzip the files for the tutorial in the link below.

Particle System Tutorial Files

2a) Create a point instancer particle system

In this section we’ll be creating a basic particle system using a point instancer.

Video 2: Create a Point Instancer particle system

Create a Source and choose an emission type

First, create a source for the particle system emitter.

1. Go to Create-> Shapes-> and select Sphere

ParticleTut2CreateSource01

Next we need to select an emission type. For this example, we’ll be using a point instancer emission type.

2. With the sphere selected, go to Create-> Particle-> and select with Point Instancer.

ParticleTutPtInstnacer01

Now you have a Point Instancer using the sphere as a source. We don’t need to see the source for this tutorial, so we’ll be turning off its visibility.

3. Turn off visualization of the sphere by clicking on the eye in Stage-> World-> Sphere.

ParticleTutSphereViz02

Your source is invisible and you’ll only see particles emitted in space. Your particle should look something like this:

ParticleTutPtStep

Save your file.

2b) Change the Sprite to a Mesh

In this section we’ll switch out the sprite with a mesh.

Video 2b: Change the sprite to a mesh

Add/Import a Mesh to replace the sprite.

In the particle system you can switch out the default particle with any kind of mesh.

You can either import a mesh instance or create a mesh in the create menu.

For this tutorial, we’ll be importing a two usda meshes with attached materials.

The particle extension has a number of source assets we’ll be using for this tutorial. First thing we need to do is get a couple sphere meshes with materials to import.

1. in the Content Browser navigate to where your unzipped particle_system_tutorial_files folder is located.

2. Click Select fx_sphere_01 and fx_sphere_05.

3. Drag and drop the two meshes onto the Stage -> prototype folder.

ParticleTutPtMesh

The imported meshes are at 0,0,0 coordinate space. We don’t need them visible for the following steps so turn off their visibility in the stage by clicking on the prototypes eye icon.

ParticleTutPtMeshVis

Delete the sprite and add the imported meshes in Omnigraph

Next we need to switch out the sprite with the imported meshes in Omnigraph.

Go to Stage -> World -> prototypes and delete the Sprite.

ParticleTutPtDelete

Omnigraph Setup

Go to OmniGraph and click Editor.

ParticleTutOmniEditor01

The setup for the particle system is streamlined in Omnigraph for ease of use. Here you’ll see all of the essential nodes for creating particle systems are displayed.

ParticleTutPTOmniEd01

Add the meshes to Omnigraph

1. Go to Stage-> World-> prototype-> fx_sphere01 and select VFXSphere01.

2. Drag and drop VFXSphere01 Inside the world/particle system block.

3. Do the same for VFXSphere05.

ParticleTutPTAddMeshOmni01

Connect the meshes in Omnigraph

1. Select the top output on the VFXSphere01 node and drag it to output -> prototypes input connector as shown.

2. Control select the top output on the VFXSphere05 node and drag it to output -> prototypes input connector as shown.

Note

If the Output node isn’t an visible, you can drag and drop it into Omnigraph from the Stage as you did with the meshes. It will be connected.

ParticleTutPtOmniConnect01

Close the Omnigraph Editor.

Clean up the Output node

Now that have the emitter set up we should clean up the output node. We deleted the sprite, so we should remove its reference.

Note

You may need to save and reopen the file to get the following steps to work.

1. Go to Stage -> World -> Output -> Raw USD Properties go to prototypes.

2. Click the minus button on world/sprite to remove the sprite mesh reference.

ParticleTutPtRemoveRef01

After you delete the sprite from that stack, the first sphere will appear and be simulating mesh spheres. Next we’ll reference both spheres in the emitter.

Using Index Object

Right now no simulation is visible. That’s ok! We’ve deleted the sprite so the particle doesn’t know what to display. We’ve connected the meshes now we need to tell the particle system to use the meshes we’ve added. We do that with object index.

Index Object Emitter Tweaks

Now that we can see the simulation again lets make a couple changes in the emitter to view both of the referenced meshes and change the behavior.

Go to Stage-> World-> particle_system-> emitter and change the following settings in Property.

Direction, Speed and Mass-> Emit Along Axis 1

Direction, Speed and Mass-> Emit Away From Center 0.7

Direction, Speed and Mass-> Speed 200

Direction, Speed and Mass-> Speed Random 150

Lifespan-> Lifespan 3

Display-> Random Indexed Object 3

The indexed object number displays the different references here. Random object index will display a random reference per spawn.

ParticleTutPtEmit01

Then to Stage-> World-> Sphere and change the rotate in Z to 180.

ParticleTutPtSphere180

Now we have our particle set up, now we can add collision.

2c) Using Colliders

The particle system allows the user to collide any particle against a referenced collision mesh.

Video 2c: colliders

Add collision geometry

1. in the Content Browser navigate to where your unzipped particle_system_tutorial_files folder is located.

2. Select stage.usda

3. Drag and drop the mesh onto the Stage window.

The stage is clipping into our emitter so move it down by -50 in the Y axis with the transform gizmo.

ParticleTutPtStage

Create a Collider in Omnigraph

Next go to OmniGraph and click Editor.

1. Inside the World/particle_system block hit tab.

2. Search for collider in the search window.

3. Click on particle_system_collider to create the node.

ParticleTutCol

4. Connect the Collider node before the solver as shown.

ParticleTutPtColConnect

Now that we have the node we need to connect the stage geometry. We could connect it here, but I want to show you an alternative method of connecting the meshes.

Close the Omnigraph Editor.

Connect the Stage geometry to the Collider node

Here we’ll connect the stage meshes inside the collider node. Instead of connecting in Omnigraph I want to show another way to connect multiple meshes to the particle system.

1. Go to Stage-> World-> particle system and select particle_system_collider.

2. In Property go to Collision Primitive -> Primitive and click Add Target

ParticleTutPtColTgt

A Select Targets window will appear.

1. Navigate to World stage and Control Left Click Cube, Cube_01 and Cube 02.

2. Left Click Add.

ParticleTutPtColTgt02

Now the spheres will be colliding with the stage geometry.

Collider node tweaks

Now that the stage and the particles are colliding lets change a couple settings in the collider node.

With the particle_system_collider node selected change the following setting in Property:

Collision Settings-> Enable Self Collisions Toggle off

Collision Settings-> Bounce 1

Collision Settings-> Friction 0

ParticleTutPtColTgt03

In this tutorial you created a point instancer, added instanced meshes, randomized them and had them collide against imported meshes. This concludes this tutorial.

Tutorial 3: Create a Particle System trailing a Particle Source

In this tutorial, we’ll be creating a particle system that follows another particle system like a trail. Lets get started.

3a) Create a trailing particle system

In this section we’ll be creating two particle systems. One as a source that the trail particles will follow and the other as a trail itself using a particle visualizer.

Video: Create a Source and trail particle system and add a noise field

Create a basic particle system source

First, create a source for the particle system emitter.

1. Go to Create->Shapes-> and select Sphere

ParticleTutCreateSource01

For this example, we’ll be using particle visualizers.

2. With the sphere selected, go to Create-> Particle-> and select with Particle Visualizer.

ParticleTutVisualizer01

Now you have a particle visualizer using the sphere as a source.

3. Turn off visualization of the sphere by clicking on the eye in Stage-> World-> Sphere.

ParticleTutSphereViz01

Your source is invisible and you’ll only see particles emitted in space. Your particle should look something like this:

ParticleTutViz02

Rename the source particle system

To keep things organized, lets rename the lead particle system.

1. Go to Stage -> World -> and double click on particle_system.

2. Type particle_system_source and hit enter. The particle system has been renamed.

ParticleTutrename02

Create a trail particle system

Now that we have a particle system to use as a source for a trail, we can now easily create the second particle system that follows the particles from particle_system_source.

1. Go to Stage -> World -> and open the particle_system_source folder.

2. Left Click select solver.

ParticleTrailSolver01

3. With the solver selected, go to Create -> Particle System and select with Particle Visualizer as above.

Now you have two particle systems connected. The particle_system particles are following the particle_system_source particles.

If you open Omnigraph, you can see how its connected, by opening OmniGraph -> Editor…

ParticleTrailTrailOmni01

Lets rename the particle_system folder to particle_system_trail for organization.

1. Go to Stage -> World -> and double click on particle_system.

2. Type particle_system_trail and hit enter. The particle system has been renamed.

ParticleTrailRename01

3b) Particle System Source Tweaks

We’re going to add a couple tweaks to the particle system source.

Go to Stage -> World -> particle_system_source . Keep the default settings and change the following parameters in the Emitter node Property tab.

Direction, Speed and Mass -> Random Speed: 50

Lifespan -> Lifespan Random: .5

Display -> Generate Color and Opacity: toggle on

Display -> Color: 0, 0, 0

Display -> Random Color: 1,1,1

The trail setting of color 1 allows you to inherit the color of the source particle.

By making the colors all random, each emission set will have the same colors.

ParticleSourceEmitTweaks01

3c) Particle System Trail Tweaks

Now that we’ve changed the source, we tweak the source lets make a couple changes to the particle system trail

Go to Stage -> World -> particle_system_trail . Keep the default settings and change the following parameters in the Emitter node Property tab.

Spawn Rate -> Spawn Rate Per Second: 1000

Direction, Speed and Mass -> Random Direction: .2, .2, .2

Direction, Speed and Mass -> Speed: 0

Lifespan -> Lifespan Random: .5

Emit from Particles -> velocity: .2

Emit from Particles -> Color: 1

Emit from Particles allows you to alter the trail of the emitter. You must have the particles as a source for your trail emissions for the following parameters to function.

Emit From Particles

Description

Random Position

Multiplier: Randomize source particle positions.

Velocity

Multiplier: Inherit Velocity when emitting from particles.

Mass

Multiplier: Inherit Mass when emitting from particles.

Scale

Multiplier: Inherit Scale when emitting from particles.

Radius

Multiplier: Inherit Radius when emitting from particles.

Color

Multiplier: Inherit Color when emitting from particles.

Opacity

Multiplier: Inherit Opacity when emitting from particles.

Display -> Generate Color and Opacity: toggle on

ParticleTrailEmitTweaks01

3d) Particle System Source: Add A Noise Field

Now we have the particles all moving out in a more or less even manner. Lets add in a noise field to make it more visually interesting.

Create a source for your Direction field

To use a field you need to give it its own source to act as a volume of influence. Using sources as a volume for fields is a constant no matter what field you use.

1. Go to Create->Shapes-> and select Sphere

ParticleTutCreateSource01

This will create Sphere_01.

2. Select the sphere and make the following changes in Property:

Geometry -> Radius 1500

then turn visibility off by toggling the Eye icon in Stage -> World -> Sphere_01

1. Go to Create->Shapes-> and select Sphere

ParticleTutFieldSrce01

Omnigraph Setup

Go to OmniGraph and click Editor.

ParticleTutOmniEditor01

The setup for the particle system is streamlined in Omnigraph for ease of use. Here you’ll see all of the essential nodes for creating particle systems are displayed.

ParticleTrailOmniNoise01

1. Inside the World/particle_system_source box hit the TAB key.

2. Inside the search window do a search for noise.

3. Click on the particle system: noise force field entry and an noise force field will appear.

ParticleTutGrOmniField02

4. Connect particle system: noise force field to the graph as shown below.

Note

Fields must be connected before the solver.

ParticleTutNoiseFieldConnect01

The noise field will not be in effect until you the Sphere_01 source to the field.

1. Go to Stage -> World and Select and hold Sphere_01

2. Drag and drop Sphere_01 into the Omnigraph Editor inside the world/particle_system_source box as shown below.

ParticleTutNoiseDD01

Now connect Sphere_01 to the particle_system_direction_field to the inputs:prim as shown below.

ParticleTutNoiseSourceConnect01

Now the particles should be moving in a in a more noisy pattern.

Close the Omnigraph Editor.

Noise Field Tweaks

Now we have the noise field hooked up to the particle system. Let’s change some parameters in the Noise force node.

1. Select Stage -> World -> particle system source -> particle system noise force field.

2. Change the following parameters in Property:

Direction Field Settings -> Frequency 1.25

Direction Field Settings -> Magnitude 4

ParticleTutNoiseMods01

In this tutorial you created a particle system that used a particle source to drive a particle trail, changed some parameters and added a noise field. this concludes this tutorial.

Tutorial 4: Creating a Particle System with Flow

Flow emitters and particle systems

With a particle system you can spawn particles that emit flow. This tutorial goes over the steps you need to take to set up a particle system that runs flow.

Video Tutorial: Particles and Flow

Create a basic particle system

First, create a source for the particle system emitter.

1. Go to Create->Shapes-> and select Sphere

ParticleTutCreateSource01

For this example, we don’t want to have a particle visual so we’ll select the particle visualizer. We’ll go over how to hide the particles in a later step.

Note

If you want the particle to have a display (example: a particle spark) select the geometry replicator.

2. With the sphere selected, go to Create-> Particle-> and select with Particle Visualizer.

ParticleTutVisualizer01

Now you have a particle visualizer using the sphere as a source.

3. Turn off visualization of the sphere by clicking on the eye in Stage-> World-> Sphere.

ParticleTutSphereViz01

Your source is invisible and you’ll only see particles emitted in space. Your particle should look something like this:

ParticleTutViz02

Create a Flow preset

Next we need to create a flow simulation that the particles can drive.

1. With World selected go to Create-> Flow -> Preset and select Add Fire Effect

ParticleTutPresetFlow01

2. This will create a flow simulation with a flowEmitterSphere. You will not be able to see the flow simulation unless you click play. To enable the flow emitter to play at all times go to Stage -> World -> flowSimulate and go to Property and select forceSimulate.

ParticleTutFlowSim01

Now you have the flow simulate and the particle system set up. Next we need to link the two simulations together and create a Flow emitter.

ParticleTutVisualFlow01

Create a flow Cloud point emitter

Now we’re going to create a flow cloud point emitter and a flow emitter.

1. First go to the Stage and select World-> Particle System-> Solver

2. Then control click World-> flow Simulate

ParticleTutSelectOrder1

3. With both of selected go to Create-> Particles and select point cloud flow emitter.

ParticleTutPtCloudFlow01

A flow_emitter will be created in the particle system and a flow emitter point will be created in World.

The flow emitter serves as a bridge between the particle and the flow emitter point.

The flow emitter point carries some of the parameters that are normally in the flow emitter sphere.

If flow emissions are not following the particles check the layers in flow emitter point. All layers must be the same to work.

Delete the flow emitter sphere in Stage-> World -> flowEmitterSphere, unless you’d like to keep it.

Before we start tweaking the particle and flow emitter. Lets take a look at the setup in Omnigraph.

Omnigraph Setup

Go to OmniGraph and click Editor.

ParticleTutOmniEditor01

The setup for the particle system is streamlined in Omnigraph for ease of use.

ParticleTutOmniFlow01

From here it’s up to you to tweak as you want. We’ll go through a couple tweaks in the next step.

Emitter Tweaks

First we’ll turn off the visualization for the particle.

1. To turn off the particle visualizer output display go to Stage-> World-> particle system and select Output.

2. In Property-> parameters click on the Active Toggle to disable the visualization.

ParticleTutVisOff01

Next we’ll change the behavior of the particles and source.

Source Changes

Go to the sphere and rotate its axis 1. Go to Stage-> World and select the sphere

2. In Property go to Rotate and rotate the z axis to 90.

ParticleTutSphereRot01

This rotates the source up for the next step.

Emitter Changes: We’ll be changing the way the particles are emitted from the source.

1. Go to Stage-> world -> Particle system and select the emitter. In the emitter change the following parameters:

Direction, Speed and Mass-> Emit Along Axis 1

Direction, Speed and Mass -> Emit Away From Center .25

Direction, Speed and Mass -> Speed 200

Lifespan -> Lifespan .25

ParticleTutEmitTweaks01

Flow Emission Changes: Next we’ll add more fuel to the emission:

1. Go to Stage-> World -> and select flowEmitterPoint

2. Go to Property and change the following parameters:

Flow-> Fuel: 50

Flow-> coupleRateDivergence: 2

Flow-> Divergence: 5000

ParticleTutFlowEmitTweaks01

In this tutorial you created a particle visualizer, and connected flow emission to it. This concludes this tutorial.

ParticleTutFin02

Tutorial 5: Create a particle system in Omnigraph

In this tutorial you’ll be setting up a particle system from scratch in Omnigraph. We’ll be creating a geometry replicator.

Create a basic particle system in Omnigraph

Video 1: Create a Geometry Replicator in Omnigraph

Create a Source for the Geometry Replicator

First, create a source that for the particle system emitter.

1. Go to Create->Shapes-> and select Sphere

ParticleTutCreateSource01

Now that we have our particle system source we need to get it into Omnigraph.

2. Go to OmniGraph and click Editor.

ParticleTutOmniEditor01

3. Drag and Drop the Sphere into Omnigraph. Go to Stage -> World and Left Click Drag the Sphere into the Omnigraph window. the Sphere node will appear in Omnigraph.

ParticleTut5DragDrop01

We don’t need to see the source for this tutorial, so we’ll be turning off its visibility.

4. Turn off visualization of the sphere by clicking on the eye in Stage-> World -> Sphere.

ParticleTutSphereViz01

Create a Subgraph

Now that we have our source hidden we can start making the nodes to create a particle emitter.

To keep the nodes visually organized in Omnigraph the first thing we’ll need to create is a subgraph.

A subgraph is a scope that can contain nodes. Each subgraph can be scheduled and evaluated in a different way.

Omnigraph offers push pull and dirty pull evaluation. In the future more evaluations will come online.

Visually in Omnigraph the subgraph creates a box around the nodes inside the emitter.

You can create a subgraph node two different ways

1. Go to Create -> Particles and select subgraph.

or

2. In the Omnigraph Editor window, right click select Add node -> Create subgraph.

The Subgraph node is created.

ParticleTut5Subgraph01

Create a Solver node

Next we need to create a solver node. The solver node implements numerical integration of the underlying particles data at each simulation step.

To add a solver in Omnigraph

1. Inside the subgraph, right click and go to Add node -> omni.particle.system.core select particle system: solver.

ParticleTut5Solver01

A Solver node will create inside the subgraph.

2. You’ll need the state node for a later step so go to Stage -> World and Left Click Drag the state into the Omnigraph window. the State node will appear connected to the particle_system_solver in Omnigraph.

ParticleTut5DragState01

Create and connect an emitter node

Next we need to create an emitter node. The emitter node controls the behavior of the particles.

To add an emitter node in Omnigraph

1. Inside the subgraph, right click and go to Add node -> omni.particle.system.core select particle system: emitter.

ParticleTut5MakeEmitter01

An Emitter node will be created inside the subgraph.

2. Connect the nodes as shown in the graphic below by left click dragging from one point handle to another.

ParticleTut5ConnectEmitter01

3. Connect the Sphere source as shown in the graphic below. The sphere is your particle source. The particles will emit from the sphere.

ParticleTut5ConnectSphere01

Create and Connect a Geometry Replicator node

Now we need decide what type of emission we want to do. For purposes of this tutorial we’ll be making a Geometry Replicator.

To add the Geometry Replicator node in Omnigraph:

1. Inside the subgraph, right click and go to Add node -> omni.particle.system.core select particle system: geometry replicator.

ParticleTut5AddGR01

A geometry Replicator node will be created inside the subgraph.

2. Connect the geometry replicator as shown in the graphic below by left click dragging from one point handle to another.

ParticleTut5GRConnect01

Create and Connect a Sprite to the Geometry Replicator

From here we need to decide what we want to emit. For purposes of this tutorial we’ll be emitting a camera facing sprite.

To add a sprite

1. Go to Create -> Particles and select Sprite.

ParticleTut5MakeSprite01

A sprite node will be added to Omnigraph

2. Connect the sprite node as shown in the graphic below by left click dragging from one point handle to another.

ParticleTut5ConnectSprite01

Create and Connect a Mesh node for output

We have almost all the nodes in place. Now we need to add a mesh node for output.

The mesh node is the output representing the result of the particle simulation on USD level that gets rendered on screen.

To add a mesh node

1. Go to Create -> Particles and select Mesh.

ParticleTut5AddMesh01

2. A mesh node will appear in the Stage window. If at any point you can’t see the node, there’s a chance its off screen.

To easily view it Left click drag and drop the mesh node outside of the subgraph as shown.

ParticleTut5DDMesh01

A mesh node will be added to Omnigraph

3. Connect the mesh node as shown in the graphic below by left click dragging from one point handle to another.

ParticleTut5ConnectMesh01

Now you have particles emitting from the Sphere.

Close the Omnigraph editor.

Add a translucent material to use with the particles

Now that we have the particles emitting from the sphere we need to add a material to them. The particle system extension comes with a translucent material to use with particles.

To add a material:

1. Go to Create -> Particles and select particles material.

ParticleTut5AddMat01

Now there is a translucent material inside the Looks folder. Next we need to assign the material to the particle system.

2. To assign the material go to Stage -> World and select mesh

3. in Property -> Materials on selected models use the dropdown to select the /World/looks/translucent_particles material.

The material is now assigned to the particle system.

ParticleTut5AssignMat01

From here you can add a texture and change the particle system whatever way you want.

In this tutorial we created a Geometry replicator particle system from scratch in Omnigraph

Bonus: Particle System setup in Omnigraph graphics

Set up a geometry replicator in Omnigraph

if you want use a geometry replicator, your setup in Omnigraph should look like the below graphic:

ParticleBonusGRSetup01

Set up a point instancer in Omnigraph

if you want use a point instancer, your setup in Omnigraph should look like the below graphic

ParticleBonusPISetup01

Set up a Particle visualizer in Omnigraph

if you want use a particle visualizer, your setup in Omnigraph should look like the below graphic

ParticleBonusPVSetup01

Set up a particle that uses a particle as a source in Omnigraph

if you want use a particle system as a source in Omnigraph, your setup will depend on the type of particle system you’re using, but the basic setup with two geometry replicators looks like this.

ParticleBonusTrailSetup01

Set up a flow that uses particles as a source

You can use any of the particle types to set this up but the important nodes are at the end to link the particle system to the flow simulation.

This setup is using the Particle visualizer as a source

You will need to have a flow emission in the stage otherwise this will not work.

ParticleBonusFlowSetup01

Release Notes

2020.2

Known Issues