chyyran
742a1c8658
dep: update glslang
2024-10-01 23:59:29 -04:00
chyyran
31ece05246
reflect: allow more reflection objects to be serializable
2024-09-27 01:12:02 -04:00
chyyran
c9a6411394
deps: consolidate and update dependencies
2024-09-06 22:45:07 -04:00
chyyran
db3d5d05a6
presets: use crate for extract_if with fully qualified syntax to avoid name collision with unstable std
2024-08-20 23:13:39 -04:00
chyyran
1957f576ca
reflect: further improve link i/o pass by ensuring that the output SPIR-V is valid according to Vulkan 1.0 semantics
...
The pass will now create and reassign types of downgraded outputs to a type with Private storage class, without affecting the type of other outputs.
Downgraded outputs also get removed from the entrypoint interface
2024-08-20 23:13:39 -04:00
chyyran
45c3c876f4
reflect: remove explicit compile function in favour of TryFrom
2024-08-19 18:33:30 -04:00
chyyran
9b40c10466
reflect: improve inout link algorithm
2024-08-19 18:19:21 -04:00
Ronny Chan
cd14bca23a
Revert "reflect: improve inout link algorithm"
...
This reverts commit 1ac78695c6
.
2024-08-19 01:53:38 -04:00
chyyran
1ac78695c6
reflect: improve inout link algorithm
2024-08-19 01:40:22 -04:00
chyyran
7ef3780222
fmt: cargo fmt
2024-02-19 12:39:44 -05:00
chyyran
e8eee02bfb
reflect: always link and trim unused inouts
2024-02-19 09:54:19 -05:00
chyyran
22aa59b598
reflect: move spirv_passes out of naga
2024-02-19 09:54:19 -05:00
chyyran
b75a614873
doc(reflect): document ShaderReflectObject
2024-02-19 09:54:19 -05:00
chyyran
017a1a6232
fmt: clean up imports and features
2024-02-16 01:19:52 -05:00
chyyran
ba6c32e858
rt(wgpu): enable large thread size if possible
2024-02-15 21:43:02 -05:00
chyyran
4247e64336
docs: update capi docs
2024-02-14 20:50:17 -05:00
chyyran
cc93e37701
reflect: get rid of redundant shader compiler argument
2024-02-14 03:08:09 -05:00
chyyran
528dd1b53c
reflect: fix some refs
2024-02-11 15:48:01 -05:00
chyyran
e1f62fc984
reflect: remove ShaderOutputCompiler and just delegate to FromCompilation
2024-02-11 15:48:01 -05:00
chyyran
252f685967
reflect: abstract away output compiler into its own trait
2024-02-11 15:48:01 -05:00
chyyran
a7ca391ef6
reflect: abstract away input compiler from compilation
2024-02-11 15:48:01 -05:00
chyyran
a14b36e05b
presets: initial preset contexts API
2024-02-09 02:02:13 -05:00
chyyran
f9fdb93c0c
dep: update glslang and bitflags
2024-02-08 18:16:10 -05:00
chyyran
2b208f1848
dep: remove shaderc dependency
2024-02-07 23:55:33 -05:00
chyyran
4dfcdf2725
reflect(wgsl): wgsl compile backend
2024-02-06 19:04:28 -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
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
261710d639
reflect: move GlslangCompilation up a level and remove intermediate modules in reflect::front
2023-01-19 01:06:17 -05:00
chyyran
4e51704e35
reflect: abstract away preset compilation
2023-01-18 20:56:08 -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
e804ffd310
reflect: document and rename some structs
2022-12-01 01:50:16 -05:00
chyyran
5088e1c55b
fmt: run cargo fmt and clippy
2022-11-30 01:38:05 -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
d6f47f83ca
fmt: run clippy
2022-10-31 20:29:25 -04:00
chyyran
073921b9fb
reflect: implement shader reflection
2022-10-27 02:22:44 -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