VectorField

Overview

image
The vector-field sampler allows you to sample vector fields (procedural curl-noise fields, or custom vector-fields defined in a file), and can be used for example to advect particles.
It can be used either through the vectorfield sampler script functions, or using the template core-library nodes, such as turbulence.sample.

Property

Type

Description

GlobalScale

float

Overall vector-field scale, scales both the Strength and the Wavelength properties

Strength

float

Vector-field strength, higher values produce larger forces

DataSource

enum

Specifies where the sampler fetches the vector-field data

  • Procedural: vector-field is defined by the procedural curl-noise turbulence parameters

  • External: sampler will load an external vector-field file (.fga)

VectorFieldResource

string

Path to the file containing the vector-field (.fga)

WrapSide

bool

If set, the vector-field will wrap/repeat on its side axis, otherwise, it will be clamped

WrapVertical

bool

If set, the vector-field will wrap/repeat on its vertical axis, otherwise, it will be clamped

WrapDepth

bool

If set, the vector-field will wrap/repeat on its depth axis, otherwise, it will be clamped

WrapTime

bool

If set, the vector-field will wrap/repeat on its time axis, otherwise, it will be clamped

Filtering

enum

  • Point: Fastest interpolator. lowest quality. No filtering / interpolation

  • Trilinear: Interpolates between the 8 neighboring cells around the sampling point in 3D space

  • Quadrilinear: Interpolates between the 16 neighboring cells around the sampling point in 4D space

Wavelength

float

Turbulence scale, the bigger the number, the larger the vortices

Octaves

int

Number of noise layers blended together to produce the final noise

Lacunarity

float

Scale (zoom) factor between each noise octave

Gain

float

Scale (intensity) factor between each noise octave

Interpolator

enum

  • Linear: Fastest interpolator. lowest quality. Turbulence abruptly changes values

  • Cubic: Medium-quality interpolator. Only applicable to 'Procedural' vector-fields

  • Quintic: Best-quality interpolator. produces smooth continuous turbulence. slower than Cubic. Only applicable to 'Procedural' vector-fields

TimeScale

float

Speed of the animated turbulence. 0 means no animation (TimeBase is still used), 1 means the animation loops every 1 second, 0.1 means the animation moves slower, and loops every 10 seconds.

TimeBase

float

Time offset into the animation

TimeRandomVariation

float

Allows individual turbulence vortices to animate at a different rate from one another. this is used as a coefficient to 'TimeScale'.

  • 0.0 means the strict TimeScale is used.

  • 0.5 means the timescale will be randomized between (TimeScale - 0.5 * TimeScale) and (TimeScale + 0.5 * TimeScale)

FlowFactor

float

Allows the user to smoothly choose an intermediate representation of the flow, between a divergence-free, and curl-free flow.

DivergenceFactor

float

Allows the user to smoothly choose an intermediate representation of the flow, between a divergence-free, and curl-free flow.

InitialSeed

int

Initial seed used to randomize the noise

FastFakeFlow

bool

For extra speed, check this. However, the vectorfield quality will be pretty poor.

GainMultiplier

float

Multiplier applied to gain. WARNING: Setting this above 1.0 will can produce unstable noise. Prefer tweaking gain in its [0, 1] range and not using GainMultiplier

Output pins

DataCurve

data

The curve data that can be plugged in the CurveSample or CurveOverTime nodes.

+ all sampler properties