Stereoscopic Rendering
Last updated
Last updated
*For guidance on the latest version, refer to the GitHub page.
Stereoscopic rendering is the core functionality provided by HoloKit SDK. It can transform a screen AR project into a stereo one by using the stereoscopic camera prefab provided by the SDK.
This section is a tutorial on how to implement the sample stereoscopic rendering project. You can directly import this sample by clicking the import button as shown below.
After you import the sample, you can have a look at the prefabs and scripts used in the sample scene.
If you want to build everything from scratch, please follow the rest of the section.
There is a script called HoloKitDriver
which initializes some fundamental functinalities at the beginning of the application life cycle. For any HoloKit project, we first need to drag the HoloKitDriver
prefab into the scene. We can find the HoloKitDriver
prefab in Packages->HoloKit SDK->Assets->Prefabs
.
We first add ARSession
and XROrigin
objects into the scene as a normal ARFoundation project.
Then delete the MainCamera
object under the XROrigin
, and replace it with a HoloKitCamera
prefab. You can find the HoloKitCamera
prefab in Packages->HoloKit SDK->Assets->Prefabs
.
After replacing, please make sure the Camera GameObject
field of the XROrigin
is assigned with the new HoloKitCamera
.
For a HoloKit application, it can switch between two render modes, which are Mono
mode and Stereo
mode. Under Mono
mode, the app should look exactly like a normal screen AR app. Under Stereo
mode, two viewports are rendered on the screen and you can insert your iPhone into a HoloKit to experience stereoscopic AR.
We need some basic UI to control the switching between two render modes. There is already a default UI canvas in the package which does the job. Go to Packages->HoloKit SDK->Assets->Prefabs->UI
and find the HoloKitUICanvas
prefab. Drag the prefab into the scene. Also add an EventSystem
object into the scene thus we can press the button on the canvas.
If you are using Unity New Input System, don't forget to upgrade your EventSystem
to fit it.
Under Stereo
mode, the screen orientation is locked to be LandscapeLeft
. Under Mono
mode, the screen orientation is really up to you. It is exactly like a normal screen AR app. But in this tutorial, let's make things easy and lock the screen orientation to be LandscapeLeft
.
Believe it or not, you've done everything to setup a basic HoloKit application. The only problem is that there is no object in the scene so you cannot see anything. Let's add a cube into the scene and set its position to (0, 0, 5).
Now everything is ready. Build the project and you should see a cube in front of you. Press the upper-right button to switch to Stereo
mode and insert your iPhone into a HoloKit. Put the HoloKit on and move around, you should see the cube fixed in that position.