Holoboard Controller Prefab
This is a brief introduction to the HoloboardController prefab and how it can be configured to suit your specific needs.
This prefab is responsible for Holoboard Controller input, right from establishing connection to the controller and communicating with it throughout the lifetime of the application.
A singleton reference to the underlying HoloboardController script can be obtained at runtime anywhere after the Awake() function by referencing to HoloboardController.Instance static variable.
More detailed documentation of the HoloboardController script can be found at here.
How To Use
Simply drag and drop this component in a scene and enable Connect On Awake boolean in the inspector to initiate connection with the controller.
Alternatively, you can call HoloboardController.Instance.InitiateConnection() manually whenever you want to manually initiate connection with the Controller.
Find more documentation at here.
Controller Interactions
Implementing interactions using the Holoboard Controller is very easy. All callbacks from the controller are recieved using standard C# Actions.
The Holoboard interaction system has been divided into two broad categories :
Object Specific Callbacks
This mode of interaction is useful for interacting directly with GameObjects in the AR Scene. This is useful for cases when the user triggers an interaction while gazing a particular gameObject (or Canvas UI). This uses the Actions from the ARinteractible class.
This approach has been described here.
You can find more detailed example in the MidLevel_InteractibleExample gameObject in the BasicExample scene.
Global Callbacks
This mode of interaction is useful for interacting directly with application irrespective of the application state. This is useful for triggering global events such as Play/Pause of applications, increasing/decreasing volume and brightness, recentering, etc. This uses the Actions from the ControllerCallbacks class.
This approach has been described here.
You can find more detailed example in the LowLevel_InteractibleExample gameObject in the BasicExample scene.