🔮GPU-based real-time raytracing rendering of transparent metaball. (Project for CS337 Computer Graphics)
- Implement BVH acceleration for MetaBalls
- Implement transparent (trace refraction rays) for MetaBalls
- GPU-based real-time rendering of the final scene (acceleration and transparent).
Transparent metaballs: 25
w: 1920, h: 1080
recursion depth: 8
fps: > 60
- GPU and driver with support for DirectX 12 Ultimate
- Windows 10 SDK 22000
- Shader model >= 6.5
- ALT+ENTER - toggles between windowed and fullscreen modes.
- C - enable/disable camera animation.
- L - enable/disable light animation.
We test two cases (with and without BVH acceleration) on a scene with 9 non-transparent metaballs. (1920 x 1080, recursion depth = 3)
BVH | fps |
---|---|
BVH unabled | 89 |
BVH enabled | 601 |
- Without BVH
- With BVH
We test two cases (with interval refinment and without) on a scene with 125 non-transparent metaballs. (1920 x 1080, recursion depth = 3)
Visible differences in visual effects
left: transparency in deformation
middle: refracted virtual image
right: total reflection
- Hardcoded shader index
- MetaBalls need a wraper for closest-hit shader