Skip to content

CVR Parameter Stream

This component allows to write information from the game into Animator's parameters.

Some of the types may require the Parameter Stream to be place on a certain spot within the hierarchy. Check the description on each category for more information.


Parameter Stream Types

Since there is a significant amount of parameters, they were split into several categories. For better navigation use the links on the right panel of the window.

General

The general types represent general information about the game.

Requirements:

  • None
Stream Type Param Type Value Range Description
Time Seconds Float [0.0] The current System time in seconds since midnight including milliseconds
Time Seconds Utc Float [0.0] The current System UTC time in seconds since midnight
Device Mode Bool [false, true] Checks if you are currently in VR. true = VR
Headset On Head Bool [false, true] Checks if your headset is currently on your head
Game Focused Bool [false, true] Checks if your game is currently focused.
Only available in nightly builds atm
Zoom Factor Float [0.01.0] Zoom input level (desktop only). 0 = max zoom
~~Zoom Factor Curve~~ deprecated Float [0.01.0] Use Zoom Factor
Time Since Headset Removed Float [0.0] Time in seconds since the headset was removed
Time Since Game Unfocused Float [0.0] Time in seconds since game was unfocused.
Only available in nightly builds atm
Time Since Local Avatar Loaded Float [0.0] Time in seconds since local avatar loaded
Local World Download Percentage Float [0.01.0] Download progress for the next world
Local FPS Float [0.0] Local player's current FPS
Local Ping Int [0] Local player's ping to server
Local Player Count Int [0] Number of players in current instance
Local Time Since First World Join Float [0.0] Time since first world joined after game start
Local Time Since World Join Float [0.0] Time since last world joined
Local Player Muted Bool [false, true] Whether the local player is muted
Local Player Hud Enabled Bool [false, true] Whether the HUD is enabled for the player
Local Player Nameplates Enabled Bool [false, true] Whether nameplates are visible
Local Player Height Float [0.0] Height of player in centimeters
Local Player Left Controller Type Int [09] Type of left VR controller Controller Values
Local Player Right Controller Type Int [09] Type of right VR controller Controller Values
Local Player Full Body Enabled Bool [false, true] Whether full body tracking is enabled
Current Instance Type Int [06] Current instance type Instance Values

Controller Type Mapping

Controller Type Int Value
None 0
Other 1
Vive 2
MixedReality 3
HpMotion 4
Index 5
Oculus 6
Pico 7
XRHand 8
ViveCosmos 9

Instance Type Mapping

Instance Type Int Value
Public 0
FriendsOfFriends 1
Friends 2
Groups 3
EveryoneCanInvite 4
OwnerMustInvite 5
FriendsOfGroup 6

Eye Tracking

The Eye Tracking types represent information about the avatar eye movement and blinking.

Requirements:

  • None
Stream Type Param Type Value Range Description
Eye Movement Left X Float [-1.01.0] Horizontal movement of the left eye
Eye Movement Left Y Float [-1.01.0] Vertical movement of the left eye
Eye Movement Right X Float [-1.01.0] Horizontal movement of the right eye
Eye Movement Right Y Float [-1.01.0] Vertical movement of the right eye
Eye Blinking Left Float [0.01.0] Blink progress of the left eye. 0:open, 1:closed
Eye Blinking Right Float [0.01.0] Blink progress of the right eye. 0:open, 1:closed

Lip Sync

The Lip Sync types represent information about the avatar lip sync, which is driven by the oculus lipsync SDK.

If you want to access the current viseme index, you can check the VisemeIdx Core Parameter

Requirements:

  • None
Stream Type Param Type Value Range Description
Viseme Level Float [0.01.0] Voice loudness

Input

The Input types represent information about the current input you're providing to the game.

Requirements:

  • None
Stream Type Param Type Value Range Description
Trigger Left Value Float [0.01.0] Left trigger pressure
Trigger Right Value Float [0.01.0] Right trigger pressure / Left mouse button
Grip Left Value Float [0.01.0] Left grip pressure
Grip Right Value Float [0.01.0] Right grip pressure / Right mouse button
Gripped Object Left Bool [false, true] Whether object is grabbed in left hand
Gripped Object Right Bool [false, true] Whether object is grabbed in right hand or desktop
Input Movement X Float [-1.01.0] Horizontal movement input. -1:left
Input Movement Y Float [-1.01.0] Vertical movement input. -1:down
Input Look X Float [-1.01.0] Horizontal look input. -1:left
Input Look Y Float [-1.01.0] Vertical look input. -1:down
Input Jump Bool [false, true] Jump input

