PredefinedDynamicNodes

This page documents the PredefinedDynamicNodes collection on Data_PartSwitch.

Purpose

PredefinedDynamicNodes defines attach nodes that should exist on the part outside of any one variant-specific transformer.

Source-backed role

The runtime PartSwitchSelectable exposes PredefinedDynamicNodes as a special child selectable, and Module_PartSwitch.HandleInOabInitialization() creates or repositions these nodes before applying variants.

Expected data shape

Entries are AttachNodeDefinition-style objects. The runtime accesses at least these fields:

  • nodeID

  • size

  • position

  • orientation

OAB behavior

During OAB initialization, V-SwiFT checks whether each predefined node already exists:

  • if the node exists, its local position is refreshed

  • if the node does not exist, V-SwiFT creates it as a dynamic stack node

Example

PredefinedDynamicNodes: [
    {
        nodeID: side_mount,
        size: 1,
        position: { x: 0.5, y: 0.0, z: 0.0 },
        orientation: { x: 1.0, y: 0.0, z: 0.0 }
    }
];

Notes

Use PredefinedDynamicNodes for stable node definitions that should exist regardless of the currently active variant. Use AttachNodeAdder when the node change itself is part of a specific variant choice.