Problem
This project explored how a cube-shaped display could make a 3D scene feel like it exists inside a physical object rather than on a flat screen.
- A normal 2D display can show perspective, but the image does not change naturally when the viewer moves.
- To create a stronger depth effect, the cube needed to render the scene differently for each screen face and viewer position.
- The goal was to build a five-face display where the 3D object appears to be viewed from different angles as the viewer moves around the cube.
Approach & Implementation
I led the team and implemented the Unity-side display and tracking system.
- Built the five-screen rendering setup in Unity, placing separate cameras and projection planes for each cube face so each screen could render its own view of the same 3D scene.
- Implemented off-axis projection for each face by updating the camera projection matrix from the viewer position and physical orientation of the display surface.
- Integrated incoming IMU sensor values into Unity and converted them into virtual viewer movement. Because raw sensor-based position drifted over time, I constrained the viewer position to a circular path around the cube to keep the parallax effect stable.
Result
The project produced a Unity prototype of a five-face parallax display cube.
-
As the viewer moved, the cube rendered the 3D scene from matching viewpoints, making the object appear to stay inside the cube instead of sliding flatly across the screens.
-
The constrained viewer-position system made the prototype usable despite IMU drift and unstable raw-position integration.

Demonstration
https://youtube.com/shorts/vobhw2QekHI?si=7q4ApgNy272YeFR4