A field is a grid of voxels. A voxel is a 3D pixel that contains the following data:
- “Ink” – RGBA Colour information
- “Movement Vector” – XYZ Vector
By holding colour / “ink” information in the voxel, we can render it, like a drop of ink suspended in a liquid or a puff of cloud. By holding a vector of movement we can simulate complex fluid-like motions through the grid.
With every newly rendered frame, the simulation of the field is stepped forward. During this simulation step, each voxel calculates it’s movement vector by understanding how the movement of the surrounding voxels are affecting it. For example, if a voxel to the left has a movement vector pushing to the right it will transfer some of its movement into the voxels to it’s right. In this way, it simulates the real world of motion in liquids or gases.
Likewise, in each step of the simulation, a portion of the ink follows the direction of the movement vector.
The way voxels are rendered can vary greatly, allowing smoke, clouds or more solid forms.
There are three primary types of field nodes:
- Emitters, these emit colour / “ink” into voxels in the grid.
- Affectors, these add movement to the “movement vector” of voxels in the grid.
- Rendering, these nodes render the voxels of the field in different ways.
You can also use the Movement Vector data from the field to affect particle systems using the Particle -> Affectors -> Field Affector node. This is very useful for fluid-like particle simulations.
Fields are generally hooked into the Root node, although they can be applied to any node – they will still appear in the scene as long as there is a path to a Root node; they will inherit the transformation values of parent nodes.
Some commonly used terms
Node Spawn Mode
The shape of the affector falloff.
|Point||The affector falls off in distance from a point.|
|Line||The affector falls off in distance from a line.|
|Plane||The affector falls off in distance from a 2D plane.|
|Curl Noise Affector||Fluid Affector||Image Affector||Primitive Affector||Turbulence Affector|
|Velocity Affector||Vortex Affector|
|3D Object Emitter||Image Emitter||Particle Emitter||Primitive Emitter|
|Field Lighting||Field Renderer||Field Shadows||Render To Object Surfaces|