Action Nodes - NeocortexVT/VNyanDocFork GitHub Wiki
For information on how the Node Graph System works, see the Node Graphs page.
Action nodes are nodes that perform a specific action. They characteristically consist of a (teal) Listener socket, and optional (red) Variable Input sockets. They do not have (yellow) Call sockets. They cannot directly activate other nodes (but see Trigger Nodes).
Types of Action Nodes:
- Action Triggers
- File Loading
- Animations
- Camera Nodes
- Custom Objects
- Trigger Nodes
- Toggles
- Integrations
- Avatar Settings
- Various
- Post-Processing Effects
- Number Parameters
- Number Arrays
- Text Parameters
- Text Arrays
- Dictionaries
- M - Manual input
- T - Trigger output*
-
S - Socket input/output**
*Action Nodes as a rule do not have Call Socket that signal if the the Action Node was activated or not. No Action Node will send trigger output.
**Action Nodes do not have Output Socket Values, and so S will exclusively refer to Socket input.
For more details on node input and output, see Input and Output methods
Action Trigger Nodes are nodes that will perform a specific action when they are triggered.
Triggering this node will cause copies of an item to be thrown at the avatar.
Input Values:
Name | Method | Type | Description |
---|---|---|---|
Items | M | - | Which throwable item to throw when throwing items. When multiple items are selected, the node will randomly select one of the toggled items each time an item is spawned. The list only contains throwable items loaded into VNyan, loaded from items\throwables when starting VNyan. |
Amount to throw | M/S | Int | The amount of items to throw. When multiple items are selected from the Items list and Amount to throw is larger than 1, multiple different items can be thrown per trigger, with the total amount thrown equal to the value set in Amount to throw. |
Destroy after seconds | M/S | Int | Number of seconds to wait after a copy of an item is thrown before despawning. |
Flinch Power | M/S | Float | The amount that the head flinches when hit by the throwable. 0 = none, 1 = max. |
Time between throws | M/S | Int | When Amount to throw is larger than 1, the amount of time between each thrown item, in milliseconds. |
Sticky Override | M | - | Set whether thrown items stick to the avatar or not.
|
Volume | M/S | Float | Volume multiplier applied to all audio sources in thrown items. |
Item Tag | M/S | String | A user-specified item tag used by the Collision node to filter events. Empty = not in use. |
Scale | M/S | Float | A value by which to scale thrown items. Values smaller than 1 will shrink the thrown items, values larger than 1 will expand the thrown items. |
Throw Direction | M | - | Specify the direction where items are thrown from. |
Throw Target | M | - | Specify the avatar bone that should be targeted by the throw node. |
Throw Height | M/S | Float | Height added to the throw direction. Can be used to correct the throw when the target is over/undershot. |
Force | M/S | Float | The amount of force with which the item is thrown. |
Stick for milliseconds | M/S | Int | How long sticky items will stick to the target after hitting, before falling off. |
Community Note: We are currently unsure whether Flinch Power is applied only to the Head bone, or to whichever bone is set as the Target bone. Please let us know if you can confirm.
Fires 2D images from the camera towards the Avatar. Bubbles will always face the camera. Bubbles can be added by placing .png, .gif images inside `vnyan/Items/Bubbles`.
Input Values:
Name | Method | Type | Description |
---|---|---|---|
Items | M | - | Which images to fire when firing bubbles. When multiple items are selected, the node will randomly select one of the toggled items each time an item is spawned. The list only contains images items loaded into VNyan, loaded from items\bubbles when starting VNyan. |
Amount to throw | M/S | Int | The amount of images to fire. When multiple items are selected from the Items list and Amount to throw is larger than 1, multiple different images can be fired per trigger, with the total amount fired equal to the value set in Amount to throw. |
Flinch Power | M/S | Float | The amount that the head flinches when hit by the bubbles. 0 = none, 1 = max. |
Item Tag | M/S | String | A user-specified item tag used by the Collision node to filter events. Empty = not in use. |
Scale | M/S | Float | A value by which to scale thrown items. Values smaller than 1 will shrink the thrown items, values larger than 1 will expand the thrown items. |
Bubble Speed | M/S | Float | The speed at which bubbles travel to the target. |
Pop Particle | M/S | Bool | Toggle whether to play a pop particles effect when the bubble is destroyed. |
Is Sticky | M/S | Bool | Toggle whether the bubble sticks on the avatar instead of destroying it right away. |
Sticky Destroy Time | M/S | Int | If Is Sticky is toggled on, the amount of time to wait after bubbles stick to the target before being destroyed, in milliseconds. |
Direction | M | - | The direction from where the bubbles are shot, relative to the camera. |
Community Note: We are currently unsure whether Flinch Power is applied only to the Head bone, or to whichever bone is set as the Target bone. Please let us know if you can confirm.
Spawns food item in either avatar's hand or floating around the head. Food items are loaded from the items\edibles folder.
You can adjust the placement of the food item on the right or left hand of your avatar with the sliders provided in the Colliders etc menu.
Input Values:
Name | Method | Type | Description |
---|---|---|---|
Position | M | - | The position where the food item is spawned.
|
Items | M | - | Which food item to spawn when spawning food items. When multiple items are selected, the node will randomly select one of the toggled items when an item is spawned. The list only contains food items loaded into VNyan, loaded from items\edibles when starting VNyan. |
Item Tag | M | - | Item tag for Collision-node's filtering. Empty = not in use. |
Scale | M | - | Sive of food item. |
Triggering this node will drop copies of an item onto the avatar.
Input Values:
Name | Method | Type | Description |
---|---|---|---|
Item | M | - | Which droppable item to drop onto the avatar. When multiple items are selected, the node will randomly select one of the toggled items each time an item is spawned. The list only contains droppable items loaded into VNyan, loaded from items\droppalbes when starting VNyan. |
Destroy after seconds | M/S | Int | Number of seconds to wait after a copy of an item is dropped before despawning. If the value is not set, droppable items will not despawn. |
Amount | M/S | Int | The amount of items to drop. When Amount is larger than 1, copies of the droppable item will spawn over a short period of time, rather than all spawning simultaneously. When multiple items are selected from the Items list and Amount is larger than 1, multiple different items can be dropped per trigger, with the total amount dropped equal to the value set in Amount. |
Random Spawn | M/S | Bool | Toggle whether to randomize the spawn location and the rotation of the droppable item upon spawn. |
Volume | M/S | Float | Volume multiplier applied to all audio sources in dropped items |
Override Mass | M/S | Float | Specify the mass of the droppable item instead of using the internal mass value of the droppable item. |
Override Drag | M/S | Float | Specify the drag of the droppable item instead of using the internal drag value of the droppable item. |
Item Tag | M/S | String | A user-specified item tag used by the Collision node to filter events. Empty = not in use. |
Scale | M | Float | A value by which to scale dropped items. Values smaller than 1 will shrink the dropped items, values larger than 1 will expand the dropped items. |
Blasts a 3D onfetti effect at your avatar and plays a party popper sound effect. This node has no input or output values.
For custom confetti, it's recommended to use custom Throwable Items instead.
Bonks the avatar four times with a baseball bat, and plays a hitting sound effect on each hit. This node has no input or output values.
For a custom bonk effect, you could use the Props system instead.
Plays a simple headpat animation. This node has no input or output values.
For a custom headpat effect, you could use the Props system instead.
Yeets the avatar in ragdoll mode.
Input Values:
Name | Method | Type | Description |
---|---|---|---|
Yeet Power | M/S | Int | The amount of power to apply to the yeet. Setting this value to 0 will simply turn on ragdoll mode. |
Seconds to respawn | M/S | Int | The number of seconds to wait until the model respawns back in the tracking position. |
Yeet Direction | M | - | The direction in which your model is yeeted (Backwards, Forwards, Left, or Right) |
Adds a brief flinch effect to your avatar when triggered. This can be used to recreate a flinching effect for objects that do not normally have a flinching effect.
Input Values:
Name | Method | Type | Description |
---|---|---|---|
Flinch Power | M/S | Float | The power of the flinch, scaled from 0 to 1. |
Applies a specified amount of force onto the avatar and activates ragdoll mode on the avatar based on exact values.
Input Values:
Name | Method | Type | Description |
---|---|---|---|
Force X/Y/Z | M/S | Float | The amount of force applied in each direction based on world space. |
Torque Force X/Y/Z | M/S | Float | The amount of torque applied along each axis based on world space. |
Seconds to respawn | M/S | Int | The number of seconds to wait until the model respawns back in the tracking position. |
Plays the loaded sound file when triggered.
Input Values:
Name | Method | Type | Description |
---|---|---|---|
Sound File | M/S | String | The path to the sound file to play (.mp3, .ogg or .wav). |
Volume | M/S | Float | A multiplier for the playback volume of the sound effect, ranging from 0 to 1. |
Duration in milliseconds | M/S | Int | The amount of milliseconds to play the audio. |
Fade Out in milliseconds | M/S | Int | The duration of a fade-out effect at the end of the sound effect in milliseconds. |
Plays an audio file when triggered. Only one audio file can play at a time.
Input Values:
Name | Method | Type | Description |
---|---|---|---|
Sound File | M/S | String | The path to the sound file to play (.mp3, .ogg or .wav). |
Volume | M/S | Float | A multiplier for the playback volume of the music, ranging from 0 to 1. |
Loop | M/S | Bool | Toggle whether the audio loops when it finished playing. |
Stop the currently playing audio when triggered. This node has no input or output values.
Load in an avatar and unload the current one. VSFAvatars can be cached under Miscellaneous Settings to swap between avatars faster, at the cost of memory.
Input Values:
Name | Method | Type | Description |
---|---|---|---|
Avatar File | M/S | String | The path to the avatar file to load. |
Load world a new world and unload the current one.
Input Values:
Name | Method | Type | Description |
---|---|---|---|
World File | M/S | String | The path to the world file to load. |
Load and set a static VNyan Pose on the avatar.
VNyan Poses are JSON files that can be created with the VNyan SDK. A tutorial on how to create VNyan Poses can be found here: https://www.youtube.com/watch?v=XWGh7iv9O6Q
Input Values:
Name | Method | Type | Description |
---|---|---|---|
Pose | M/S | String | The path to the pose JSON file to load. |
Blend Values | M | - | A list of floats that describe the degree to which each bone's pose values are applied and override tracking values. These settings can be used to mix a pose with tracking. |
Smooth milliseconds | M/S | Int | The amount of milliseconds over which the transition from tracking to the pose is smoothed. |
Leap Motion after motion | M/S | Bool | Toggle whether to apply leap motion tracking after posing if hands are tracked. |
A tutorial for how to create VNyan Poses can be found here: https://www.youtube.com/watch?v=XWGh7iv9O6Q
Known issues:
- While there is an input socket for the Blend Values, no node exists that outputs this value.
Clear the loaded VNyan Pose. This node does not have input or output values.
Save the current avatar bone rotations as a VNyan Pose that can be loaded later.
Input Values:
Name | Method | Type | Description |
---|---|---|---|
Pose file | M/S | String | The path where the pose JSON file will be saved to. |
Play a VNyan Animation on the avatar.
VNyan Animations are vnanim files that can be created with the VNyan SDK. These files must be placed in the Items/Animations
directory and a restart of VNyan.
Input Values:
Name | Method | Type | Description |
---|---|---|---|
Animation to Play | M | - | The name of the animation to play. |
Blend Values | M | - | A list of floats that describe the degree to which each bone's animation values are applied and override tracking values. These settings can be used to mix an animation with tracking. |
Smooth milliseconds | M/S | Int | The amount of milliseconds over which the transition from tracking to the animation is smoothed. |
Animate Eye Bones | M/S | Bool | Toggle whether the animation should override eye bone rotations. |
Leap Motion after motion | M/S | Bool | Toggle whether to apply leap motion tracking after posing if hands are tracked. |
Pause Tracking Effect | M/S | Bool | Toggle whether tracking animations should be disabled while the animation plays. |
Known issues:
- While there is an input socket for the Blend Values, no node exists that outputs this value.
- Toggling the Pause Tracking Effect setting may cause strange deformations during the animation.
Set the animation injector playback speed.
Input Values:
Name | Method | Type | Description |
---|---|---|---|
Speed | M/S | Float | The speed multiplier for the animation playback. Can be negative as well. |
Stop the currently playing VNyan animations. This node does not have input or output values.
Record your movements for a specified amount of time and save that as a unity humanoid anim-file. Writing the file is resource intensive, so it is not recommended to use this node while streaming.
Input Values:
Name | Method | Type | Description |
---|---|---|---|
Anim file | M/S | String | The path where the animation file will be saved to. |
Milliseconds to record | M/S | Int | The duration of the recording. |
Play a VMD motion on the avatar and camera. Note that not all motions play well on Unity humanoid rigs without more precise retargeting. If your motion does not work as intended, then we recommend using tools like MMD4Mecanim and adding the motion to the vsfavatar file.
This node can also add Camera VMD motion. However, Camera motion will not work without a VMD motion.
Input Values:
Name | Method | Type | Description |
---|---|---|---|
VMD File | M | String | Path to the character motion file. |
Camera VMD File | M | String | Path to the camera motion file. Requires Character motion data in order to work. |
Music File | M | String | Path to the music file to play during motion. |
Volume | M/S | Float | A multiplier for the playback volume of the music, ranging from 0 to 1. |
Lipsync from motion | M/S | Bool | Toggle whether to apply lipsync blendshapes from motion data. |
Head Stiffness | M/S | Float | A modifier to adjust how much the motion data influences the head movement. Some motions may move the unity humanoid rig head too much, which can be corrected with this value. |
Camera Y-adjust | M/S | Float | A multiplier to move the camera along the Y-axis. |
Distance multiplier | M/S | Float | A multiplier for camera distance. |
Known Issues:
- VMD-files are loaded at startup, and accessed when the node is triggered. Consequently, despite the fact that the node has input sockets for the VMD Character and Camera files, the node will not work as intended when setting these file names through the sockets.
Community Note: We would like to include (a reference to) instruction on how to add MMD motions to a vsfavatar file, as suggested in the node description.
Stop the currently playing MMD motion. This node has no input or output values.
Move the camera to a saved camera position. Camera position presets can be created in Miscellaneous Settings.
Input Values:
Name | Method | Type | Description |
---|---|---|---|
Camera | M/S | Int | Slot number of the saved camera position that needs to be activated, as listed in the camera settings. |
Transition milliseconds | M/S | Int | The number of milliseconds over which to move from the current camera position to the target camera position. |
Set the camera to follow the active Avatar with specified behavior.
Input Values:
Name | Method | Type | Description |
---|---|---|---|
Active | M/S | Bool | Activate or deactivate camera following when the node is triggered. |
Smoothing | M/S | Float | How much the camera lags behind avatar movement, creating smoother camera movement. 0 = camera is perfectly follows the avatar, 1 = camera movement is maximally smoothed. |
Distance | M/S | Float | The distance/zoom of the camera. Valid input values range between 0.2 and 15. -1 = not in use. |
Set smoothness of camera movements.
Input Values:
Name | Method | Type | Description |
---|---|---|---|
Smoothing | M/S | Float | How quickly camera movements are completed. 0=instant, 1=max smoothing. |
Oscillates camera tilt around a specified angle from the original position, with a specified repetition time. Deactivating restores the camera tilt to the original position.
Input Values:
Name | Method | Type | Description |
---|---|---|---|
Active | M/S | Bool | Activate or deactivate oscillating camera tilt when the node is triggered. |
Duration | M/S | Int | The number of milliseconds between the far points of the oscillation (i.e. a full loop takes two times the specified amount of time). |
Tilt Angle | M/S | Float | The maximum angle that the camera should tilt away from the original angle. |
Note
The tilt effect is not automatically disabled upon switching cameras.
Rotate the camera around the avatar, with offset.
Input Values:
Name | Method | Type | Description |
---|---|---|---|
Active | M/S | Bool | Activate or deactivate camera orbit when the node is triggered. |
Orbit Milliseconds | M/S | Int | The amount of milliseconds to make a full rotation. |
Mirror Direction | M/S | Bool | Toggle whether the camera should move clockwise (on) or anti-clockwise (off). |
Note
The orbit effect is not automatically disabled upon switching cameras.
Known Issues:
- Disabling the orbit effect in the same frame or later as a Camera node is activated will result in the wrong final camera position. This can be avoided by waiting one frame between disabling the camera orbit effect and activating a Camera node.
Save the current camera configuration to a preset slot.
Input Values:
Name | Method | Type | Description |
---|---|---|---|
Camera | M/S | Int | The preset slot to which to save the current camera configuration. |
Set the camera's focal length to a given value.
Input Values:
Name | Method | Type | Description |
---|---|---|---|
Focal Length | M/S | Int | The value to set as the new focal length. -1=set the focal length to the default value. |
Spawn a copy of a Custom Object with specified properties.
Input Values:
Name | Method | Type | Description |
---|---|---|---|
Item | M | - | Which Custom Object item to spawn. When multiple items are selected, the node will randomly select one of the toggled items each time an item is spawned. The list only contains custom objects loaded into VNyan, loaded from items\Objects when starting VNyan. |
Position X/Y/Z | M/S | Float | The position value along a given axis. |
Rotation X/Y/Z | M/S | Float | The rotation value along a given axis. |
Unique ID | M/S | String | A string given to the specific instance of the Custom Object. This can be used to identify the specific instance of the Custom Object during interactions. Giving multiple instances the same ID will have all instances respond identically to nodes that call for the ID. If no Object ID is set and despawn time is set to -1, the custom object is only removed upon restarting VNyan. |
Destroy after seconds | M/S | Int | The amount of seconds until the object automatically despawns. Default = 30 seconds; -1/ = object is not destroyed automatically. |
Scale | M/S | Float | A scale multiplier to spawn the custom object in bigger/smaller. |
Move a custom object to a specific position, rotation and scale. Specific instances of objects can be selected by their Object ID that was set when spawned.
Input Values:
Name | Method | Type | Description |
---|---|---|---|
Object ID | M/S | String | Value used to identify the instance(s) of the Custom Object. |
Position X/Y/Z | M/S | Float | The target position value along a given axis. |
Rotation X/Y/Z | M/S | Float | The target rotation value along a given axis. |
Scale X/Y/Z | M/S | Float | The target scale value along a given axis. |
Apply force and torque to a Custom Object, causing it to move. Applied force can be either relative or in world space. Specific instances of objects can be selected by their Object ID that was set when spawned.
Input Values:
Name | Method | Type | Description |
---|---|---|---|
Object ID | M/S | String | Value used to identify the instance(s) of the Custom Object. |
Force X/Y/Z | M/S | Float | The amount of force applied along a given axis. |
Torque X/Y/Z | M/S | Float | The amount of torque applied along a given axis. |
Relative | M/S | Bool | Toggle whether applied force should be relative to the object (i.e. additive; on) or to world space (i.e. overwrite current force; off). |
Destroys Custom Object by ID. Specific instances of objects can be selected by their Object ID that was set when spawned.
Input Values:
Name | Method | Type | Description |
---|---|---|---|
Object ID | M/S | String | Value used to identify the instance(s) of the Custom Object. |
Start a timer with the given name for specified duration of time. Once the timer ends it sends a trigger signal to all Timer callback nodes listening for the specified name. Timers are shared between all graphs
Input Values:
Name | Method | Type | Description |
---|---|---|---|
Timer Name | M/S | String | Name of the timer to set. |
Milliseconds to Trigger | M/S | Int | The number of milliseconds before timer nodes of the same name are activated. |
Notes
The node generally works by checking every frame if Milliseconds to Trigger has elapsed. This means that there is a lower limit for how short you can make timers based on framerate. For example, 60fps means that each frame runs every 16.667ms, making this the fastest the timer can run. However, setting the timer to be smaller than this will reduce any error in the timing.
Setting the timer to 0ms will ensure that the timer will trigger every frame. For graphs that need to be running constantly and shouldn't have any skipping to occur, for instance if you are animating bone rotations on your avatar, best practice is to set the timer for 0ms.
Signals all Trigger callback nodes with the specified name either instantly, or on the next frame. This allows the creation of 'functions'. Triggers are shared between all graphs.
Input Values:
Name | Method | Type | Description |
---|---|---|---|
Trigger Name | M/S | String | Name of the trigger to call. |
When to trigger | M | - | Whether the trigger should be called immediately, or on the next frame. When multiple Call Trigger nodes are set to execute now, the triggers are called synchronously according to the order of execution. |
Value 1/2/3 | S | Int | An integer value that is forwarded to the listening trigger nodes. |
Text 1/2/3 | S | String | A teext value that is forwarded to the listening trigger nodes. |
Notes
VNyan's API can be used to listen to Call Trigger nodes, allowing plugins to interact with node graphs. The name, and integer and text value inputs of the Call Trigger node are also forwarded to Trigger Listeners in the API. See VNyan Plugin Interface for more details.
Send websocket-message to a specified server. To use this node, you will need to activate the WebSockets Receiver under Miscellaneous Settings.
Input Values:
Name | Method | Type | Description |
---|---|---|---|
Server Address | M/S | String | The address to send the message to. |
Message | M/S | String | The message to send. |
Effects that can be turned on/off by triggering the same node multiple times.
Set or toggle the visibility of a prop.
Input Values:
Name | Method | Type | Description |
---|---|---|---|
Prop | M | - | Which prop to adjust the visibility of. Props must be set up through the Props menu before they can be selected in the Toggle Prop. |
Status | M | - | Select whether the visibility of the selected prop is toggled, set on, or set off when the node is activated. |
This node toggles the avatar spinning in place. Activating the node a second time will turn off the effect.
Input Values:
Name | Method | Type | Description |
---|---|---|---|
Spin Speed | M/S | Float | The speed of the spin. Setting a negative value will spin the avatar opposite way. |
Toggle a water effect.
Input Values:
Name | Method | Type | Description |
---|---|---|---|
Active | M/S | Bool | If Is Toggle is off, set whether activating the node will turn the water effect on or off. |
Direction | M | - | The direction from which the water effect is launched (front, top, left, or right). |
Water color | M/S | Color | The color of the water. |
Opacity | M/S | Float | Adjust the transparency of the water. |
Is Toggle | M/S | Bool | Indicate whether activating the node multiple times will deactivate and reactivate the water effect. |
Toggle a liquid slime effect. Collides with the torso collider.
Input Values:
Name | Method | Type | Description |
---|---|---|---|
Active | M/S | Bool | If Is Toggle is off, set whether activating the node will turn the slime effect on or off. |
Slime color | M/S | Color | The color of the slime. |
Absorption | M/S | Float | The amount of light absorbed by the slime. This value filters all colors except the selected Slime Color. A lower value makes the slime more transparent. |
Scattering | M/S | Float | The amount of light being scattered by the slime. Visually makes the slime cloudier. Max value makes the liquid opaque. |
Is Toggle | M/S | Bool | Indicate whether activating the node multiple times will deactivate and reactivate the slime effect. |
Toggle a wind effect on VRM springbones.
Input Values:
Name | Method | Type | Description |
---|---|---|---|
Wind Direction | M/S | Vector3 | Select whether the wind comes from the left, right, front, back, or top(up). More detailed wind directions can be specified using the Decimal to Vector3 node. |
Wind Power | M/S | Float | The power of the wind in the effect. |
Is Toggle | M/S | Bool | Indicate whether activating the node multiple times will deactivate and reactivate the wind effect, or adjust an on-going wind effect. |
Toggle 2D rain effects on or off. Up to five concurrent rain effects are supported. Toggling rain off will stop the emitter, but will not clear the already created particles.
Input Values:
Name | Method | Type | Description |
---|---|---|---|
Rain Slot | M | - | Which rain slot is toggled by the node. |
Rain Type | M | - | Select whether the toggled emitter behaves like rain, snow, or falling leaves. |
Rain Texture | M/S | String | Path to a PNG file to use as particle graphic. |
Density | M/S | Float | The density of rain particles. |
Speed | M/S | Float | A speed multiplier for the simulation behavior. |
Size | M/S | Float | A size multiplier for the particles. |
Adjust the Twitch emote dropper settings.
Input Values:
Name | Method | Type | Description |
---|---|---|---|
Emotes per emote | M/S | Int | The number of emotes dropped for each emote used in chat. |
Spawn Radius | M/S | Float | The radius in which emotes are spawned. |
Size Multiplier | M/S | Float | A value with which the size of the emote is multiplied. |
Gravity Multiplier | M/S | Float | A value with which the effect of gravity on the dropped emote is multiplied, causing it to fall faster or slower. |
Lifetime milliseconds | M/S | Int | The amount of time after spawning the dropped emote before it despawns, in milliseconds. |
Emotes Face Camera | M/S | Bool | Specify whether emotes falls across the screen as 2d objects facing the camera, or 3d objects that can turn away from the camera. |
Community Note: It is unconformed whether the Spawn Radius is centered around the avatar or the world origin.
Shout out a Twitch user by raining down their Twitch profile picture as an image. Twitch integration must be enabled in the VNyan settings. Use with caution; ToS unfriendly profile pictures may evoke a response from Twitch.
Input Values:
Name | Method | Type | Description |
---|---|---|---|
Username | M/S | String | The username of the Twitch user to shout out. |
Fetch details for a specific Twitch user. The node calls the Profile Loaded node, which can be used to extract the results.
Input Values:
Name | Method | Type | Description |
---|---|---|---|
Username | M/S | String | The username of the Twitch user whose profile to load. |
Edit the settings of a Twitch Redeem. Twitch integration must be enabled in the VNyan settings and the redeem must have been created through the VNyan Integration.
Input Values:
Name | Method | Type | Description |
---|---|---|---|
Redeem to edit | M | - | The redeem whose settings should be modified by the node. |
Is Enabled | M/S | Bool | Specify whether to enable or disable the redeem. |
Title | M/S | String | Set the name of the redeem. Required. |
Channel Points Cost | M/S | Int | What to set the cost of the redeem to. |
Require User Input | M/S | Bool | Specify whether the redeem requires user input when redeemed. |
Prompt | M/S | String | The prompt asking for user input. |
Use Global Cooldown | M/S | Bool | Specify whether the cooldown is shared across chat or specific to each user. |
Cooldown Seconds | M/S | Int | The length of the redeem cooldown, in seconds. |
Community Note: We would like to add more details about the Promt input. Please let us know if you have more information about it.
Send a message to the VTSPog application. VTSPog needs to be running and correctly configured for this node to work.
Input Values:
Name | Method | Type | Description |
---|---|---|---|
Target | M | - | Specify whether to use TTS or AI voice. |
Message | M/S | String | The message to send to VTSPog. |
User's name for AI | M/S | String | What username VTSPog should use (only applies to AI). |
Send an action to a connected Lovense toy.
Input Values:
Name | Method | Type | Description |
---|---|---|---|
Action | M | - | Which action the toy should perform. |
Strength | M/S | Int | The strength at which the action will be performed. Most values accept values between 0 and 20. Pump and depth actions accept values between 0 and 3. Decimal values are rounded down by default (for example, 2.4 will become 2). |
Seconds | M/S | Int | The duration of the action, in seconds. Does not support milliseconds. 0 = active until disabled. |
Stop Previous | M/S | Bool | Indicate whether to stop any already active actions when the node is activated. |
Note Although Seconds does not support millisecond input, the node can be activated at intervals smaller than a second.
Start a preset on Lovense toy. The presets must be defined in Lovense Remote-app.
Input Values:
Name | Method | Type | Description |
---|---|---|---|
Preset name | M/S | String | The name of the preset to start. Currently only the 4 builtin presets (pulse, wave, fireworks, earthquake) are supported by Lovense Remote. |
Seconds | M/S | Int | The duration of the action, in seconds. Does not support milliseconds. 0 = active until disabled. |
Note Although Seconds does not support millisecond input, the node can be activated at intervals smaller than a second.
Community Note: It is unconfirmed whether the builtin presets are still the only presets supported by this node. Please let us know if you can confirm.
Enable or disable VMC, ARKit, and lipsync-based blendshape tracking.
Input Values:
Name | Method | Type | Description |
---|---|---|---|
Disable Tracking | M/S | Bool | Specify whether activating this node will disable or enable blendshape tracking. |
Set an existing or create a non-existing Blendshape Clip value. This will override blendshape tracking.
This node only works with VRM Blendshape Clips; Mesh blendshapes are not supported by this node.
Input Values:
Name | Method | Type | Description |
---|---|---|---|
Blendshape name | M/S | String | The name of the blendshape to set. |
Blendshape value | M/S | Int | The target value for the blendshape between 0 and 100. Setting the blendshape to 0 through the Blendshape node will remove the Blendshape-override. If the blendshape needs to be set to 0, the Expression Mapper should be used. |
Constrained blendshapes | M/S | String | A semi-colon delimited list of constrained blendshapes. The Blendshape value set in this node will be subtracted from any active blendshapes in the list each time this node is triggered. Will not reduce constrained blendshapes' values below 0. |
Smooth Multiplier | M/S | Float | A value to indicate how smoothly the blendshape turns on. 0 = instant, 1 = very smooth. |
Use as toggle | M/S | Bool | Specify whether the node is treated as a toggle. Toggles turn themselves off when triggered a second time with the same Blendshape value. Otherwise triggering the node multiple times with the same values will not do anything. |
Reset all ARKit tracking blendshapes that were overwritten with the Blendshape node. This node does not have any input or output values.
Reset all blendshapes that have been set with the Blendshape node. This node does not have any input or output values.
Reset values set by Bone transformation nodes of a specified avatar bone.
Input Values:
Name | Method | Type | Description |
---|---|---|---|
Bone to Reset | M | - | The avatar bone to reset. |
Reset Rotation | M | Bool | Whether the node resets the target bone's rotation. |
Reset Scale | M | Bool | Whether the node resets the target bone's scale. |
Reset values set by Object transformation nodes of a specified avatar child object.
Input Values:
Name | Method | Type | Description |
---|---|---|---|
GameObject Name | M/S | String | The name of the GameObject to reset. |
Reset Position | M/S | Bool | Whether the node resets the target object's position. |
Reset Rotaion | M/S | Bool | Whether the node resets the target object's rotation. |
Reset Scale | M/S | Bool | Whether the node resets the target object's scale. |
Set the rotation of an avatar bone, overriding tracking and animations.
Input Values:
Name | Method | Type | Description |
---|---|---|---|
Bone to Rotate | M | - | The avatar bone to rotate. |
Rotation X/Y/Z | M/S | Float | The target rotation for the bone along the specific axis, in Euler-angles. |
Smooth Time | M/S | Int | The amount of time to move from the initial rotation to the target rotation, in milliseconds. |
Is Toggle | M/S | Bool | Specify whether the node is treated as a toggle. Toggles turn themselves off when triggered a second time with the same Rotation X/Y/Z. Otherwise triggering the node multiple times with the same values will not do anything. |
Community Note: We are currently unsure whether the Rotation X/Y/Z values are Euler angles in local or global space. Please let us know if you can confirm.
Add a specified rotation to the tracking of an avatar bone. These values do not stack, and triggering multiple Additive Bone Rotation nodes will override each other. This value is also applied to animations.
Input Values:
Name | Method | Type | Description |
---|---|---|---|
Bone to Rotate | M | - | The avatar bone to rotate. |
Space | M | - | The space in which bone should be rotated (World or Local). |
Rotation X/Y/Z | M/S | Float | The target rotation for the bone along the specific axis, in Euler-angles. |
Smooth Time | M/S | Int | The amount of time to move from the initial rotation to the target rotation, in milliseconds. |
Scale a selected bone by specified values along each local axis.
Input Values:
Name | Method | Type | Description |
---|---|---|---|
Bone to Scale | M | - | The avatar bone to scale. |
Scale X/Y/Z | M/S | Float | The values by which each dimension of the bone will be multiplied. |
Smooth Time | M/S | Int | The amount of time to change from the initial size to the target size, in milliseconds. |
Is Toggle | M/S | Bool | Specify whether the node is treated as a toggle. Toggles turn themselves off when triggered a second time with the same Scale X/Y/Z. Otherwise triggering the node multiple times with the same values will not do anything. |
Set the position of a child object of the avatar, overriding tracking and animations.
Input Values:
Name | Method | Type | Description |
---|---|---|---|
GameObject Name | M/S | String | The name of the GameObject to move. |
Position X/Y/Z | M/S | Float | The target position for the object along the specific axis. |
Smooth Time | M/S | Int | The amount of time to move from the initial position to the target position, in milliseconds. |
Is Toggle | M/S | Bool | Specify whether the node is treated as a toggle. Toggles turn themselves off when triggered a second time with the same Position X/Y/Z. Otherwise triggering the node multiple times with the same values will not do anything. |
Set the rotation of a child object of the avatar, overriding tracking and animations.
Input Values:
Name | Method | Type | Description |
---|---|---|---|
GameObject Name | M/S | String | The name of the GameObject to rotate. |
Rotation X/Y/Z | M/S | Float | The target rotation for the object along the specific axis, in Euler-angles. |
Smooth Time | M/S | Int | The amount of time to move from the initial rotation to the target rotation, in milliseconds. |
Is Toggle | M/S | Bool | Specify whether the node is treated as a toggle. Toggles turn themselves off when triggered a second time with the same Rotation X/Y/Z. Otherwise triggering the node multiple times with the same values will not do anything. |
Community Note: We are currently unsure whether the Rotation X/Y/Z values are Euler angles in local or global space. Please let us know if you can confirm.
Set the scale of a child object of the avatar.
Input Values:
Name | Method | Type | Description |
---|---|---|---|
GameObject Name | M/S | String | The name of the GameObject to scale. |
Rotation X/Y/Z | M/S | Float | The values by which each dimension of the object will be multiplied. |
Smooth Time | M/S | Int | The amount of time to change from the initial size to the target size, in milliseconds. |
Is Toggle | M/S | Bool | Specify whether the node is treated as a toggle. Toggles turn themselves off when triggered a second time with the same Scale X/Y/Z. Otherwise triggering the node multiple times with the same values will not do anything. |
Set teh visibility of a child object of the avatar. Turning off visibility on an object through this node stops it from being rendered, saving your computer's resources.
Input Values:
Name | Method | Type | Description |
---|---|---|---|
GameObject Name | M/S | String | The name of the GameObject to set the visibility of. |
Object Visible | M/S | Bool | Whether triggering this node turns the object's visibility on or off. |
Move the avatar to a preset position. Avatar position presets can be created in Miscellaneous Settings.
Input Values:
Name | Method | Type | Description |
---|---|---|---|
Position Slot | M/S | Int | Slot number of the saved avatar position that needs to be activated, as listed in the position settings. |
Enable or disable Tracking Effects. Tracking Effects that have been disabled in the Tracking Effect Settings cannot be enabled through this node.
Input Values:
Name | Method | Type | Description |
---|---|---|---|
Expressive Body Tilt | M/S | Bool | Specify whether triggering this node enables or disables Expressive Body Tilt. |
Breathing Motion | M/S | Bool | Specify whether triggering this node enables or disables Breathing Motion. |
Arm Sway | M/S | Bool | Specify whether triggering this node enables or disables Arm Sway. |
Enable or disable Tracking Layers. Tracking Layers that were not activated at application start cannot be enabled through this node.
Input Values:
Name | Method | Type | Description |
---|---|---|---|
ARKit Tracking | M/S | Bool | Specify whether triggering this node enables or disables ARKit Tracking. |
Web Camera Tracking | M/S | Bool | Specify whether triggering this node enables or disables Web Camera Tracking. |
LeapMotion | M/S | Bool | Specify whether triggering this node enables or disables LeapMotion tracking. |
Steam VR | M/S | Bool | Specify whether triggering this node enables or disables SteamVR tracking. |
Lipsync | M/S | Bool | Specify whether triggering this node enables or disables audio Lip Sync tracking. |
VMC Layer 1/2/3/4 | M/S | Bool | Specify whether triggering this node enables or disables the specified VMC Tracking Layer. |
Adjust the time scale with which Unity physics are calculated.
Input Values:
Name | Method | Type | Description |
---|---|---|---|
Scale | M/S | Float | The time scale with which Unity physics are calculated, ranging from 0 to 1. |
Take a screenshot of VNyan when the node is activated. Ignores UI elements. Screenshots are stored by default in the Pictures
directory, in a folder called VNyan
. This node does not have input or output values.
Adjust the resolution of the VNyan window.
Input Values:
Name | Method | Type | Description |
---|---|---|---|
Width | M/S | Int | The number of pixels that resolution of the width of the window is set to. |
Height | M/S | Int | The number of pixels that resolution of the height of the window is set to. |
Known Issues:
- VNyan's window size is currently linked to the window resolution. Adjusting the resolution values currently also adjust the window size. This will be fixed in a future update.
Send a keystroke action to the currently active window through VNyan.
Input Values:
Name | Method | Type | Description |
---|---|---|---|
Key to Send | M | - | The keystroke to send to the active window. |
Key State | M/S | Int | The type of keystroke data to send to the active window. Can be set to downstroke, upstroke or a complete press. |
Known Issues:
- If either VNyan or the programme in the active window are ran as administrators, this may not work.
Post-processing etc effects
Add a post processing effect that mimics a digital visual glitch.
Input Values:
Name | Method | Type | Description |
---|---|---|---|
Active | M/S | Bool | Specify whether triggering the node should activate or deactivate the effect. |
Intensity | M/S | Float | Specify the intensity of the effect. |
Is Toggle | M/S | Bool | Specify whether triggering the node a second time disables the effect. |
Transition Seconds | S | Float | The amount of time over which the effect fades in and out. |
Add an ambient occlusion post processing effect.
Input Values:
Name | Method | Type | Description |
---|---|---|---|
Active | M/S | Bool | Specify whether triggering the node should activate or deactivate the effect. |
Intensity | M/S | Float | Specify the intensity of the effect. |
Thickness | M/S | Float | Specify the thickness of the occlusion. |
Color | M/S | Color | The color of the ambient occlusion effect. |
Is Toggle | M/S | Bool | Specify whether triggering the node a second time disables the effect. |
Transition Seconds | S | Float | The amount of time over which the effect fades in and out. |
Add a post processing effect that mimics an analogue visual glitch.
Input Values:
Name | Method | Type | Description |
---|---|---|---|
Active | M/S | Bool | Specify whether triggering the node should activate or deactivate the effect. |
Scanline Jitter | M/S | Float | Specify how much the image jitters horizontally. |
Vertical Jump | M/S | Float | Specify how quickly the image stutters in the vertical direction. |
Horizontal Shake | M/S | Float | Specify how much the image shakes horizontally. |
Color Drift | M/S | Float | Specify how much the RGB values of the image jitter horizontally. |
Is Toggle | M/S | Bool | Specify whether triggering the node a second time disables the effect. |
Transition Seconds | S | Float | The amount of time over which the effect fades in and out. |
Overlay a dithered version of the output image.
Input Values:
Name | Method | Type | Description |
---|---|---|---|
Active | M/S | Bool | Specify whether triggering the node should activate or deactivate the effect. |
Dither Type | M | - | Specify over what grid the dithering effect is applied. |
Dither Scale | M/S | Int | The value by which the image sampling is scaled. Higher values lead to a courser dithering effect. |
Color | M/S | Color | Specify the main color of the dithered image. |
Opacity | M/S | Float | The opacity of the dithered imaged overlayed on top of the original. |
Is Toggle | M/S | Bool | Specify whether triggering the node a second time disables the effect. |
Transition Seconds | S | Float | The amount of time over which the effect fades in and out. |
Add visual noise to the output image.
Input Values:
Name | Method | Type | Description |
---|---|---|---|
Active | M/S | Bool | Specify whether triggering the node should activate or deactivate the effect. |
Colored | M/S | Bool | Specify whether the noise adds color values to the output image. |
Intensity | M/S | Float | Strength of the noise. Higher leads to a more prominent effect. |
Grain Size | M/S | Float | The size of the noise grains. |
Luminance | M/S | Float | How strongly darkness in the scene contributes to noise. Lower values mean less noise in dark areas. |
Is Toggle | M/S | Bool | Specify whether triggering the node a second time disables the effect. |
Transition Seconds | S | Float | The amount of time over which the effect fades in and out. |
For more details, see the Unity Documentation.
Add bloom to the output image.
Input Values:
Name | Method | Type | Description |
---|---|---|---|
Active | M/S | Bool | Specify whether triggering the node should activate or deactivate the effect. |
Intensity | M/S | Bool | The intensity of the bloom effect. |
Threshold | M/S | Float | The light intensity required for the bloom effect to be applied. |
Diffusion | M/S | Float | How much the bloom effect diffuses from its source. |
Color | M/S | Color | The color of the bloom effect. |
Color Intensity | M/S | Float | The intensity of the color of the bloom. |
Is Toggle | M/S | Bool | Specify whether triggering the node a second time disables the effect. |
Transition Seconds | S | Float | The amount of time over which the effect fades in and out. |
Add a chromatic aberration effect to the output image. The effect causes colors towards the edge of the screen to be pulled apart.
Input Values:
Name | Method | Type | Description |
---|---|---|---|
Active | M/S | Bool | Specify whether triggering the node should activate or deactivate the effect. |
Intensity | M/S | Bool | The intensity of the effect. |
Is Toggle | M/S | Bool | Specify whether triggering the node a second time disables the effect. |
Transition Seconds | S | Float | The amount of time over which the effect fades in and out. |
Add a simulated camera depth of field effect to the output image.
Input Values:
Name | Method | Type | Description |
---|---|---|---|
Active | M/S | Bool | Specify whether triggering the node should activate or deactivate the effect. |
Aperture | M/S | Float | The aperture of the simulated camera. A higher aperture increases the focus depth. |
Focal Length | M/S | Float | The focal length of the simulated camera. A larger focal length increases the specificity of the focus. |
Focus Bone | M/S | - | The humanoid bone on which the simulated camera is focused on. |
Is Toggle | M/S | Bool | Specify whether triggering the node a second time disables the effect. |
Transition Seconds | S | Float | The amount of time over which the effect fades in and out. |
Simulate the effects of a moving physical camera to add a motion blur effect to the output image.
Input Values:
Name | Method | Type | Description |
---|---|---|---|
Active | M/S | Bool | Specify whether triggering the node should activate or deactivate the effect. |
Shutter Angle | M/S | Int | The angle of the shutter of the simulated camera. Larger values create a stronger blur. |
Sample Count | M/S | Int | Number of samples of the scene taken per simulated exposure interval. Higher values create a higher quality affect at the cost of performance. |
Is Toggle | M/S | Bool | Specify whether triggering the node a second time disables the effect. |
Transition Seconds | S | Float | The amount of time over which the effect fades in and out. |
For more details, see the Unity Documentation.
Add a vignette effect to the output image, darkening the edges of the image.
Input Values:
Name | Method | Type | Description |
---|---|---|---|
Active | M/S | Bool | Specify whether triggering the node should activate or deactivate the effect. |
Intensity | M/S | Float | The size of the vignette effect. |
Smoothness | M/S | Float | How sharp the edge of the vignette is. |
Is Toggle | M/S | Bool | Specify whether triggering the node a second time disables the effect. |
Transition Seconds | S | Float | The amount of time over which the effect fades in and out. |
Cyclical color grading of the output image, cycling through the colors of the rainbow.
Input Values:
Name | Method | Type | Description |
---|---|---|---|
Active | M/S | Bool | Specify whether triggering the node should activate or deactivate the effect. |
Speed | M/S | Float | The speed at which the effect cycles through colors. |
Is Toggle | M/S | Bool | Specify whether triggering the node a second time disables the effect. |
Transition Seconds | S | Float | The amount of time over which the effect fades in and out. |
Pixelate the output image.
Input Values:
Name | Method | Type | Description |
---|---|---|---|
Active | M/S | Bool | Specify whether triggering the node should activate or deactivate the effect. |
Pixel Density | M/S | Int | The pixel density in the final image. Lower values lead to higher pixelation. |
Is Toggle | M/S | Bool | Specify whether triggering the node a second time disables the effect. |
Transition Seconds | S | Float | The amount of time over which the effect fades in and out. |
Add an effect to the output image, simulating dirt on the camera.
Input Values:
Name | Method | Type | Description |
---|---|---|---|
Active | M/S | Bool | Specify whether triggering the node should activate or deactivate the effect. |
Threshold | M/S | Float | The threshold of light required to show the effect. |
Saturation | M/S | Float | How much saturation is added to light. |
Intensity | M/S | Float | The intensity of the effect. |
Is Toggle | M/S | Bool | Specify whether triggering the node a second time disables the effect. |
Transition Seconds | S | Float | The amount of time over which the effect fades in and out. |
Add a lens distortion effect to the output image.
Input Values:
Name | Method | Type | Description |
---|---|---|---|
Active | M/S | Bool | Specify whether triggering the node should activate or deactivate the effect. |
Intensity | M/S | Float | The intensity of the effect. |
X/Y Multiplier | M/S | Float | The strength of the distortion along the specific axis. |
Center X/Y | M/S | Float | The center of the distortion along a specific axis. |
Distortion Scale | M/S | Float | The scale of the distortion. Negative values reverse the distortion effect. |
Is Toggle | M/S | Bool | Specify whether triggering the node a second time disables the effect. |
Transition Seconds | S | Float | The amount of time over which the effect fades in and out. |
Add color grading to the output image.
Input Values:
Name | Method | Type | Description |
---|---|---|---|
Active | M/S | Bool | Specify whether triggering the node should activate or deactivate the effect. |
Temperature | M/S | Float | Temperature of the color grading. |
Tint | M/S | Float | Tint of the color grading. |
Hue | M/S | Float | Shift in hue of the output image. |
Saturation | M/S | Float | Saturated of the color graded image. |
Brightness | M/S | Float | Brightness of the color graded image. |
Contrast | M/S | Float | Contrast of the color graded image. |
Is Toggle | M/S | Bool | Specify whether triggering the node a second time disables the effect. |
Transition Seconds | S | Float | The amount of time over which the effect fades in and out. |
Invert the colors of the output image.
Input Values:
Name | Method | Type | Description |
---|---|---|---|
Active | M/S | Bool | Specify whether triggering the node should activate or deactivate the effect. |
Intensity | M/S | Float | The degree of the color inversion. 0 = no inversion, 1 = perfectly inverted. |
Is Toggle | M/S | Bool | Specify whether triggering the node a second time disables the effect. |
Transition Seconds | S | Float | The amount of time over which the effect fades in and out. |
Add a VHS artifact effect to the output image. As a baseline, the effect deforms the image to mimic a CRT monitor and adds line distortions.
Input Values:
Name | Method | Type | Description |
---|---|---|---|
Active | M/S | Bool | Specify whether triggering the node should activate or deactivate the effect. |
Film Grain | M/S | Float | The amount of white noise added to the final image. |
Line Noise | M/S | Float | The amount of static noisy lines in the output image. |
Tape Noise | M/S | Float | The amount of dynamic noisy lines in the output image. |
Interlacing | M/S | Float | The strength of interlacing artifacts. Interlaces stationary and non-stationary lines, causing the image to become fuzzy. |
Twitch Horizontal | M/S | Float | The strength of horizontal twitch artifacts, which causes random sections of the image to twitch horizontally |
Twitch Vertical | M/S | Float | The strength of vertical twitch artifacts, which cause the entire image to randomly shift vertically. |
Is Toggle | M/S | Bool | Specify whether triggering the node a second time disables the effect. |
Transition Seconds | S | Float | The amount of time over which the effect fades in and out. |
Adjust directional light settings.
Input Values:
Name | Method | Type | Description |
---|---|---|---|
Active | M/S | Bool | Specify whether triggering the node should activate or deactivate the effect. |
Intensity | M/S | Float | Intensity of the directional light. |
Color | M/S | Color | Color of the directional light. |
Smooth Milliseconds | M/S | Int | Transition time between the original and target light settings. |
Is Toggle | M/S | Bool | Specify whether triggering the node a second time disables the effect. |
Note Light sources in loaded worlds may mask the effects of the directional light.
Adjust ambient light settings.
Input Values:
Name | Method | Type | Description |
---|---|---|---|
Intensity | M/S | Float | Intensity of the ambient light. |
Color | M/S | Color | Color of the ambient light. |
Smooth Milliseconds | M/S | Int | Transition time between the original and target light settings. |
Note The Ambient Light node is a toggle, and activating it a second time will disable the effect. Light sources in loaded worlds may mask the effects of the ambient light.
Set a skysphere, with depth support. Images must be equirectangular
Input Values:
Name | Method | Type | Description |
---|---|---|---|
Sky Image | M/S | String | |
Depth Image | M/S | String | |
Depth Multiplier | M/S | Float | |
Depth Max Cap | M/S | Float |
Community Note: Any details on the node input is missing. Please let us know if you can add any details.
Nodes for controlling parameters
Set a parameter value.
Input Values:
Name | Method | Type | Description |
---|---|---|---|
Parameter Name | M/S | String | The name of the parameter that will be set to the specified value. |
Parameter Value | M/S | Float | The value to set the parameter to. |
Note Specifying a non-existing parameter in the Parameter Name field will generate a new parameter. Otherwise it will overwrite the existing value.
Perform simple math operations and output the result to a parameter.
Input Values:
Name | Method | Type | Description |
---|---|---|---|
Result Parameter | M/S | String | The name of the parameter to write the output to. |
Value 1 | M/S | Float | The value to the left of the operation. |
Operation | M | - | Which mathematical operation to perform. Offers addition, subtraction, multiplication, division and modulo. |
Value 2 | M/S | Float | The value to the right of the operation. |
Note Division performs float division.
Perform trigonometric math operations and output the result to a parameter.
Input Values:
Name | Method | Type | Description |
---|---|---|---|
Result Parameter | M/S | String | The name of the parameter to write the output to. |
Value | M/S | Float | The value in which to perform the operation. |
Operation | M | - | Which mathematical operation to perform. Offers sine, cosine and tangent. |
Read the microphone volume level at the time of node activation to a parameter.
Input Values:
Name | Method | Type | Description |
---|---|---|---|
Audio Input | M | - | The audio device from which the volume level is read. |
Frequencies | M | - | The frequency band across which the volume is taken.
|
Parameter Name | M/S | String | The name of the parameter to write the output to. |
Community Note: We would like to add more detailed information about the frequency bands for the Frequency settings. If you have more information about this, please let us know.
Copy a specified blendshape value to a parameter.
Input Values:
Name | Method | Type | Description |
---|---|---|---|
Blendshape Name | M/S | String | The name of the blendshape whose value should be copied. |
Parameter Name | M/S | String | The name of the parameter to write the output to. |
Set the specified parameter to a random integer of a defined range.
Input Values:
Name | Method | Type | Description |
---|---|---|---|
Parameter Name | M/S | String | The name of the parameter to write the output to. |
Inclusive Min Value | M/S | Int | The lowest possible value the parameter should be randomized to. |
Inclusive Max Value | M/S | Int | The highest possible value the parameter should be randomized to. |
Read the transform of a humanoid bone to parameters.
Input Values:
Name | Method | Type | Description |
---|---|---|---|
Bone to Read | M | - | The humanoid bone to take the transformation of. |
Value to read | M | - | Which transformation values to copy to a parameter. Can be set to the local or global values of the position, rotation or scale transformations. |
Parameter for X/Y/Z value | M/S | String | The names of the parameters to write the specific transfomration values to. |
Read the transform of a VMC tracker set up through the VMC Tracker Mapping to parameters.
Input Values:
Name | Method | Type | Description |
---|---|---|---|
Tracker to Read | M | - | The tracker to take the transformation of. |
Value to read | M | - | Which transformation values to copy to a parameter. Can be set to the local or global values of the position, rotation or scale transformations. |
Parameter for X/Y/Z value | M/S | String | The names of the parameters to write the specific transformation values to. |
Lerp (Linear Interpolation) is a function that returns location values of a point that is a specified percentage along a line between two known vectors. This can be used to create smooth transitions from one set of values to another.
For instance, if the position of vector a is [5 2 0], and the position of vector b is [10 2 0], a Lerp value of 0.5 returns a vector at position [7.5 2 0], halfway between the two points.
Input Values:
Name | Method | Type | Description |
---|---|---|---|
Lerp Type | M | - | Whether to perform positional interpolation or rotational interpolation. I.e. use Angle if you want to lerp between two angles rather than between two positions. |
Param X/Y/Z Name | M/S | String | The names of the parameters to write the specific transfomration values to. |
Value X/Y/Z 1 | M/S | Float | Positional values of the first vector. |
Value X/Y/Z 2 | M/S | Float | Second vector's positional values. |
Lerp Amount | M/S | Float | Lerp percentage value between 0 and 1. |
Read a component of the current date or time to a parameter.
Input Values:
Name | Method | Type | Description |
---|---|---|---|
Date Component | M | - | Which component of the current date to output to the specified parameter. Only one date/time component can be output at a time. |
Parameter Name | M/S | String | The name of the parameter to write the output to. |
Note Delta time refers to the time between frames at the moment the node is triggered, in seconds.
Nodes to manage numerical arrays. Arrays are indexed collections of numbers, so that each value can be retreived by its position in the array. Note: The index of the first items in 0, not 1. Note: Number array nodes will not work for text arrays or vice versa.
Enqueue a decimal value to a specified array, appending it to the end of the array.
Input Values:
Name | Method | Type | Description |
---|---|---|---|
Array Name | M/S | String | The name of the array that will be appended. |
Value to Enqueue | M/S | Float | The value that will be appended to the array. |
Dequeue a specified array, removing the first value in the array and writing it to a parameter. Empty arrays return 0. If you are iterating over an array, it is better to check the size of the array using Count Array.
Input Values:
Name | Method | Type | Description |
---|---|---|---|
Array Name | M/S | String | The name of the array that will be dequeued. |
Target Parameter | M/S | String | The name of the parameter that the dequeued value will be written to. |
Clears a specified array of all its entries.
Name | Method | Type | Description |
---|---|---|---|
Array Name | M/S | String | The name of the array that will be cleared. |
Set a specified parameter to the number of items in a given numerical array.
Input Values:
Name | Method | Type | Description |
---|---|---|---|
Array Name | M/S | String | The name of the array whose length should be counted. |
Target Parameter | M/S | String | The name of the parameter that the count will be written to. |
Save a specified array to a newline delimitered .txt file.
Input Values:
Name | Method | Type | Description |
---|---|---|---|
File to Save | M/S | String | The full path and name that the file will be saved to. |
Array Name to Save | M/S | String | The name of the array to save. |
Text Parameters allow you to store strings in a parameter to use elsewhere. There are some text-specific nodes you can use with these parameters, like Compare Text and the nodes below.
Set a text parameter value.
Input Values:
Name | Method | Type | Description |
---|---|---|---|
Parameter Name | M/S | String | The name of the parameter that will be set to the specified value. |
Param Value | M/S | String | The value to set the parameter to. |
Load the contents of a text file to a text parameter.
Input Values:
Name | Method | Type | Description |
---|---|---|---|
Text File | M/S | String | The full path and name of the text file to read. If the file does not exist, then nothing happens when the node is activated. |
Result Text Parameter | M/S | String | Name of parameter that the loaded data is stored to. |
Save text or a parameter value to a file. The file will be overwritten if it exists.
Input Values:
Name | Method | Type | Description |
---|---|---|---|
File to Save | M/S | String | The full path and name that the file will be saved to. |
Text to Save | M/S | String | The text to save to the specified file. To save a parameter value, type the parameter name between angle brackets. |
Split a character delimitered text or text parameter value into an indexed Text Array.
Input Values:
Name | Method | Type | Description |
---|---|---|---|
Text to split | M/S | String | The text to split along a delimiter. To split a parameter value, type the parameter name between angle brackets. |
Delimiter | M/S | String | The character that entries in the text are separated with. |
TArray Name for Output | M/S | String | The name of the Text Array for the separated result. |
Nodes to manage text arrays. Text arrays are indexed collections of text values, so that each value can be retreived by its position in the array. Note: The index of the first items in 0, not 1. Note: Text array nodes will not work for number arrays or vice versa.
Enqueue a text value to a specified text array, appending it to the end of the array.
Input Values:
Name | Method | Type | Description |
---|---|---|---|
Array Name | M/S | String | The name of the array that will be appended. |
Text to Enqueue | M/S | String | The value that will be appended to the array. |
Dequeue a specified text array, removing the first value in the text array and writing it to a text parameter. Empty arrays return empty text. If you are iterating over an array it is better to check the size of the array using Count TArray.
Input Values:
Name | Method | Type | Description |
---|---|---|---|
Array Name | M/S | String | The name of the text array that will be dequeued. |
Target Parameter | M/S | String | The name of the text parameter that the dequeued text will be written to. |
Clears a specified text array of all its entries.
Name | Method | Type | Description |
---|---|---|---|
Array Name | M/S | String | The name of the text array that will be cleared. |
Set a specified parameter to the number of items in a given text array.
Input Values:
Name | Method | Type | Description |
---|---|---|---|
Array Name | M/S | String | The name of the text array whose length should be counted. |
Target Parameter | M/S | String | The name of the parameter that the count will be written to. |
Find-operation for Text Arrays. When hte node it activated, ot tries to find the specific text value in the array and returns the index if found. If multiple entries of the same value exist, it returns the index of the first matching entry.
Input Values:
Name | Method | Type | Description |
---|---|---|---|
Array Name | M/S | String | The name of the Text Array that will be searched. |
Value to Find | M/S | String | The text value to search for. |
Find Result Parameter | M/S | String | The name of a numeric parameter where the index will be stored. The node will return -1 if the Value to Find is not found. |
Get the value of a text array at a specified index and return it as a text parameter.
Input Values:
Name | Method | Type | Description |
---|---|---|---|
Array Name | M/S | String | The name of the Text Array to get a value from. |
Array Index | M/S | Int | The index of the value to retreive. If the specified index is out of bounds, then the node returns empty text. |
Result Parameter | M/S | String | The name of the text parameter where the result will be stored to. |
Note Unlike the Dequeue TArray node, the Get TArray node does not automatically remove the retreived entry from the array. To do this, see the RemoveAt TArray node.
Set the value at the specified index of a text array.
Input Values:
Name | Method | Type | Description |
---|---|---|---|
Array Name | M/S | String | The name of the Text Array in which to set a value. |
Array Index | M/S | Int | The index of the entry to set. |
Value | M/S | String | The value to set the entry to. |
Note If the the array index does not exist in the specific array, the array will not be altered. In this case, the Enqueue TArray node should be used.
Remove a specified index of a Text Array. Any indices above the specified index will be moved one forward.
Input Values:
Name | Method | Type | Description |
---|---|---|---|
Array Name | M/S | String | The name of the Text Array from which an index will be removed. |
Array Index | M/S | Int | The index to remove. If the index does not exist ibn the array, it will not be altered. |
Load a newline-delimitered text file to a Text Array.
Input Values:
Name | Method | Type | Description |
---|---|---|---|
Text File | M/S | String | The full path and name that the file will be loaded. |
Result Text Array | M/S | String | The name of the text array to load the data to. An existing array will be cleared first. |
Save the contents of a Text Array to a newline-delimtered file. The file will be overwritten if it exists.
Input Values:
Name | Method | Type | Description |
---|---|---|---|
File to Save | M/S | String | The full path and name that the file will be saved to. |
TArray Name | M/S | String | The name of the text array that will be saved. |
Dictionaries are unordered containers with key/value pairs. Dictionary entries do not have an index. Dictionaries can be used, for example, to store chatter information by providing the viewer's name as a key and a text value for relevant information for that chatter. Multiple values per chatter can be specified by delimitering the text, and retreived with the Split Test Param node.
Set the value at a specified key. If the key does not exists, it will be created.
Input Values:
Name | Method | Type | Description |
---|---|---|---|
Dictionary Name | M/S | String | The name of the dictionary that should be modified. |
Key Name | M/S | String | The key for the specified values. |
Value | M/S | String | The value that should be set in the dictionary at the specifed key. |
Get the value at a specified key.
Input Values:
Name | Method | Type | Description |
---|---|---|---|
Dictionary Name | M/S | String | The name of the dictionary that should be searched. |
Key Name | M/S | String | The key from which the value should be retreived. |
Output Text Param Name | M/S | String | The name of the parameter that the dictionary value should be copied to. |
Note Unlike the array dequeue functions, this does not remove the entry from the dictionary.
Clear the specified dictionary, deleting it entirely.
Input Values:
Name | Method | Type | Description |
---|---|---|---|
Dictionary Name | M/S | String | The name of the dictionary that should be deleted. |
Pack a specified dictionary and convert it to a single Base64-encoded text value.
Input Values:
Name | Method | Type | Description |
---|---|---|---|
Dictionary Name | M/S | String | The name of the dictionary that should be packed. |
Target Parameter | M/S | String | The name of the parameter that the packed text value will be stored to. |
Unpack Base64-encoded data to a dictionary.
Input Values:
Name | Method | Type | Description |
---|---|---|---|
Packed Data | M/S | String | The packed Base64-encoded data of a dictionary. |
Target Dictionary | M/S | String | The name of the dictionary that the unpacked data will be stored to. |
Deserialize a JSON text string to a dictionary.
Input Values:
Name | Method | Type | Description |
---|---|---|---|
Json Data | M/S | String | The JSON string of a dictionary. |
Target Dictionary | M/S | String | The name of the dictionary that the deserialized JSON string will be stored to. |
Nodes related to VR tracking
Switch to the specified Steam VR calibration slot. This node will typically be used when switching between models with different calibrations.
Input Values:
Name | Method | Type | Description |
---|---|---|---|
Slot | M/S | Int | The index of the calibarion slot to switch to. |
Switch to the specified Steam VR tracker mapping slot. This node will typically be used when switching between tracker configurations (e.g. full-body to upper-body only).
Input Values:
Name | Method | Type | Description |
---|---|---|---|
Slot | M/S | Int | The index of the tracker mapping slot to switch to. |
Run the Steam VR calibration through the node graph rather than through the Tracking Layers menu.
Input Values:
Name | Method | Type | Description |
---|---|---|---|
Mode | M/S | Int | Specify whether to calibrate with the calibration dialogue, or to calibrate instantly without opening the calibration dialogue. It is recommended to add a Wait node before this node if Instant Calibration is selected, to ensure you time to assume a T-pose. For the socket input: 0 = Calibration Dialogue, 1 = Instant Calibration. |