Controller pointer is implemented by WaveVR_ControllerPointer script whose properties describe what the point looks like and what it behave.

It is a point at the end of controller beam (e.g. a cube, a blob, a menu item, etc.) to show what object the beam of controller point at.

The goal of this script likes the reticle of Gaze to draw the focus of controller beam for user in the VR world.

Sample Scene

  • Controller_Test: in Assets/Samples/Controller_Test/Scene/
  • ControllerInputModule_Test in Assets/Samples/ControllerInputModule_Test/Scene/
  • HelloVR: in Assets/Samples/HelloVR/


  • The script WaveVR_ControllerPointer.cs is located in Assets/WaveVR/Scripts/ControllerModel/.
  • The appearance of the pointer is shaped by the material ControllerPointer.mat which is located in Assets/WaveVR/Resources.
  • The controller pointer shader WaveVR_CtrlrPointer.shader is located in Assets/WaveVR/Resources.
  • The pointer Prefabs (ControllerPointerL, ControllerPointerR) of controller are located in Assets/WaveVR/Prefabs.

You can find them within the controller Prefabs of Generic_MC_L and Generic_MC_R. Assets/WaveVR/Extra/GenericModel/Finch/Resources/Controller

Both ControllerPointerL and ControllerPointerR contain the WaveVR_ControllerPointer script component and mesh component with shader.

How to Use

The following is the property list of the controller pointer.

  • Show Controller pointer

Check to show controller pointer, developer can set the value of ShowPointer in runtime.

  • device

Listen to device, for example, it is Non-Dominant in the picture.

  • Use system config

If this option is checked, controller pointer is defined by system config. default is checked.

If Use system config isn’t checked, controller loader will provide more options to developer as

  • controller pointer will blink

The controller pointer will blink if checked. default is false.

  • Minimum pointer diameter

Minimum pointer, default is 0.01f.

  • Use default pointer texture

The controller pointer will use texture provided by WaveVR SDK. default is checked.

If Use default pointer texture isn’t checked, developer will select Custom pointer texture. Developer is able to use it to design your pointer image.