Operators are used to perform computation for block properties and compute custom behavior based on mathematical expressions.
Attribute Operator
The attribute operator is used to read a current attribute, or a source attribute. Current attribute values are those at the time of execution of the graph. Source attributes are not part of the simulation but instead part of the event that created these particles.
Attributes and Execution of the graph
While reading an attribute value in an operator graph, It is important to know which will be the value at a given time.
The rule is simple :
Any attribute operator will fetch the attribute value at the time of execution of the block that reads it.
Example 1:
To illustrate this, here is an example where we set the color of particles depending on the speed of the particle.
In this example, the value of the velocity attribute will be fetch during the execution of the Set color block. Set velocity (Random) will already have been executed, and the velocity values already set.
If the Set Color was placed before the Set Velocity, the value read would be the default velocity, so particles would all have the same color.
Example 2:
Now, what if a part of graph is used for two nodeblocks? Given our rule, the graph will be executed once for the first set color, then another time for the next set color. But the velocity will have been modified beforehand, so it will be zero the second time.
Parameters
Parameter operators are references to parameters created into the Blackboard panel.
You can create them in various ways:
 By dragging an already created parameter into the graph
 By selecting
Parameter (Type)
into the node creation menu (this will also create a new entry in the blackboard)  By converting an inline operator to a parameter (see Inline Operators)
The green dot next to a parameter name means it's exposed to the component level.
Inline
Inline operators are constant values or proxies you can use to store or assemble data.
You can create them through the node creation menu. Or by converting a parameter node to an inline node.
Operator Library
Operator Library contains a variety of nodes to process data. Here is a list with a brief description:
Category  Name  Description 

