Notch Notch Manual 1.0
 Light | Dark
Fields

iconFields

Introduction #

A field is a grid of voxels, which simulation smoke effects using a mixture of ink a motion vectors. A voxel is a 3D pixel that contains the following data:

  • “Ink” - RGBA Colour information
  • “Movement Vector” - XYZ Vector to drive the ink

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 four 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 visualise the voxels of the field controlling both their rendering and lighting.

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.

Method #

Field systems starts with either a Field 2D Root or a Field 3D Root, and are built up with Emitter and Affector nodes, before finally being rendered to the camera with a Rendering node.

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.

Affectors

Affector nodes modify the velocities of voxels in a field.

Curl Noise AffectorCurl Noise Affector

Applies curl noise velocities to a field.

Derivative FeedbackDerivative Feedback

Applies a feedback effect to a 2D field.

Field AffectorField Affector

Applies a different field's velocities to a field.

Field FeedbackField Feedback

Blends the ink of a Field over time.

Field Procedural AffectorField Procedural Affector

This node affects a field's velocities by attracting or repelling it using a procedural's surface.

Fluid 2D AffectorFluid 2D Affector

Applies a fluid simulation to a field.

Image AffectorImage Affector

Uses an image to affect a field.

Points AffectorPoints Affector

Use points to disturb a field.

Primitive AffectorPrimitive Affector

Use basic primitives to affect the field.

Turbulence AffectorTurbulence Affector

Applies turbulent velocities to a field.

Velocity AffectorVelocity Affector

Applies a directional velocity to a field.

Vortex AffectorVortex Affector

Applies a rotational velocity to a field.

Collision

TODO Section Description

3D Object Collision Affector3D Object Collision Affector

Allows fields to collide with 3D Meshes.

Primitive Collision AffectorPrimitive Collision Affector

Allows fields to collide with primitive shapes.

Procedural Collision AffectorProcedural Collision Affector

This node allows fields to collide with procedurals.

Emitters

Emitter nodes spawn the colour/Ink that can be manipulated in a field system.

3D Object Emitter3D Object Emitter

Emits ink into a field based on an input Mesh.

Field - Field EmitterField - Field Emitter

Emits ink into a field from another input field.

Image EmitterImage Emitter

Emits ink into a field from an input image.

Particle 2D EmitterParticle 2D Emitter

Emits ink into a field from particles.

Particle 3D EmitterParticle 3D Emitter

This node emits a particle system into a 3D field.

Primitive EmitterPrimitive Emitter

Emits ink into a field using a primitive shape.

Procedural EmitterProcedural Emitter

Emits ink into a field from procedurals.

Reaction-DiffusionReaction-Diffusion

Generates a reaction-diffusion simulation for a field.

Materials

TODO Section Description

Field Cloud MaterialField Cloud Material

A 3D field material suitable for smoke and cloud volumes, which shades solely based on density.

Field Flame MaterialField Flame Material

A 3D field material suitable for fire / flames.

Field Pyro MaterialField Pyro Material

A 3D field material suitable for pyro / explosions.

Rendering

Rendering nodes visualise the field or control how it is rendered and shaded.

Field 2D RendererField 2D Renderer

Renders a field system as a volume.

Field 3D RendererField 3D Renderer

Renders a 3D field via path tracing.

Render To Object SurfaceRender To Object Surface

Apply the field to the surface of geometry.

Nodes

Field CacheField Cache

Caches a Field system to disk for consistent results.

Related Videos