Avatar

The Avatar types represent information about the avatar you're currently wearing.

Requirements:

  • None
Stream Type Param Type Value Range Description
Avatar Height Float [0.0] The viewpoint height of the current avatar in meters
Avatar Upright Float [0.01.0] How upright the avatar stands. 0: flat, 1: fully upright

The Menu types represent information about the state of the in-game menus.

Requirements:

  • None
Stream Type Param Type Value Range Description
Is Any Menu Open Bool [false, true] Any menu currently open
Is Main Menu Open Bool [false, true] Whether the main menu is open
Is Quick Menu Open Bool [false, true] Whether the quick menu is open

Seed

The Seed types represent information that allows deterministically get values depending on another value.

Requirements:

  • ⚠️ Only works on Avatars and Props
Stream Type Param Type Value Range Description
Seed Owner Int [-2,147,483,6482,147,483,647] Deterministic seed value from prop spawner or avatar wearer
Seed Instance Int [-2,147,483,6482,147,483,647] Deterministic seed value from a prop instance ID

User

The User types allows to get information about the current user related to a prop/avatar

Requirements:

  • ⚠️ Only works on Avatars and Props
Stream Type Param Type Value Range Description
is Owner Bool [false, true] Whether the observer is the spawner/wearer of a prop/avatar

Transform

The Transform types represent information about the transform where the Parameter Stream component is placed

Requirements:

  • ⚠️ This will provide the information about the transform where the Parameter Stream was added to
Stream Type Param Type Value Range Description
Transform Global Position X Float [-∞] Global X position
Transform Global Position Y Float [-∞] Global Y position
Transform Global Position Z Float [-∞] Global Z position
Transform Global Rotation X Float [??] Global X rotation (Euler angle)
Transform Global Rotation Y Float [??] Global Y rotation (Euler angle)
Transform Global Rotation Z Float [??] Global Z rotation (Euler angle)
Transform Local Position X Float [-∞] Local X position
Transform Local Position Y Float [-∞] Local Y position
Transform Local Position Z Float [-∞] Local Z position
Transform Local Rotation X Float [??] Local X rotation (Euler angle)
Transform Local Rotation Y Float [??] Local Y rotation (Euler angle)
Transform Local Rotation Z Float [??] Local Z rotation (Euler angle)

Fluid Volume

The Fluid Volume types represent information about the fluid volume interactions with your avatar or PhysicsInfluencer

Requirements on Avatar:

  • None

Requirements on Physics Influencer (Worlds/Props):

  • ⚠️ This will provide the information about the PhysicsInfluencer that is on the same or on a parent GameObject as the Parameter Stream.
Stream Type Param Type Value Range Description
Fluid Volume Submerged Bool [false, true] Whether player/influencer is submerged in fluid
Fluid Volume Depth Float [0.01.0] Degree of submersion. 1.0 = completely submerged
Fluid Volume Time Since Entered Float [0.0] Time since fluid was entered (seconds)
Fluid Volume Time Since Exit Float [0.0] Time since fluid was exited (seconds)

Input Car

The Input Car types represent information about the inputs that are used for driving cars. Even without being in a car these inputs set the values.

Requirements:

  • None
Stream Type Param Type Value Range Description
Input Car Steering Float [-1.01.0] Steering input from VR, keyboard, or gamepad
Input Car Accelerate Float [0.01.0] Acceleration input
Input Car Brake Float [0.01.0] Brake input
Input Car Handbrake Float [0.01.0] Handbrake input
Input Car Boost Float [0.01.0] Boost input

Rigidbody

The Rigidbody types represent information about a Rigidbody

Requirements:

  • ⚠️ This will provide the information about the Rigidbody that is on the same or in a parent GameObject relative to the Parameter Stream component
