> For the complete documentation index, see [llms.txt](https://docs.holokit.io/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.holokit.io/creators/unity-sdk/stereoscopic-rendering.md).

# Stereoscopic Rendering

\*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.

<figure><img src="/files/SXV348KDi1ZUzkOViaJN" alt=""><figcaption><p>Click the import button to import the stereoscopic rendering sample</p></figcaption></figure>

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.

## Initialize HoloKit SDK

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`.

<figure><img src="/files/o24LqhMe8vEYaFXDSFS2" alt=""><figcaption><p>Drag HoloKitDriver prefab into the scene</p></figcaption></figure>

## Setup HoloKit Camera

We first add `ARSession` and `XROrigin` objects into the scene as a normal ARFoundation project.

<figure><img src="/files/3NE1SM4YQxbAGlQp1pTb" alt=""><figcaption><p>Add ARSession and XROrigin into the scene</p></figcaption></figure>

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`.

<figure><img src="/files/MU4Y1mb7SXSYVNlTLD9D" alt=""><figcaption><p>Replace the default MainCamera with HoloKitCamera</p></figcaption></figure>

After replacing, please make sure the `Camera GameObject` field of the `XROrigin` is assigned with the new `HoloKitCamera`.

<figure><img src="/files/RVZoSefwmzsTPR7xTEGD" alt=""><figcaption></figcaption></figure>

## Add The Default HoloKit UI

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.

<figure><img src="/files/d4B7o2U95Jqn8refgRYn" alt=""><figcaption><p>A screenshot of HoloKit App under Mono mode</p></figcaption></figure>

<figure><img src="/files/PzOwY1Rn07JCvy8Cgvz1" alt=""><figcaption><p>A screenshot of HoloKit App under Stereo mode</p></figcaption></figure>

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.

<figure><img src="/files/KKOZEd4n1c2vMDKI4OBP" alt=""><figcaption><p>Add HoloKitUICanvas and EventSystem into the scene</p></figcaption></figure>

If you are using Unity New Input System, don't forget to upgrade your `EventSystem` to fit it.

## Set Screen Orientation

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`.

<figure><img src="/files/YJoPJj4WsS1B3nhY4Whl" alt=""><figcaption><p>Set Screen Orientation to LandscapeLeft in Project Settings</p></figcaption></figure>

## Add a Cube

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).

<figure><img src="/files/KkV0rcrBjv0iFeY0NjiK" alt=""><figcaption><p>Add a cube into the scene</p></figcaption></figure>

## Build The Project

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.
