Commit graph

143 commits

Author SHA1 Message Date
chyyran
3eae38f815 fmt: cargo fmt 2023-02-06 21:56:30 -05:00
chyyran
3cdf3aa105 doc(d3d12): clean up docs for d3d12 2023-02-06 01:25:06 -05:00
chyyran
d32ad8e3b2 options: fix frame-direction docs 2023-02-06 00:26:27 -05:00
chyyran
3db89e5351 vk/11/12: bind VBO only once per frame to save on draw calls. 2023-02-06 00:23:37 -05:00
chyyran
fd48d88fdd dx12: use persistently bound buffers 2023-02-05 22:24:58 -05:00
chyyran
f5fe3e37ef rt(d3d11/vk): allow for parallel shader compilation
OpenGL is for obvious reasons incompatible, and for DX12 the graphics pipeline creation has to be on the main thread so there isn't that much gain to be had.
2023-02-05 19:53:45 -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
7d8c137083 rt: abstract reusable bindingmeta ops 2023-02-05 16:19:22 -05:00
chyyran
c28e5195c2 d3d12: texture infrastructure 2023-02-01 02:08:50 -05:00
chyyran
599c21e06a vk: fix bad imports 2023-01-31 01:27:37 -05:00
chyyran
82ad516db0 d3d11/vk: render intermediate passes with identity matrix 2023-01-31 00:53:55 -05:00
chyyran
18e1f758cd rt: apply filter settings before drawing frame 2023-01-30 19:30:23 -05:00
chyyran
da2fb7adca vk: make choice of render pass format dependent on the shader 2023-01-30 01:31:14 -05:00
chyyran
92caad292c runtime: scale output framebuffers according to the previous inputs rather than original size. 2023-01-29 21:26:11 -05:00
chyyran
2d6a967c7f d3d11: generate mipmaps for inputs if requested 2023-01-29 19:04:34 -05:00
chyyran
8b6481abc1 fmt: run clippy and rustfmt 2023-01-29 02:30:58 -05:00
chyyran
c3aecd336b vk: remove debug from hello triangle example 2023-01-29 01:25:22 -05:00
chyyran
b0dde6eda2 d3d11/vk: fix default mvp 2023-01-28 13:11:14 -05:00
chyyran
fb827b7c24 vk: reallow usage of render passes for environments where dynamic rendering is not available
This implementation is greatly simplified compared to the older implementation where framebuffers were attached to output targets. Instead, the graphics pipeline object will create new framebuffers on the fly. The suggestion is still to use dynamic rendering for best performance.
2023-01-25 23:45:10 -05:00
chyyran
ef8b72b220 reflect: use a marker trait to remove need for macro when spelling out compilation artifact opaque type 2023-01-19 18:44:08 -05:00
chyyran
261710d639 reflect: move GlslangCompilation up a level and remove intermediate modules in reflect::front 2023-01-19 01:06:17 -05:00
chyyran
b3dd378b5b reflect: simplify shaderpassmeta type declarations with a macro 2023-01-19 00:37:37 -05:00
chyyran
fc54c7f65c reflect: move compile_preset_passes from librashader-runtime into librashader-reflect 2023-01-18 21:58:13 -05:00
chyyran
4e51704e35 reflect: abstract away preset compilation 2023-01-18 20:56:08 -05:00
chyyran
e887b7cf35 docs: add crate docs to helper crates 2023-01-16 23:09:07 -05:00
chyyran
e947271f9a vk: write uniforms directly to host-visible mapped memory 2023-01-16 00:22:23 -05:00
chyyran
c059e7c566 fmt: run cargo fmt 2023-01-15 18:21:17 -05:00
chyyran
e133290293 vk: fix hello triangle build 2023-01-15 17:59:57 -05:00
chyyran
ae2fc6b745 vk: initialize scaled framebuffers to SHADER_READ_ONLY_OPTIMAL 2023-01-15 17:57:19 -05:00
chyyran
d9d75d760c vk: use explicit tranisition for hello triangle 2023-01-15 17:21:10 -05:00
chyyran
40e4ce908f preprocess: store parameters in FxHashMap 2023-01-15 14:06:38 -05:00
chyyran
3b89c065fa fmt: run cargo fmt 2023-01-15 12:17:27 -05:00
chyyran
19e8da7d85 chore: general cleanup 2023-01-15 11:08:13 -05:00
chyyran
fdb5bb0e51 vk/gl: properly handling mipmap settings 2023-01-15 03:20:38 -05:00
chyyran
05ec73a11c fmt: run cargo fmt 2023-01-15 03:06:09 -05:00
chyyran
c3a532d729 rt: unify semantics binding logic 2023-01-15 03:01:23 -05:00
chyyran
474cf37e68 pass: remove (extremely rare) stderr debug logs 2023-01-15 00:30:15 -05:00
chyyran
c1669916d4 ld: expose runtime params api to loader 2023-01-14 17:14:37 -05:00
chyyran
e6f1361199 doc: document image handles 2023-01-14 15:10:40 -05:00
chyyran
e652f0bb1d vk: avoid cloning the whole ash::Device object by using an Arc 2023-01-14 15:06:43 -05:00
chyyran
2e2713a21b capi: expose FilterChainParameters to capi 2023-01-14 09:36:26 -05:00
chyyran
403ed5ed13 reflect: rename SpirV to SPIRV 2023-01-13 23:59:16 -05:00
chyyran
3e628093ae capi: finish capi for vulkan 2023-01-13 18:10:20 -05:00
chyyran
45d03fbfb8 capi: resolve name conflicts due to conflicting struct names in each module 2023-01-13 18:10:20 -05:00
chyyran
6782f08820 capi: remove potential panics 2023-01-13 18:10:20 -05:00
chyyran
9b7d6fc014 capi: remove potential panics 2023-01-13 16:10:54 -05:00
chyyran
946fe11c69 vk: rename intermediates to residuals 2023-01-13 14:55:40 -05:00
chyyran
f85e44a3b9 vk: fix double free of image views in intermediates 2023-01-13 14:54:08 -05:00
chyyran
e9a1518c5d vk: experiment with internally handling frame residuals 2023-01-13 04:37:13 -05:00