vulkan-rust-learning/README.md
2024-09-19 19:25:44 -04:00

20 lines
1.2 KiB
Markdown

# vulkan-rust-learning
Experiments for learning how write Vulkan, using Rust, for real-time raytracing, and other shenanigans.
## Resources
- [NVidia's Raytracing Best Practices](https://developer.nvidia.com/blog/best-practices-using-nvidia-rtx-ray-tracing/)
- [Khronos Best Practices for Hybrid Rendering](https://www.khronos.org/blog/vulkan-ray-tracing-best-practices-for-hybrid-rendering)
- [vulkano - Rust Bindings for Vulkan](https://crates.io/crates/vulkano)
- [vulkano on GitHub](https://github.com/vulkano-rs/vulkano)
- [Bevy](https://bevyengine.org/)
- [Bevy on GitHub](https://github.com/bevyengine/bevy)
- [NVidia NSight with Vulkan](https://developer.nvidia.com/blog/optimizing-vk-vkr-and-dx12-dxr-applications-using-nsight-graphics-gpu-trace-advanced-mode-metrics/)
## Architectures Notes
- Use Top Level Acceleration Structure (TLAS) for instancing and describing geometry
- Use Bottom Level Acceleration Structure (BLAS) for actually storying geometry inside of AABB regions
- Keep BLAS AABBs condensed (less negative space), but don't overlap them either
- We could have an AABB system that automatically generates it from placed level geometry? Too overkill?