Role: Programmer
In The Shadow is an augmented reality (AR) experience that uses the Oculus Quest’s passthrough feature. In this game, the player holds a virtual flashlight that can illuminate both the real and virtual world. The objective of the game is to rescue an NPC (non-playable character) who is acted by a real person, by projecting virtual objects’ shadows onto physical surfaces in the real world.
The use of the Oculus Quest’s passthrough feature adds an extra layer of immersion to the game, allowing players to light up and add influence on both virtual and physical worlds.
Playthrough Video
Shadow Projection to Real World
As the Oculus Quest’s passthrough function does not provide depth information, the team had to develop a way to enable the feature of projecting virtual objects’ shadows onto real-world surfaces. This involved modeling all real-world surfaces in the game and creating special transparent shaders that can capture the shadows of virtual objects while still allowing the player to see the real-world objects behind them.
To solve puzzles, players must match the shadows of virtual objects with the shapes we’ve pasted on real-world walls. To achieve this, we added several pairs of anchors that match each other on both the virtual object and the shadow shape on the wall. We then calculate the projection matrix from the light source to the surface and use this matrix to get the current shadow anchors on the real-world surface.