Camo Camera System

A virtual cinematography toolkit in Unity

Tool Development
Dev Tools
Camo Camera System

About the Project

The Virtual Camera was a personal project designed to integrate Unity and real-time technologies into the workflow of animated video production. Initiated as an experiment to simplify the traditional 3D animation pipeline and expedite film-making processes, it blends my live-action film-making expertise with game development experience.

The project focused on creating a virtual camera system in Unity, termed 'Nolan', capable of generating handheld shots in 3D environments, thus allowing for more natural and realistic movements in virtual space.

What I Did

  1. Virtual Camera System Development: Devised a virtual camera system in Unity, using the Oculus Rift S and its built-in sensors to map physical movements into virtual space. This created a more immersive and realistic filming environment.
  2. SteamVR Integration: Incorporated SteamVR's Unity Plugin to handle inputs from the headset and controller. Developed a representation of a controller in the scene that followed the user's hand movements, linked to the camera's position.
  3. Render Texture Implementation: Established a Render Texture that updated at run time to map the camera's output. This allowed us to preview the content the camera was capturing in real-time.
  4. Bug Fixing and Optimization: Identified and rectified a bug in Unity's High Definition Render Pipeline (HDRP) that initially prevented Render Textures from operating in VR, thereby saving a significant amount of production time.
  5. Camera Motion Stabilization: Created a script to smooth out the camera's movements by interpolating its position and rotation, which reduced the amount of unwanted shaky footage.
  6. Locomotion Enhancement: Added smooth locomotion for a better filming experience within the virtual set, broadening the range of capture within the limited virtual space.
Camo Camera System

Tech Stack

  • Unity
  • C#