XR rendering systems

AuraRay

A deterministic C++17 ray tracer and reusable Unity package for simulated gaze-aware rendering experiments.
Creator · rendering engineer · Unity package author
Animated AuraRay gaze-aware rendering simulator
Problem

Foveated rendering ideas are hard to inspect when rendering policy, runtime behavior, and visual output are tangled together, especially before eye-tracking hardware is available.

Approach

I split the work in two: a C++17 reference renderer with deterministic seeds, so all 11 outputs verify against stored SHA-256 hashes via CTest, and a reusable Unity package (verified with a zero-missing-scripts fresh import) that visualizes gaze regions and estimated ray budget interactively.

Outcome

Reproducible-by-design graphics engineering: fixed seeds, hash-verified outputs, a clean CMake library/CLI split, and a distributable Unity package. Research ideas turned into a tool anyone can run and trust.

Key results

  • 11 renders verified by SHA-256 hashes in CI-style CTest checks
  • Lambertian, metal, and dielectric materials with recursive scattering
  • Reusable Unity Package Manager package, import-verified
  • Interactive gaze + ray-budget visualization at runtime

Tech stack

C++17CMakeRay tracingUnity 6C#JSON metadata

Project media

Evidence from the build.

Full, low, gaze-aware, and overlay rendering comparison
02Foveation comparison
Ray-traced XR lens scene
03XR optics reference scene
Ray-traced glass orbs
04Dielectric materials
Warm ray-traced studio spheres
05Studio reference scene
Foveated sampling-region overlay
06Sampling regions