Commit graph

239 commits

Author SHA1 Message Date
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 d6ac2c665d reflect: fix expected runtime config options 2023-02-05 01:14:01 -05:00
chyyran f677666900 d3d12: initial implementation of spirv-to-dxil 2023-02-05 01:05:42 -05:00
chyyran aa87e13201 reflect: add API to compile to DXIL 2023-02-04 18:24:56 -05:00
chyyran 5d260e77d5 reflect: expose HLSL SM version 2023-02-01 18:58:21 -05:00
chyyran b7a44f25f3 chore: Release 2023-01-29 22:49:26 -05:00
chyyran 8b6481abc1 fmt: run clippy and rustfmt 2023-01-29 02:30:58 -05:00
Ronny Chan dffea95370
reflect: allow binding uniform names to both UBO and Push Constants (#4) 2023-01-29 01:57:09 -05:00
chyyran 43b7d6fb53 preprocess: support latin-1 encoding 2023-01-28 11:58:59 -05:00
chyyran 3db4c332eb chore: Release 2023-01-28 01:50:33 -05:00
chyyran 9397233a0c reflect: don't need error trait bound 2023-01-21 15:47:52 -05:00
chyyran e415e46200 chore: Release 2023-01-21 02:33:50 -05:00
chyyran 341d8825c6 build: switch to custom fork of spirv_cross temporarily 2023-01-21 02:33:09 -05:00
chyyran e1eb0ccb22 capi: fix outdated header definition 2023-01-20 23:43:45 -05:00
chyyran 08ca2963c5 doc: document reflect module 2023-01-19 18:59:39 -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 479015d223 api: clean up spirv-cross related apis 2023-01-16 19:35:23 -05:00
chyyran fceda0e99d chore: Release 2023-01-15 20:06:59 -05:00
chyyran aea440f194 reflect: remove rspirv
When naga is more mature (i.e. with support for COMBINED_IMAGE_SAMPLER), `naga::Module` handles everything we need with a more ergonomic API
2023-01-15 20:06:36 -05:00
chyyran 40e4ce908f preprocess: store parameters in FxHashMap 2023-01-15 14:06:38 -05:00
chyyran 6c593dda79 chore: Release 2023-01-15 03:20:59 -05:00
chyyran 3691f6579c chore: Release 2023-01-15 03:01:50 -05:00
chyyran 173ffc53e4 chore: Release 2023-01-14 20:13:33 -05:00
chyyran 87a08a83f2 chore: Release 2023-01-14 19:06:14 -05:00
chyyran c85565a8f7 chore: Release 2023-01-14 17:23:06 -05:00
chyyran 92dd105c43 chore: Release 2023-01-14 02:57:23 -05:00
chyyran 403ed5ed13 reflect: rename SpirV to SPIRV 2023-01-13 23:59:16 -05:00
chyyran 54150e9bea chore: Release 2023-01-13 19:35:05 -05:00
chyyran 60f2ae6da8 chore: Release 2023-01-13 03:20:13 -05:00
chyyran 43bd53a92b chore: general clean up and format 2023-01-13 01:48:04 -05:00
chyyran 8fca2954b0 fmt: run cargo fmt 2022-12-21 21:39:31 -05:00
chyyran bf840d02e4 reflect: fix spirv fragment output actually was vertex 2022-12-10 01:25:19 -05:00
chyyran 2baeae494d vk: pipeline layout stuff
also ringbuffer fixes
2022-12-06 01:38:21 -05:00
chyyran 22f87aa7f8 reflect: add FromCompilation<GlslangCompilation> for SpirV 2022-12-05 23:09:59 -05:00
chyyran 212d5fd7eb chore: Release 2022-12-05 02:12:18 -05:00
chyyran 30067df4d6 chore: Release 2022-12-05 00:24:16 -05:00
chyyran 8a782da0e8 chore: Release 2022-12-03 21:26:02 -05:00
chyyran f92dc5cae6 fmt: run clippy 2022-12-01 19:16:13 -05:00
chyyran 1665770615 rt: move image into runtime 2022-12-01 17:11:42 -05:00
chyyran ba41055a58 rel(0.1.0-alpha.1): update workspace for alpha 2022-12-01 02:07:21 -05:00
chyyran e804ffd310 reflect: document and rename some structs 2022-12-01 01:50:16 -05:00
chyyran acab02e401 doc: general add docs and clean up 2022-11-30 22:50:57 -05:00
chyyran 5088e1c55b fmt: run cargo fmt and clippy 2022-11-30 01:38:05 -05:00
chyyran ae257d8574 runtime: move some runtime commonalities into runtime crate 2022-11-29 00:23:48 -05:00
chyyran 515fe12568 reflect: clean up UniformStorage 2022-11-28 22:59:11 -05:00
chyyran 83b7cd38a0 gl/reflect: abstract away common uniform storage buffers 2022-11-28 22:56:20 -05:00
chyyran 43ec5173c1 reflect: seal ast output mutability after compilation 2022-11-27 23:47:41 -05:00
chyyran 9cad2b9128 reflect: make reflect errors non-exhaustive 2022-11-27 23:37:45 -05:00
chyyran 964da02c39 reflect: rename non_uniforms to texture_semantics 2022-11-27 23:11:21 -05:00
chyyran f0bc2d92af d3d11: load shaders and buffers 2022-11-26 23:57:22 -05:00
chyyran 2e5c9c835a reflect: align push constant buffer sizes to 16 bytes 2022-11-26 23:57:01 -05:00
chyyran cb8af115c7 gl: don't rename inputs/outputs 2022-11-24 02:24:05 -05:00
chyyran 6d11323520 gl: use real texture names when fixing bindings 2022-11-24 02:08:58 -05:00
chyyran dadfb6ba33 dx11: begin to work on dx11 implementation 2022-11-24 01:37:16 -05:00
chyyran 254875de29 reflect: desugar rpitit into tait to avoid incomplete feature warning 2022-11-21 18:19:43 -05:00
chyyran 1978350d97 fmt: cleanup unused items 2022-11-21 17:47:38 -05:00
chyyran 86ad32ff0a lib: sort out base library structure 2022-11-21 16:53:36 -05:00
chyyran 38ce621664 reflect: make compilation an associated function 2022-11-21 16:28:28 -05:00
chyyran 1579516d25 fmt: clean up unused items 2022-11-21 16:21:50 -05:00
chyyran 80fa30e54e preprocess: move ShaderSource to preprocess and rename common def libs 2022-11-21 16:13:37 -05:00
chyyran 10eb2c3106 gl: implement passfeedback and original history 2022-11-21 02:13:10 -05:00
chyyran 090df176c8 gl: fix sampler binding 2022-11-19 22:03:58 -05:00
chyyran d49fa5307a gl: clean up uniform binding storage 2022-11-19 18:48:54 -05:00
chyyran d37fc0ccb5 gl: clean up the huge lib.rs file 2022-11-14 01:49:51 -05:00
chyyran b1beb0e46f reflect: get rid of meaningful indices for variable semantics 2022-11-13 02:07:21 -05:00
chyyran dcbdb382e1 presets: allow comments on the same line as a declaration 2022-11-13 01:57:22 -05:00
chyyran 66d1c872ee gl: get some more reflection work done 2022-11-12 01:23:49 -05:00
chyyran bbefc3ced3 gl: expose compiler in gl result 2022-11-11 02:26:57 -05:00
chyyran f3d0b2acae fmt: run clippy 2022-11-11 01:53:02 -05:00
chyyran 41f721aa6d reflect: clean up public reflect API a little 2022-11-11 01:44:41 -05:00
chyyran 993359115e reflect: hide spirv details from consumer 2022-11-09 01:51:10 -05:00
chyyran 301b8bf209 gl: add name mapping to gl compiler 2022-11-09 01:11:25 -05:00
chyyran f1280202e5 hlsl: implement hlsl reflection 2022-11-07 00:25:11 -05:00
chyyran d6f47f83ca fmt: run clippy 2022-10-31 20:29:25 -04:00
chyyran 5ec604e536 chore: run fmt 2022-10-27 20:39:39 -04:00
chyyran 073921b9fb reflect: implement shader reflection 2022-10-27 02:22:44 -04:00
chyyran 75bbd3eacf reflect: finish buffer parameter parsing 2022-10-26 01:19:04 -04:00
chyyran 3a0b545ad2 reflect: more work on semantics binding 2022-10-25 22:13:39 -04:00
chyyran 809c58f34d reflect: move naga stuff to naga 2022-10-25 01:50:08 -04:00
chyyran 6ab3775b23 reflect: some cursed experiments 2022-10-25 01:47:41 -04:00
chyyran 36a885e55a reflect: partially implement reflection 2022-10-23 23:22:26 -04:00
chyyran 0f91b9a49e reflect: add reflection crate 2022-10-23 02:36:41 -04:00