NodeInterpolator
- Last UpdatedDec 07, 2023
- 3 minute read
The NodeInterpolator node is useful for defining a list of other node's fields with different sets of associated values. These are called tags.
A node interpolator can host different initial conditions for a scene, or different setups for different conditions; for example, the weather.
Platform support
This node is fully supported on XR-Windows, XR-Portable Windows, XR-Portable iOS, XR-Portable Android, and XR-Portable WASM platforms.
|
XR-WIN |
XR-P-WIN |
XR-P-IOS |
XR-P-AND |
XR-P-WASM |
|---|---|---|---|---|
|
Full support |
Full support |
Full support |
Full support |
Full support |
|
|
|
|
|
|
Update modes
NodeInterpolator can host these sets of data, and can update the node fields in its list either:
-
Continuously: By interpolation among registered set, or
-
Discontinuously: By selecting a set.
Code example
This is a code example for NodeInterpolator.
<NodeInterpolator name="interp0" alpha="0.8" keys="{testp.Emitter0\blue,testp.Emitter0\green,testp.Emitter0\red}:{{0,start|0 10 10|0 30 30|0 200 200},{1,end|0 10 10|0 0 0|7.99 0 0}}"/>
Keys parameter
The Keys parameter contains the list of other fields nodes and their value sets.
The syntax is: {FieldList}:{ValueSets}
FieldList
The field list is a comma-separated list of field-complete names with the syntax node.field.
Example: {valve1.value,valve1.active,valve2.value}
ValueSets
The ValueSets include 1-n comma-separated value blocks. Each set has the syntax {alpha,tag|value0|value1|…}
|
Component |
Description |
|---|---|
|
alpha |
The keyframe assigned to the value set for continuous interpolation (0-1). |
|
tag |
The set reference name used for discontinuous assignment. |
|
value|value |
The pipe('|')separated list of field values. There must be as many values as there are fields defined in FieldList. |
-
Ensure that there is a pipe between the tag and the first value element, but not after the last value element.
-
Order the value blocks by alpha ascending. There must always be at least one value block.
Syntax example
This is an example of a keys parameter.
{0,start|0.5|true|0.5},{1,stop|1|true|1}
NodeInterpolator fields
These are the fields for NodeInterpolator node. Only the node-specific fields are indicated, not fields obtained by inheritance.
Field inheritance: NodeBase > NodeInterpolator
|
Fields |
Type |
Use |
Default value |
Description |
|---|---|---|---|---|
|
alpha |
sfloat |
Optional |
No default |
Forces the node interpolator to update listed fields, interpolating their values according to the value sets. |
|
keys |
sstring |
Optional |
No default |
Contains all the information about the field list and value sets. |
|
tag |
sstring |
Optional |
No default |
Forces the discontinuous field update to the values associated to the passed tag. |