Commit graph

18 commits

Author SHA1 Message Date
chyyran 604edfb78f cache: implement transparent shader object cache
supported objects:

- SPIR-V artifacts
- Validated DXIL artifacts
- DXBC artifacts
- OpenGL Program Binaries
- Vulkan Pipeline caches
- D3D12 CACHED_PIPELINE_STATE
2023-02-15 18:08:47 -05:00
chyyran f2357f9ab1 d3d12: add proper fallback for output textures that need mipmapping 2023-02-12 23:30:32 -05:00
chyyran abadfb3ee1 d3d12: use dxc to compile mipmap shader
removes fxc dependency completely.
Also slim down windows-rs features where only needed for testing.
2023-02-12 13:03:31 -05:00
chyyran 121209da10 fmt: clean up warnings 2023-02-09 21:06:58 -05:00
chyyran 5e99ddf73c vk/d3d12: recompile pipelines on incompatible output format.
This also involves changes to the C API, since we're breaking API anyways
might as well unify some type names. No breakages for D3D11.
2023-02-08 21:21:40 -05:00
chyyran ec619ec5e2 d3d12: clean up API for d3d12 2023-02-06 01:05:19 -05:00
chyyran 99954f011f dx12: fix mipmapping 2023-02-05 23:20:01 -05:00
chyyran 1fe4b47981 dx12: use versionedrootsignature 2023-02-05 22:31:34 -05:00
chyyran 227cae6405 fmt: clean up d3d12 2023-02-05 20:05:22 -05:00
chyyran a3589cc794 d3d12: make panic free 2023-02-05 19:58:51 -05:00
chyyran b81b2b1d25 fmt: run clippy 2023-02-05 18:34:30 -05:00
chyyran 2d2ed22e9a fmt: run cargo fmt 2023-02-05 16:19:22 -05:00
chyyran 72c9548c7a d3d12: use hlsl as a fallback pipeline 2023-02-05 01:54:56 -05:00
chyyran f677666900 d3d12: initial implementation of spirv-to-dxil 2023-02-05 01:05:42 -05:00
chyyran c29cc51ed5 d3d12: render to intermediate buffers 2023-02-01 02:08:50 -05:00
chyyran 03b4a7574e d3d12: filter chain pass 2023-02-01 02:08:50 -05:00
chyyran c28e5195c2 d3d12: texture infrastructure 2023-02-01 02:08:50 -05:00
chyyran c2bef7f985 d3d12: upload shaders 2023-02-01 02:08:50 -05:00