As an Associate of different 3rd parties, this website earns from qualifying purchases & contains affiliate links: learn more in the footer.

AR + VR: Mobile Mixed Reality for Unity — Google Cardboard XR Plugin & Pseudo MR Camera

AR + VR: Mixed Reality (MR) Camera — Unity Asset that uses Google Cardboard XR Plugin (formerly Google VR SDK) to display 2D or 3D objects as though they were in the real world mixing Virtual Reality and Pseudo Augmented Reality. It’s Unity MR Camera for 90% of all Mobile Devices.

Unity Asset Store — Download Button

Note: The asset is downloaded into your project as a Template (Complete Project) and has free external dependencies. Read the “Getting Started” Tutorial to Import it correctly.

Check out the Support section if you need help.

Features of AR + VR: Mixed Reality (MR) Camera

Bring the enchanting Power of Mixed Reality into your amazing Game or App:

  • Cross-platform Mobile MR Camera: iOS, Android.
  • 3-minute installation for your own AR + VR Scene.
  • Covering a wide range of mobile devices.
  • Google Cardboard XR Plugin (formerly Google VR SDK) to implement Virtual Reality.
  • No using of other AR Engines like Unity AR Foundation, ARCore, ARKit, Vuforia, etc.
  • Optimized Gaze-based Reticle Pointer based on TextMesh Pro (2 Non-Animated States).
  • VR Mode On/Off During Scene Switching: only the Demo Scene runs in VR mode.
  • Real-Time AR Shadows.
  • Editor Testing (Non-VR).

Mixed Reality adds virtual elements to the physical world and surrounds you with game objects, being in full immersion with a VR Headset.

Package Contains

  • Demo Scene: Interaction with Objects in Mixed Reality (VR + AR).
  • Menu Scene.
  • Permission Scene with Camera Permission Request using free Native Camera.
  • Loading Screen to switch scenes seamlessly.
  • Camera Feed on Background (docs).

Check the Map of Unity Assets to choose the product that best suits your needs.

Tutorial

This tutorial is relevant for MR Camera 5.0.
Tutorial for the previous version can be found only in the asset folder.

Getting Started with AR + VR: Mixed Reality (Unity MR)

Folders & Files in the package by default:

  • Makaka Games;
  • Plugins;
  • XR.

Steps

If you have any issues with the first launch then just Reach Support and Get Help.

  1. Create a New Unity Project with Unity 6000.3.8 & the “Universal 3D” Template.
  2. File > Build Profiles > Platforms > Android, iOS > Switch Platform.
  3. Next Packages must be manually installed with Git & Unity Package ManagerI recommend using indicated versions to get a guaranteed experience:
    1. Native Camera 1.5.0.
      Hash value for installing: 72f5ebba26c219b4c4cda202bff2f59bfdaa47f8
    2. Google Cardboard XR Plugin for Unity 1.32.0.
      Hash value for installing: e6bffbb2d3a652e6c052d93cc4b3f29817d6949a
  4. Download and import AR + VR: Mixed Reality (MR) into Unity.
    1. Go through the Warning Windows:
      1. Click “Import” to overwrite the Project Settings with predefined ones.
      2. Click “Install/Upgrade” for Unity Package Manager dependencies.
    2. “Import Unity Package” window:
      1. Click “Next”.
      2. Click “Import”.
  5. Next Packages are provided with Unity Package Manager, and they are already installed for this Asset by default. If packages are missing (Warning Window did not appear) then install them again with Package Manager:
    1. uGUI 2.0.0:
      1. Always Required: Window > TextMeshPro > Import TMP Essential Resources.
    2. Input System 1.18.0.
  6. Reopen Unity Project.
  7. Open Scene: Makaka Games > MRCamera > Scenes > Demo.
  8. Required for Android:
    • Edit > Project Settings > Player > Android > Other Settings > Android Application Configuration:
      • Application Entry Point:
        • Activity > Check.
        • GameActivity > Uncheck.
          .
      • Target Architectures:
        • ARMv7 > Check
        • ARM64 > Check.
  9. Test in the Unity Editor or Build.

Testing and Building

You can test the project in the Unity Editor without Stereo View this way:

  • Right Mouse Button for Camera Movement.
  • Left Mouse Button for Simulating of Pressing the Cardboard trigger button this frame (Google.XR.Cardboard.Api.IsTriggerPressed — tested for Screen Touches on Mobile Device):
    • When a click is performed, the OnClick Unity Event is invoked if the Reticle Pointer is hovering over a VR Object (a GameObject that contains the ObjectControllerCustom.cs component), allowing you to assign a different method to each VR Object.

Use Fullscreen of Game View in Unity Editor while testing to get a seamless experience.

To understand the state of Reticle Pointer, you can check the Is Debug Logging flag in the CameraPointerCustom.cs component on the Game Object called Main Camera.

Additional information about the Google Cardboard XR Plugin can be found in the Quickstart Guide. If you experience any issues on its side, then try to Search Solutions on GitHub.

Tested with Platforms

Mobile Platforms:

  • iOS on iPhone 15;
  • Android on Samsung Galaxy A71.

Limitations

Unity MR Camera requires the Rear Camera on the Phone, considering the following:


Support

First, read the latest docs online.
If it didn’t help, get the support:

Changelog

Check the current version of MR Camera on the Asset Store.
The latest versions will be added as soon as possible.

5.0 (Unity 6.3):

Features:

  • VR Mode On/Off During Scene Switching:
    • Camera Permission Scene (Non-VR).
    • Menu Scene (Non-VR) — New.
    • Demo Scene (Mixed Reality: VR + AR) — separate Red VR object that can stop VR Mode and load the Menu Scene — the Native “Close Button” in VR Mode performs the same logic.

Improvements:

4.0:

Improvements:

3.3:

Improvements:

3.2:

Improvements:

3.0:

Improvements:

Fixes:

  • Rendering of Gaze-based Reticle Pointer: change Image component to TextMesh Pro.

2.1:

2.0:

Unity Assets

Support for Unity Assets

I am Andrey Sirota, Founder of Makaka Games and full-time Publisher on the Unity Asset Store. First, read the latest docs online. If it didn’t help, get the support.
Back to top button