Movement Materials
Movement materials let you define unique physics and audio-visual properties for how colliders interact with avatars in your space.
Getting Started
-
Create a new movement material by right clicking in the project view and selecting
Create > Spatial > MovementMaterial
. You can also find it in theAssets > Create
menu at the top of the editor. -
The default movement material that’s applied to every object can be assigned in the Environment Override Settings component.
-
If you would like to override the default movement material for a specific object, then assign a movement material to the specific collider using the
Movement Material Surface
component.
Movement Events
Property | Function |
---|---|
Footstep Walk | When the avatars foot touches the ground while walking |
Footstep Run | When the avatars foot touches the ground while running |
Jump | When the avatar jumps while grounded |
Land | When the avatar lands with enough vertical velocity |
Stop | When the avatar decelerates very quickly in a single frame. |
Takeoff | When the avatar accelerates very quickly in a single frame. |
How To Setup Particle Systems
Important
For every movement event with VFX, the prefab will be repositioned and a ParticleSystem.Emit(1)
call is made on the particle system.
This means your particles will not be “played” like normal. A single particle will be emitted from the parent system. This lets us use a single particle GameObject per event/material across all avatars keeping the system extremely lightweight.
Use World Space
Because the particle prefab is re-positioned every time we emit, your systems need to simulate in World Space
How To Use Child Emitters
Because we Emit(1)
instead of Play()
, child particle systems will not play by default. You can trigger them by assigning them as SubEmitters
on Birth
.