Develop

Projected Passthrough Tutorial

Updated: Apr 15, 2026
Surface-projected passthrough maps the passthrough camera feed onto a specific mesh in your scene, rather than displaying it as a full-screen layer. This technique lets you selectively reveal portions of the real world through defined geometry. For conceptual background, see Surface Projected Passthrough.
This tutorial modifies the Basic Passthrough Tutorial to implement a surface-projected passthrough effect.
Deprecated: The OculusXRPassthroughLayerComponent used in this tutorial is deprecated as of v74. For new projects, use Persistent Passthrough instead. However, the Persistent Passthrough API does not yet support surface-projected passthrough (User Defined Passthrough Layer). The deprecated APIs demonstrated here remain functional for this use case.

Before You Begin

Complete the Basic Passthrough Tutorial before continuing.

Steps

1. Create a Solid Plane

  1. Open the Basic Passthrough Tutorial project.
  2. In the Place Actors tab, navigate to the Shape tab and drag a Plane into the scene.
  3. Set Transform > Location to (600, 0, 100).
  4. Set Transform > Rotation to (0, 90, 0).
  5. Set Transform > Scale to (4, 4, 4).
  6. In the Outliner tab, select Plane. In the Details tab, locate Static Mesh, which is prepopulated with Plane.
  7. Click the Static Mesh dropdown and select Edit to open the Mesh Editor.
  8. On the Mesh Editor’s Details panel, search for Allow CPUAccess and enable it.
Projected Passthrough tutorial Mesh Setup
Projected Passthrough tutorial Mesh CPU Access

2. Update Passthrough Layer

  1. Close the Mesh Editor and return to the main scene.
  2. On the World Outliner tab, select CameraActor, and then on the Details tab, select OculusXRPassthroughLayer.
  3. In the Stereo Layer section, set the Stereo Layer Shape to User Defined Passthrough Layer, and set Layer Placement to Overlay.
Projected Passthrough tutorial Passthrough Layer Setup

3. Add Surface Geometry

  1. On the World Outliner tab, select Plane.
  2. Click Blueprint on the toolbar and click Open Level Blueprint.
  3. Right-click on the Blueprint editor and click Create a Reference to Plane.
  4. Switch to the main scene and select CameraActor on the World Outliner tab.
  5. Return to the Level Blueprint, right-click on the Blueprint editor, and then click Create a Reference to CameraActor.
  6. From the CameraActor reference, drag out and search for Get Passthrough Layer. Then add an Add Static Surface Geometry node and connect the Plane’s Static Mesh Component as its input. The completed Blueprint should match the following screenshot:
Projected Passthrough tutorial Passthrough Layer Add Static Surface Geometry

4. Save, Build, and Run the Project

  1. Save the project.
  2. In the toolbar, click Platforms > Meta Quest. Unreal Engine builds, deploys, and launches the application on the connected headset.
Put on the headset to verify the result. The passthrough camera feed should appear projected onto the plane surface, showing the real world mapped to the mesh geometry while the rest of the scene remains virtual.
Projected Passthrough tutorial Result