Stream Type Param Type Value Range Description
Speed Float [0] Speed of the Rigidbody in m/s
Velocity X Float [-∞] Rigidbody velocity X (world space)
Velocity Y Float [-∞] Rigidbody velocity Y (world space)
Velocity Z Float [-∞] Rigidbody velocity Z (world space)
Local Velocity X Float [-∞] Rigidbody velocity X (local space)
Local Velocity Y Float [-∞] Rigidbody velocity Y (local space)
Local Velocity Z Float [-∞] Rigidbody velocity Z (local space)
Acceleration Float [0] Magnitude of Rigidbody acceleration in m/s²
Acceleration X Float [-∞] Rigidbody acceleration X (world space)
Acceleration Y Float [-∞] Rigidbody acceleration Y (world space)
Acceleration Z Float [-∞] Rigidbody acceleration Z (world space)
Local Acceleration X Float [-∞] Rigidbody acceleration X (local space)
Local Acceleration Y Float [-∞] Rigidbody acceleration Y (local space)
Local Acceleration Z Float [-∞] Rigidbody acceleration Z (local space)

WheelHubController

The WheelHubController types represent information about a WheelHubController

Requirements:

  • ⚠️ This will provide the information about the WheelHubController that is on the same or in a parent GameObject relative to the Parameter Stream component
Stream Type Param Type Value Range Description
Current Speed Float [-∞] Forward speed of the wheel hub in m/s; negative means reversing
Speed Factor Float [0.0?] Normalized speed (0 to max speed)
Is Grounded Bool [false, true] Whether any wheel is grounded

WheelController

The WheelController types represent information about a WheelHubController

Requirements:

  • ⚠️ This will provide the information about the WheelController that is on the same or in a parent GameObject relative to the Parameter Stream component
Stream Type Param Type Value Range Description
Is Grounded Bool [false, true] Whether this wheel is grounded
RPM Float [??] Current wheel RPM

Damage System

The Damage System types represent information relative to the ObjectHealth.

Requirements:

  • ⚠️ Only works on Avatars and Props

Requirements for Props:

  • ⚠️ This will provide the information about the ObjectHealth that is on the same or in a parent GameObject relative to the Parameter Stream component
Stream Type Param Type Value Range Description
Current Health Float [0*] Health value
Current Armor Float [0*] Armor value
Current Shield Float [0*] Shield value

* The max value is configured by the world's combat system


The NavMeshAgent types represent information about a NavMeshAgent.

Requirements:

  • ⚠️ This will provide the information about the NavMeshAgent that is on the same or in a parent GameObject relative to the Parameter Stream component
Stream Type Param Type Value Range Description
Speed Float [0.0] NavMeshAgent's current speed
Remaining Distance Float [0.0] Remaining distance to the path target
Has Path Bool [false, true] Whether a path to the target exists
On OffMeshLink Bool [false, true] Whether the agent is on an OffMeshLink
OffMeshLink Type Int [0, 1, 2] 0: Manual, 1: DropDown, 2: JumpAcross

Leg

The Leg types represent information about the CVRLeg component

Requirements:

  • ⚠️ This will provide the information about the CVRLeg that is on the same or in a parent GameObject relative to the Parameter Stream component
Stream Type Param Type Value Range Description
Is on ground Bool [false, true] Whether the leg is in contact with the ground

Value Application Expressions

These define how the streamed value is applied to the animator parameter (result is final value written):

Arithmetic Operations

Expression Result Description
Override result = value Replace current result with value
Add To Current result = curr_value + value Add value to current parameter
Add To Static result = static_value + value Add value to a fixed static value
Subtract from Current result = curr_value - value Subtract value from current parameter
Subtract from Static result = static_value - value Subtract value from static value
Subtract with Current result = value - curr_value Subtract current parameter from value
Subtract with Static result = value - static_value Subtract static value from value
Multiply with Current result = value * curr_value Multiply value with current parameter
Multiply with Static result = value * static_value Multiply value with static value
Mod result = value % static_value Modulo operation
Pow result = value ^ static_value Exponentiation (power)

Comparison Operations

Expression Result Description
Compare Less Than result = 1.0 if (value < static_value) else 0.0 Is value less than static?
Compare Less Than Equals result = 1.0 if (value <= static_value) else 0.0 Is value less or equal static?
Compare Equals result = 1.0 if (value == static_value) else 0.0 Is value equal to static?
Compare More Than Equals result = 1.0 if (value >= static_value) else 0.0 Is value greater or equal static?
Compare More Than result = 1.0 if (value > static_value) else 0.0 Is value greater than static?

Notes & Tips

  • Parameter names are CASE SENSITIVE
  • Streamed parameters update every frame, manual changes will get overwritten