Commit graph

33 commits

Author SHA1 Message Date
chyyran 252f685967 reflect: abstract away output compiler into its own trait 2024-02-11 15:48:01 -05:00
chyyran abbec84594 rt(d3d12): rename quad_render to draw_quad 2024-02-11 15:48:01 -05:00
chyyran 7c0190004f rt(d3d12): remove unnecessary unstable features
div_ceil has been stabilized, and we don't really make use of const trait impl
2024-02-03 22:06:55 -05:00
chyyran 96f937586c build: clean unused features 2024-02-03 03:01:16 -05:00
chyyran 0adf3505ec rt: mark frame and create APIs unsafe
This doesn't cause an API break in the C API but we don't actually make an attempt to verify that it's safe to access any of the device contexts.
2023-02-16 17:33:47 -05:00
chyyran f42328280a tests: split tests into their own crates 2023-02-16 00:39:36 -05:00
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 fa6cd87c60 vk/11/12: allow gpu-deferred creation of filter chains 2023-02-11 02:44:07 -05:00
chyyran 3c15a3a523 rt: fix history framebuffer requirements and unify framebuffer initialization logic 2023-02-11 00:20:35 -05:00
chyyran 55e800b67e d3d12: fix mipmaps again 2023-02-09 19:44:01 -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 48a1b28665 presets: greatly improve path resolution logic and parsing of invalid constructs 2023-02-08 03:06:25 -05:00
chyyran 59e0b5da86 rt: unify render target logic 2023-02-07 23:14:39 -05:00
chyyran 7ba2b26baa d3d12: optimize barriers 2023-02-06 21:56:24 -05:00
chyyran f14f918068 d3d12: use HV 2016 when compiling HLSL pipelines 2023-02-06 21:24:55 -05:00
chyyran 4dcbdadb4f capi: publish d3d12 2023-02-06 02:17:30 -05:00
chyyran 3cdf3aa105 doc(d3d12): clean up docs for d3d12 2023-02-06 01:25:06 -05:00
chyyran ec619ec5e2 d3d12: clean up API for d3d12 2023-02-06 01:05:19 -05:00
chyyran a3589cc794 d3d12: make panic free 2023-02-05 19:58:51 -05:00
chyyran 271788b9c6 d3d12: implement history 2023-02-05 18:03:38 -05:00
chyyran 6a1138f0dc d3d12: allow force hlsl 2023-02-05 17:30:55 -05:00
chyyran 2d2ed22e9a fmt: run cargo fmt 2023-02-05 16:19:22 -05:00
chyyran 66a4b1a648 doc: document d3d12 differences 2023-02-05 02:22:28 -05:00
chyyran 72c9548c7a d3d12: use hlsl as a fallback pipeline 2023-02-05 01:54:56 -05:00
chyyran e66c2a628f d3d12: run final pass 2023-02-01 18:09:34 -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 17203692f0 d3d12: make framebuffer 2023-02-01 02:08:50 -05:00
chyyran 22599285d3 d3d12: load vertex buffers 2023-02-01 02:08:50 -05:00
chyyran c2bef7f985 d3d12: upload shaders 2023-02-01 02:08:50 -05:00
chyyran 8bb02d31e9 d3d12: sketch out mipmap gen 2023-02-01 02:08:50 -05:00