Commit Graph

5 Commits

Author SHA1 Message Date
Ivan 'provod' Avdeev
e35e2aa043 rt: allocate as many desc sets as frames in flight
still not fully correct or robust, but passes validation

missing correctness things:
- Nx light data buffers
- Nx dynamic model buffers
- Nx dynamic BLASes

quite likely will also need (depending on update strategy, direct vs upload):
- Nx light data buffers
- Nx UBOs

probably fine since frames don't really overlap:
- single TLAS
2022-02-20 23:30:23 -08:00
Ivan Avdeev
b6c96ddebd rt: automate image barriers for passes 2022-01-31 20:40:41 -08:00
Ivan Avdeev
c2d8ecbf79 rt: make denoiser to be just another pass
that requires also supporting compute shaders as passes.
2022-01-30 22:24:55 -08:00
Ivan Avdeev
950b1ff6cf rt: tie pass binding to resource semantic
this allows removing pass write function and moves us closer to
auto-solving pass dependencies
2022-01-30 20:49:37 -08:00
Ivan Avdeev
b3c69851dc rt: draft a universal pass sketch
allows easily creating arbitrary ray tracing pipelines out of sets of
bindings and shaders

what's missing:
- optimal handling of duplicate shaders
- reading bindings from shaders (parse SPIR-V) instead of specifying in
  code
- automatic resource creation according to binding definitions
- automatic barriers according to bindings interface
2022-01-26 23:52:19 -08:00