Skip to content

An example implementation for tinybvh in Unity and a foundation for building compute based raytracing solutions.

License

Notifications You must be signed in to change notification settings

andr3wmac/unity-tinybvh

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

13 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

unity-tinybvh

An example implementation for tinybvh in Unity and a foundation for building compute based raytracing solutions.

Features

  • TinyBVH Integration
    Leverages tinybvh for efficient BVH and Compact Wide BVH (CWBVH) construction, using a C++ plugin.

  • GPU Mesh Aggregation
    Packs scene meshes into a unified aggregate vertex buffer and triangle attribute buffer via compute shader.

  • Asynchronous BVH Construction
    Uses async readback to transfer mesh data from GPU to CPU, and runs BVH construction in a thread.

  • Wavefront Path Tracer
    A basic compute based raytracer structured like a wavefront path tracer. Includes multiple display mode examples:

    • ndotl
    • BVH Steps
    • Ray Distance
    • Normals
    • Barycentrics
    • UVs

image

Future Plans

  • Further optimization
  • TLAS/BLAS
  • Moving objects
  • Skinned Mesh Renderer support

About

An example implementation for tinybvh in Unity and a foundation for building compute based raytracing solutions.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published