VE2 provides a pre-built player rig designed to interact with VE2 components in either VR or 2D mode. This player rig also supports automatic networking out of the box!
| Control | 2D Mode | VR Mode |
|---|---|---|
| Toggle Main Menu | Tab key | Left controller: menu button (tap) |
| Look around | Mouse movement | Head movement |
| Continuous movement | WASD keys | Movement Tool Drag move: extend your hand, hold the A/X button while bringing your hand back in towards your body, release the grip button, and repeat |
| Change height | Left control (crouch) | Same as above, but holding the B/Y button rather than the grip button, and moving your hand up and down, rather than in and out |
| Instant movement | N/A | Hold the thumbstick upwards, aim the teleport ray, and release the stick to teleport) |
| Click on UI elements | Left click | Trigger |
| Activate Activatable | Left click | Trigger |
| Grab/Drop Grabbables | Left click | Grip button |
| Zoom Grabbable | Scroll wheel | FreeHand Tool: Move hand it and out |
| Toggle Inspect Mode | Right click | N/A |
| Rotate in Inspect Mode | Mouse movement | N/A |
| Activate Handheld Activatables | F key while grabbing | Trigger while grabbing |
| Reset VR view | N/A | Left controller, menu button (hold) |
| Switch 2D/VR mode | Left Control + H | N/A |
To bring the VE2 player rig into your scene, you should first delete the main scene camera, and then create a player spawner. You can do this by right-clicking in the hierarchy, navigating to “VE2” and clicking “Player Spawner”

The position/rotation of the player spawner in the scene (visualised by a transparent player preview, as seen in the image on the right) will define the player’s start position/rotation.
It is important to note, this is not the player itself. The player rig will only be instantiated into the scene at runtime.
The player spawner also comes with a primary and secondary UI. For more information on these. see the page here:

The V_PlayerSpawner component provides a range of configurability. a range of UnityEvent callbacks are exposed, allowing you to detect when the player changes to/from VR mode, resets their VR view, or triggers certain movement actions. The most important configurations, however, are typically layers
<aside> ⚠️
Note: Before doing this, you should already have configured layers for VE2. See the Installation and Setup page for instructions.
</aside>
Interactable Layers: This defines the layers the player interactor raycasts can hit (in 2D, this is a single raycast from the reticule, in VR, there are two raycasts, one from each hand). GameObjects on these layer that are not interactable will block raycasts, and objects on these layers that are interactable will be detected by the interactors. Additionally, any pressure plates should be within these layers to be detectedTraversable Layers: This defines the layers the player can move around on. Any walkable surfaces in your scene should be on one of these layers, otherwise the player will not be able to teleport, drag move, or jump.Collision Layers: This defines the layers the player will collide with. Any GameObjects you do not wish your player to be able to pass through (e.g, walls, floors, solid objects) should be on these layersCulling Mask: This is used in the same way as a typical Unity camera’s culling mask. It defines which layers will be rendered by the camera on the VE2 player rig