RaytracedHardShadow
RaytracedHardShadow copied to clipboard
misc todo & ideas
- [x] add an option to select objects for shadow caster/receiver independently
- [x] hit mask layer
- [x] object space skinning
- see "Animation" in http://intro-to-dxr.cwyman.org/presentations/IntroDXR_RaytracingAPI.pdf
- [x] handle drag & dropped scenes from Hierarchy
- [x] export to image functionality
- [x] debug functionality: timestamp
- [x] debug functionality: 'always update acceleration structures' mode
- [x] multiple command lists for deform & building BLAS (for potential parallelization)
- the performance gain was negligible or even negative. probably it will be better if do it with optimal task granularity in a complex scene. we need to test with real-world assets.
- https://developer.nvidia.com/dx12-dos-and-donts
- [x] use global root signature instead of local root signature
- [x] flip caster mesh faces option
- [x] ID3D12Device::SetStablePowerState()
- [x] handle dynamic Meshes
- Alembic meshes, etc
- [x] faster BLAS update for baked meshes
- for Cloth
- [x] use Lights' culling mask
- [x] use Cameras' culling mask
- [x] use MeshRenderer's shadow mode
- [x] use Lights' shadow settings
- [x] set light index to light alpha
- [x] bit mask output option
- [x] use CommandBuffers for precise draw order
- actually not needed
- [x] (unity) global shader parameter to detect RTHS is used
- [ ] normalize light intensity
- [ ] debug view for adaptive sampling
- [ ] optimal shadow ray offset
- see "A Fast and Robust Method for Avoiding Self-Intersection" in http://www.realtimerendering.com/raytracinggems/unofficial_RayTracingGems_v1.5.pdf
it would be great if you could pass unity's buffers like: "normal, albedo,..." in the shader "rthsShadowDXR.hlsl"
https://github.com/unity3d-jp/RaytracedHardShadow/issues/34