Cardboard Controls+ is all you need to develop the best Cardboard games in Unity. These scripts enhance Google's official Cardboard SDK for Unity with improvements such as discrete magnet control, raycast data, and event-driven architecture. Stop limiting your creative options!
Google's SDK only has one hook into the magnet: bool CardboardTriggered
. It's available for one frame that you have to waste cycles polling for. Instead of limiting yourself to that, you can now utilize C# methods and delegates for:
- Magnet down
- Magnet up
- Magnet click
- Boolean if the magnet is held
- Seconds magnet held for
This expands your opportunities, allowing interactions like holding the magnet to move and clicking to interact to provide a more natural experience.
There are also methods and delegates for:
- Tilting the device, as used in the official Cardboard app to navigate menus
- Gaze raycasting, capturing what you look at and for how long
These helpers let you focus on what makes your game cool instead of boilerplate code.
If you got this from the Asset Store then I've already packaged a version of the prerequisites for you.
If not then you'll need to import the base Cardboard SDK if you haven't already:
- Download CardboardSDK.unitypackage from Google's repository.
- Import it in your scene
- Use the
CardboardMain
prefab for your camera
If you're working on iOS then you might want to look into replacing Google's SDK with rsanchezsaez's CardboardSDK-iOS. It ports the Android code to iOS with nearly feature parity.
If neither of those work, you might want to look into the Durovis Dive Plugin Package as a last resort. You will also not be able to use controls that rely on Google's API, such as the Raycast Gaze.
When you import the latest package, just add the CardboardControlManager
prefab to the root of your scene. Now you can start using the API which is documented in the DemoScene code.