Nodes
AABB Max
Returns the maximum value in each dimension of the axis-aligned bounding box containing the mesh.
AABB Min
Returns the minimum value in each dimension of the axis-aligned bounding box containing the mesh.
ACos
Returns the arccosine of the value in radians.
ASin
Returns the arcsine of the value in radians.
ATan
Returns the arctangent of the value in radians.
ATan2
Returns the angle (in radians) formed by the horizontal offset X and vertical offset Y.
Abs
Returns the absolute (positive) value of the input.
Add
Returns the sum of the input values.
Add One
Returns 1 added to the value.
And
Returns 1 if both input values are non-zero, otherwise returns 0.
Blend
Combines two input colors using one of several Blend modes.
Bool Parameter
Adds a boolean parameter to the material.
Bool Value
Returns a predefined boolean value.
Camera Aspect
Aspect ratio (width / height) of the camera.
Camera FOV
Field of view of the camera in degrees.
Camera Facing Ratio
Ratio, from 0 to 1, that this surface is facing the camera.
Camera Far
Far plane distance of the camera.
Camera Forward
Direction vector that the camera is facing.
Camera Near
Near plane distance of the camera.
Camera Position
World position of the camera.
Camera Right
Camera's right facing direction vector.
Camera Up
Camera's up facing direction vector.
Ceil
Returns the input value rounded up to the next largest whole number.
Clamp
Clamps the value within a minimum and maximum range.
Color Parameter
Adds a color parameter to the material.
Color Value
Returns a predefined color value.
Combine Normals
Averages multiple normal vectors using input strengths as weights.
Conditional
Returns the False input if the passed in value is 0, otherwise returns the True input.
Construct Matrix
Constructs a new matrix using the provided columns.
Construct Vector
Combines multiple input values into a single output value.
Cos
Returns the cosine of the Radians input angle.
Cross
Returns the cross product of the input vectors.
Custom Code
Write GLSL shader functions directly in the graph system.
Custom Code
Write GLSL shader functions directly in a VFX Spawn container.
Custom Code
Write GLSL shader functions directly in a VFX Update container.
Custom Code Global
Returns a Global variable as defined by the user on Custom Code Nodes. Globals can be used to inject portions of the graph system into a Code Node.
Custom Pixel Code
Write GLSL shader functions directly in a VFX Output container for a pixel shader.
Custom Vertex Attribute
Returns the value of a custom vertex attribute of the current surface. Custom vertex attributes can be added to meshes using the MeshBuilder script API.
Custom Vertex Code
Write GLSL shader functions directly in a VFX Output container for a vertex shader.
DDX
Computes the partial derivative of the neighboring horizontal pixels in screen space.
DDY
The partial derivative of vertical pixels.
Degrees
Converts a number from radians to degrees.
Delta Time
Time elapsed since last frame.
Depth
Returns the camera depth of the surface
Discard
Discard the current pixel if the given conditions are met.
Distance
Returns the distance between the two input points.
Divide
Returns A divided by B.
Dot Product
Returns the dot product of the two input vectors.
DropList Parameter
Adds a dropdown list parameter to the material.
Droplist Import
Exposes a dropdown list parameter on the sub-graph. This value can be modified through the Graph Properties panel.
Elapsed Time
Total time elapsed.
Environment Sample
Returns the color of the environment map light given a direction and mipmap level (LOD).
Exp
Returns the natural exponentiation of the input value.
Exp2
Returns 2 raised to the power of the input value.
FWidth
The absolute sum of DDX and DDY.
FaceForward
Flips the supplied surface normal to face in the opposite direction I.
Faceted Normal
Returns flat normals to give a polygonal, faceted look. Plug this into the Override node (after PBR) to achieve the effect.
Flipbook Coords
Converts coordinates to match frames on a flipbook sheet.
Flipbook Sample
Samples color from an animated flipbook sheet texture.
Float Array Object Export
Exports a Float Array object to outside of the sub-graph.
Float Array Object Import
Imports a Float Array Object into the sub-graph.
Float Array Object Parameter
Adds a float array parameter to the material.
Float Array Object Value
Creates a predefined Float Array, and returns it as an object so it can be sampled or passed in to a sub-graph.
Float Array Parameter
Adds a float array parameter to the material and samples a value from it.
Float Array Value
Creates a static Float Array value, and samples and returns the array value at the specified index.
Float Export
Exports a float value to outside of the sub-graph.
Float Import
Imports a float value into the sub-graph.
Float Parameter
Adds a float parameter to the material.
Float Value
Returns a predefined float value.
Floor
Returns the input value rounded down to the next smallest whole number.
Flow Map Sample
Samples a texture with distorted coordinates from a given vector field, also known as a flow map.
Fluctuate
Automatically animates a value over time, ping-ponging between start and end values.
Fract
Returns the fractional part of the input value.
Get Array Size
Returns the number of elements in the passed in Float Array object.
Get Object Transform
Returns transform values of the scene object.
Gradient
Returns the value of a linearly interpolated procedural gradient. The sample position is a 0-1 value given by the Ratio input.
HSV to RGB
Converts a color from HSV (Hue, Saturation, Value) to RGB (Red, Green, Blue).
Hue to RGB
Converts a hue value to an RGB (Red, Green, Blue) color.
If / else
Returns the first Value where the matching Condition is true (not 0), or returns Default if all are 0.
Instance Count
Returns the material's "Instance Count" parameter, which controls how many instances of the mesh will be drawn each time the material is rendered.
Instance ID
Instance ID of the instance being drawn. Used with the material's "Instance Count" property.
Instance Ratio
Ratio of the current Instance ID compared to the total Instance Count. Useful when the material's "Instance Count" is greater than 1, which causes multiple instances of the mesh to be drawn.
Int Parameter
Adds an integer parameter to the material.
Int Value
Returns a predefined integer value.
Interpolate
Shifts data from the vertex shader to the pixel shader, which can save computation time.
Inverse Sqrt
Returns 1 divided by the square root of the input value.
Is All
Returns 1 if all elements of the input vector are non-zero, returns 0 otherwise.
Is Any
Returns 1 if any element of the input vector is non-zero, otherwise returns 0.
Is Equal
Returns 1 if A == B, returns 0 otherwise. This is calculated separately for each channel.
Is Fallback Mode
Provides a way to bypass advanced shader features and effects which can improve stability and performance on a wide variety of devices.
Is Front Facing
Returns 1 if the surface is front facing, 0 if back facing.
Is Greater
Returns 1 if A > B, returns 0 otherwise. This is calculated separately for each channel.
Is Greater or Equal
Returns 1 if A >= B, returns 0 otherwise. This is calculated separately for each channel.
Is Less
Returns 1 if A < B, returns 0 otherwise. This is calculated separately for each channel.
Is Less or Equal
Returns 1 if A <= B, returns 0 otherwise. This is calculated separately for each channel.
Is Not Equal
Returns 1 if A != B, returns 0 otherwise. This is calculated separately for each channel.
Kill Particle
When the Condition value is greater than 0.0, this sets the particle life to 0 and flags it as killed, removing it from the simulation and render.
LUT 3D
Converts the color using a lookup table texture.
Length
Returns the length of the vector.
Light Color
When used with a Loop (Lights) node, returns the color value of the current Light.
Light Direction
When used with a Loop (Lights) node, returns the world direction vector the current Light is facing.
Light Intensity
When used with a Loop (Lights) node, returns the intensity value of the current Light.
Light Position
When used with a Loop (Lights) node, returns the world position of the current Light.
Linear Tone Mapping
Applies a tone mapping curve that is mostly linear, but trails off in the shoulder region to avoid abrupt highlight clipping. It is applied automatically when PBR is used.
Linear to sRGB
Converts from linear colorspace to sRGB colorspace.
Log
Returns the natural logarithm of the input value.
Log10
Returns the base 10 logarithm of the input value.
Log2
Returns the base 2 logarithm of the input value.
Loop ( 4x )
Creates a loop that executes multiple times and returns a single result.
Loop ( Dynamic )
Creates a dynamically sized loop that executes multiple times and returns a single result.
Loop ( Lights )
Creates a loop that executes once for each Light affecting the object and returns a single result.
Loop ( Triplanar UV )
Projects a texture from three different axes and blends the samples based on the surface normal. This method doesn't rely on UVs so it can be applied to any mesh. This node is used in conjunction with the Triplanar UV Coord node.
Loop Count
When used with a Loop node, returns the total iteration count for the matching Loop.
Loop Iteration
When used with a Loop node, returns the current iteration number for the matching loop.
Loop Ratio
When used with a Loop node, returns the ratio of the current iteration compared to total iterations.
Luminance
Outputs the luminance (grayscale) value of the color.
Matrix
Outputs a transformation matrix from the engine, based on the selected Type.
Matrix Export
Exports a matrix to outside of the sub-graph.
Matrix Import
Imports a matrix into the sub-graph.
Matrix Parameter
Adds a matrix parameter to the material.
Matrix Transpose
Returns the transpose of the input matrix.
Matrix Value
Returns a predefined matrix value that can be used with other nodes.
Max
Returns the greatest value among all inputs.
Min
Returns the lowest value among all inputs.
Mix
Returns a value interpolated between A and B.
Mixer
Highly configurable node that can mix many types of input and output.
Mod
Performs a modulo operation.
Modify Attribute
Overwrites, adds, or multiplies particle attributes depending on the Operation selected. This is the primary way of manipulating particle data.
Multiply
Multiplies all inputs and returns the product.
Negate
Multiples a value by -1.
Noise ( Simplex )
Generates a random value using simplex noise.
Normalize
Returns the input vector normalized so that its length equals 1.
Not
Returns 1 if the value is 0, otherwise returns 0. This is calculated separately for each channel.
Offset Coords
Applies a horizontal and vertical offset to coordinates.
One Minus
Returns the value subtracted from 1.
Or
Returns 1 if either input value is non-zero, otherwise returns 0.
Output Quad
The rendering stage of the particle simulation. Particle data flows into here to draw an instanced quad to the screen. This stage is effectively a Graph Material with access to per-particle data.
Override
Overrides the surface information of all nodes connected through its Input port.
PBR ( Lighting )
Uses Physically Based Rendering (PBR) to calculate a lighting based color output.
PI
Various version of the PI constant
Pack
Packs one or more float values into an 8-bit vector. This is meant to be used with the Unpack node, which can unpack the vector back to the original values. Useful for storing high precision values in a Render Target.
Parallax Coords
Offsets coordinates based on the viewing angle to simulate the texture being at a certain depth. Can be used with Loop node to sample parallax at multiple depths, and simulate effects like ice cracks or shell based fur.
Particle ( Get Attribute )
Gets the value of a particle attribute. Use the Attribute drop-down menu to choose what attribute to return.
Particle ( Get Setting )
Retrieves various particle settings that are either set or derived from the Spawn Particle container.
Particle Random
Returns a unique, per-particle random value between Min and Max, extremely useful to get variation in the particle system.
Pixelize Coords
Rounds coordinates into chunks, creating a pixelization effect.
Posterize
Rounds the input value into several possible results, creating a posterization effect.
Pow
Raises a value to an exponential power.
Preview
Displays the preview of the graph output up to this node.
Primitive Count
Outputs the total number of primitives in the mesh being rendered.
RGB to HSV
Converts a color from RGB (Red, Green, Blue) to HSV (Hue, Saturation, Value).
Radians
Converts a number from degrees to radians.
Random Noise
Returns a random value based on the seed.
ReColor
Separately recolors the R,G,B channels of the input.
Reciprocal
Returns the result of dividing 1 by the value.
Reflect
Returns the I vector reflected over the N normal.
Reflection Vector
Returns the view vector reflected over the surface normal.
Refract
Refracts a vector through a normal.
Refraction Vector
Returns the view vector refracted through the surface.
Remap
Remaps a value from the input range to the output range.
Rim
Returns the ratio between the world normal and the direction to the camera.
Rotate Coords
Rotates coordinates around a center point.
Round
Rounds the value to the nearest whole number.
SRGB to Linear
Converts from sRGB colorspace to linear colorspace.
Sample Float Array
Samples a Float Array Object at a specific index and returns the value.
Saturation
Adjusts saturation on the color.
Scale Coords
Scales coordinates around a center point.
Scale and Offset
Scales and then offsets the value.
Scatter Coords
Moves the coordinates by a random amount, creating a scatter effect.
Screen UV Coord
Screen coordinates of the current surface.
Scroll Coords
Scrolls coordinates over time.
Sepia
Applies a sepia tone to the color.
Set Color ( Pixel )
Set final particle color output of the fragment shader.
Set Depth ( Pixel )
Writes a custom value to the depth buffer.
Set Vertex Normal
Set the normal direction vector of the quad surface.
Set Vertex Position
Set the position of the quad surface.
Set Vertex Tangent
Set the tangent direction vector of the quad surface.
Shadow Sample
For Mesh Visuals with the Shadow Receiver option, samples the shadow color being received at this pixel. The default value is white (1,1,1), which means no shadow is being received.
Sign
Returns the sign of the value.
Sin
Returns the sine of the Radians input angle.
Smoothstep
Returns a value smoothly interpolated between A and B.
Spawn Particle
The spawn stage of the particle simulation. Modify Attribute nodes added to this container are processed for a single frame the moment the particle is created.
Split Matrix
Splits a matrix into its individual columns or rows.
Split Vector
Splits a single input value into multiple configurable output values.
Sqrt
Returns the square root of the input value.
Step
Returns 1 if B is greater than A, and 0 otherwise.
Sticky Note
A sticky note node that lets you write multiline comments and descriptions anywhere in the graph. This node can be resized to any dimension. It is similar to the Comment box, but the text goes inside the node area instead of on top.
Sub-Graph
Encapsulates a group of nodes into a single node, specifically for use on particle container nodes (Spawn, Update, and Output).
Sub-Graph
Encapsulates a group of nodes into a single node with exposed imports and exports.
Subtract
Returns the result of subtracting B from A.
Subtract One
Returns 1 subtracted from the value.
Surface Bitangent
Returns the Bitangent direction vector of the surface.
Surface Color
Vertex color of the surface.
Surface Normal
Normal direction of the surface.
Surface Position
Position of the surface.
Surface Tangent
Tangent direction of the surface.
Surface UV Coord
UV 0 coordinates of the surface.
Swirl Coords
Swirls coordinates around a center point.
Switch
Returns a Case value based on the passed in Switch index.
Swizzle
Mixes the input's channels based on a formatting string. For example, "yx1" will return (input.y, input.x, 1).
Tan
Returns the tangent of the Radian input angle.
Texture 2D Array Object Parameter
Exposes a texture array parameter on the material. This value can be modified through the Inspector panel or by script at runtime.
Texture 2D Array Parameter
Exposes a texture array parameter on the material. This value can be modified through the Inspector panel or by script at runtime. In addition, this node automatically samples the texture and returns the color value.
Texture 2D Array Sample
Samples a Texture 2D Array Object at the given Array Index.
Texture 2D Object Parameter
Adds a texture object parameter to the material.
Texture 2D Parameter
Adds a texture object parameter to the material, and returns the sampled color.
Texture 2D Sample
Returns the pixel value of a Texture object at the given coordinates.
Texture 3D Object Parameter
Exposes a 3d texture object parameter on the material. This value can be modified through the Inspector panel or by script at runtime.
Texture 3D Parameter
Adds a 3D texture object parameter to the material, and returns the sampled color.
Texture 3D Sample
Returns the pixel value of a 3D Texture object at the given coordinates.
Texture Cube Object Parameter
Exposes a texture cube parameter on the material.
Texture Cube Parameter
Adds a texture cube parameter on the material and returns the sampled color at the given a 3D direction vector
Texture Cube Sample
Returns the pixel value of a Texture Cube object at the given a 3D direction vector.
Texture Object 2D Import
Imports a Texture2D value into the sub-graph.
Transform Vector
Transforms a position from one type of space to another.
Transform by Matrix
Transforms B by A using multiplication. A and B can be configured to be either vectors or matrices.
Triplanar UV Coord
Returns the projected UV coordinate when used with Loop ( Triplanar UV ).
UnPack
Unpacks an 8-bit vector into one or more float values. This is meant to be used with the Pack node, which can create a packed vector. Useful for reading high precision values stored in a Render Target.
Update Particle
The Update stage of the particle simulation. Modify Attribute nodes added to this container are processed every frame the particle exists.
Vertex ID
Outputs the vertex index of the surface.
View Vector
Direction vector from the surface position to the camera.
Voronoi Noise
Creates procedural noise using a "cellular" voronoi algorithm.
XOr
Returns 1 if exactly one of the inputs equals 0. Otherwise, returns 0.