Bitwise  And  Performs a bitwise AND to the values 
Complement  Invert bits to the value  
Left Shift  Shift bits leftwards  
Or  Performs a bitwise OR to the values  
Right Shift  Shift bits rightwards  
XOR  Performs a bitzise XOR (Exclusive OR) to the values  
Builtin  DeltaTime  Returns the current deltaTime for the execution of the context 
LocalToWorld  Returns the LocalToWorld matrix for the gameObject that holds this Visual Effect  
MainCamera  Returns a Camera Info structure with the main camera currently used  
SystemSeed  Returns the current System Seed  
TotalTime  Returns the current effect TotalTime (time since the last Play() event)  
WorldToLocal  Returns the WorldToLocal matrix for the gameObject that holds this visual Effect  
Color  Color Luma  Returns the luminance of the input color 
HSV to RGB  Converts a HSV vector to RGB value  
RGB to HSV  Converts a RGB value to HSV vector  
Logic  And  Performs a and between two booleans 
Branch  Selects one branch or another based on a boolean condition  
Compare  Compares values and returns a boolean value corresponding to the test result.  
Nand  Performs a notand between two booleans  
Nor  Performs a notor between two booleans  
Not  Performs a not to the boolean input  
Or  Performs a or between two booleans  
Math/Arithmetic  Absolute  Returns the absolute value of the input 
Add  Adds the inputs together  
Divide  Divides the inputs together  
Fraction  Returns the fractional part of the input  
Lerp  Performs a linear interpolation between two values, using an interpolation value  
Modulo  Returns the value of A modulo B  
Multiply  Multiplies the inputs together  
OneMinus  Performs a 1X operation  
Power  Performs a A exponent B operation  
Reciprocal (1/x)  Returns the reciprocal of the value (1/x)  
Sign  Returns the sign of the value (1 if negative, 0 if null, 1 if positive)  
Smoothstep  Performs a smoothstep operation over the value  
Square Root  Returns the square root of the value  
Step  Return 0 if A < B, 1 otherwise  
Subtract  Subtracts inputs together  
Math/Clamp  Ceiling  Returns the first integer greater or equal to the value 
Clamp  Clamps the value to a Minimum and a Maximum  
Discretize  Discretizes the value to a given steps  
Floor  Returns the first integer lesser or equal to the value  
Maximum  Returns the maximum between two values  
Minimum  Returns the minimum between two values  
Round  Rounds the value to the closest integer  
Saturate  Clamps the value to the 0 .. 1 range  
Math/Constants  Epsilon  Returns the Epsilon constant (really small value) 
Pi  Returns various multiple of PI  
Math/Coordinates  Polar to Rectangular  Converts a 2D or 3D polar coordinate to 2D or 3D rectangular coordinate 
Rectangular to Polar  Converts a 2D or 3D rectangular coordinate to 2D or 3D polar coordinate  
Rectangular to Spherical  Converts a 2D or 3D rectangular coordinate to 2D or 3D spherical coordinate  
Spherical to Rectangular  Converts a 2D or 3D spherical coordinate to 2D or 3D rectangular coordinate  
Math/Geometry  Area (Circle)  Computes the area of a circle 
Distance (Line)  Computes the shortest distance of a point to a line  
Distance (Plane)  Computes the shortest distance of a point to a plane  
Distance (Sphere)  Computes the shortest distance of a point to a sphere  
Transform (Direction)  Transforms a direction vector with a matrix  
Transform (Position)  Transforms a position with a matrix  
Transform (Vector)  Transforms a vector with a matrix  
Volume (AABox)  Returns the volume of a axisaligned box  
Volume (Cone)  Returns the volume of a cone  
Volume (Cylinder)  Returns the volume of a cylinder  
Volume (Oriented Box)  Returns the volume of an oriented box  
Volume (Sphere)  Returns the volume of a sphere  
Volume (Torus)  Returns the volume of a torus  
Math/Remap  Remap  Remaps a value from an input range to an output range 
Remap [0..1]=>[1..1]  Remaps a value from 0..1 range to a 1..1 range (corresponds to a (X*2)1)  
Remap [1..1]=>[0..1]  Remaps a value from 0..1 range to a 1..1 range (corresponds to a (X*0.5)+0.5)  
Math/Trigonometry  Cosine  Returns the cosine of the input value (in radians) 
Sine  Returns the sine of the input value (in radians)  
Tangent  Returns the tangent of the input value  
Math/Vector  AppendVector  Builds multicomponent vectors from any number of scalars or vectors 
CrossProduct  Returns the cross product between two vectors  
Distance  Returns the distance between two points  
Dot Product  Returns the dot product between two vectors  
Length  Returns the length (magnitude) of a vector  
Normalize  Normalizes the input vector (Returns a vector of same direction and of length 1)  
Rotate 2D  Rotates a 2D position of a given angle around a given position  
Rotate 3D  Rotates a 3D position of a given angle, around an axis and center of rotation  
Sample Bezier  Returns an interpolated position around 4 bezier points  
Squared Distance  Returns the squared distance between two points  
Squared Length  Returns the squared length of a vector  
Swizzle  Use a swizzle pattern (eg xyz , zyxx ) to build a vector from another vector components. 

Math/Wave  Sawtooth wave  Samples a sawtooth wave of given period and amplitude bounds 
Sine wave  Samples a sine wave of given period and amplitude bounds  
Square wave  Samples a square wave of given period and amplitude bounds  
Triangle wave  Samples a triangle wave of given period and amplitude bounds  
Random  Random Number  Performs a random number computation between a min and a max value, with various seed options. 
Sampling  Sample Curve  Samples an AnimationCurve at given time and returns its value 
Sample Gradient  Samples a gradient at given position and returns its color value  
Sample Texture2D  Samples a texture 2d at given position and LOD, and returns the corresponding value  
Sample Texture3D  Samples a texture 3d at given position and LOD, and returns the corresponding value  
Sample TextureCube  Samples a cubemap at given position and LOD, and returns the corresponding value  
Sample Texture2DArray  Samples a texture 2d array at given index, position and LOD, and returns the corresponding value  
Sample TextureCubeArray  Samples a cubemap array at given index, position and LOD, and returns the corresponding value  
Time  Periodic Total Time  Returns a recurring lapse of time every N seconds, with given range. 
Totaltime (per particle)  Returns the total time with a fraction of the delta time randomized perparticle. Use this time node to randomize subframe position computations and prevent discrete stepping. 