Commit graph

246 commits

Author SHA1 Message Date
chyyran f9fdb93c0c dep: update glslang and bitflags 2024-02-08 18:16:10 -05:00
chyyran b7f62dc378 chore: Release 2024-02-07 23:56:09 -05:00
chyyran 91794dd353 build: remove cmake and python dependency 2024-02-07 23:55:33 -05:00
chyyran 2b208f1848 dep: remove shaderc dependency 2024-02-07 23:55:33 -05:00
chyyran 47f6e0f10e chore: Release 2024-02-07 00:00:18 -05:00
chyyran 665570342c doc(lib): add wgpu-types to librashader deps 2024-02-06 23:59:55 -05:00
chyyran fb2bcc5d52 chore: Release 2024-02-06 21:41:00 -05:00
chyyran 5c8428eac8 lib: add wgpu dependency in runtime-wgpu 2024-02-06 21:38:17 -05:00
chyyran f6268a621c chore: Release 2024-02-06 19:20:37 -05:00
chyyran 37397ff216 lib: add wgpu to librashader library 2024-02-06 19:04:28 -05:00
chyyran 54e86e7b06 fmt: clean up unused imports 2024-02-06 19:04:28 -05:00
chyyran e39834547c rt(wgpu): take an arc of the source texture 2024-02-06 19:04:28 -05:00
chyyran cc26be486b rt(wgpu): fix compiler errors for filer pass 2024-02-06 19:04:28 -05:00
chyyran 555ff6f9fc rt(wgpu): update to wgpu 0.19 2024-02-06 19:04:28 -05:00
chyyran 7586ed4633 build: don't specify python patch
# Conflicts:
#	.idea/workspace.xml
2024-02-06 19:04:28 -05:00
chyyran 2b995539f2 rt(wgpu): add structure to wgpu backend 2024-02-06 19:04:28 -05:00
chyyran 4e052159e7 rt(wgpu): create pipeline bind group layouts 2024-02-06 19:04:28 -05:00
chyyran ae2a427b5e pkg(rpm): add RPM spec file 2024-02-04 13:16:48 -05:00
chyyran 552be8c34e rt(gl): remove unnecessary unstable features
polyfill strict_provenance with sptr
2024-02-03 22:06:55 -05:00
chyyran a6c91a07df build: use stable polyfills for extract_if and array_chunks_mut 2024-02-03 22:06:55 -05:00
chyyran d700234c3c presets: polyfill extract_if 2024-02-03 22:06:55 -05:00
chyyran d5bf7e312c build: update lockfile 2024-02-03 02:42:52 -05:00
chyyran fa3b6bf5fc chore: Release 2023-11-30 02:11:33 -05:00
chyyran ee0587310c chore: Release 2023-11-30 02:07:12 -05:00
chyyran d17503be71 build: unify ash version 2023-11-30 02:03:43 -05:00
chyyran 6e071138dc build: update spirv-to-dxil-sys to reduce mesa build reqs 2023-11-29 03:26:58 -05:00
chyyran b09a5295ab reflect: update spirv-to-dxil 2023-07-20 02:40:13 -04:00
chyyran 3735659604 preset: drain_filter -> extract_if 2023-07-20 02:40:13 -04:00
chyyran ab8072c4f7 chore: Release 2023-04-23 18:52:14 -04:00
chyyran 020fac87ba deps: upgrade to windows 0.48.0 2023-04-23 01:44:28 -04:00
chyyran 31235971db chore: Release 2023-02-21 21:07:17 -05:00
chyyran ac1494bee1 chore: Release 2023-02-21 17:09:10 -05:00
chyyran e2901b4a59 chore: Release 2023-02-19 15:38:43 -05:00
chyyran 85ea566575 chore: Release 2023-02-18 00:29:01 -05:00
chyyran b780ca2a90 chore: Release 2023-02-17 01:13:52 -05:00
chyyran 6caf50fcc1 deps: update dependencies 2023-02-17 01:11:30 -05:00
chyyran 7ebc3da94b chore: Release 2023-02-16 01:11:55 -05:00
chyyran f42328280a tests: split tests into their own crates 2023-02-16 00:39:36 -05:00
chyyran 7d6701aa4e chore: Release 2023-02-15 22:58:34 -05:00
chyyran 0000fdbdec chore: Release 2023-02-15 18:40:06 -05:00
chyyran 2ca6aecfe4 cache: clean up cache api 2023-02-15 18:08:47 -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 07fac4d1e9 rt: load luts with multiple threads 2023-02-14 02:56:06 -05:00
chyyran 893c58c53d chore: Release 2023-02-13 00:41:53 -05:00
chyyran d6bbdb43fd d3d12: no need to build hlsl if not needed 2023-02-12 22:49:23 -05:00
chyyran bc45729a51 build: replace cargo post with custom buildscript 2023-02-11 18:12:14 -05:00
chyyran 512a4c0050 rt: make runtimes thread safe and document thread safety guarantees 2023-02-10 03:20:59 -05:00
chyyran 009e740610 vk: use gpu-allocator for memory allocations 2023-02-09 18:14:55 -05:00
chyyran cc3e50611e chore: Release 2023-02-08 21:22:33 -05:00
chyyran 771a0896d7 chore: Release 2023-02-08 18:55:46 -05:00
chyyran 5ebc248078 chore: Release 2023-02-08 18:49:11 -05:00
chyyran 3e334536c3 preprocess: stick presets on beta 16 i guess 2023-02-08 18:48:58 -05:00
chyyran 9847e5e603 chore: Release 2023-02-08 18:47:36 -05:00
chyyran c475a4cd9d reflect: fix feature flag for dxil 2023-02-08 18:47:22 -05:00
chyyran 07d9869f85 chore: Release 2023-02-08 18:44:40 -05:00
chyyran c02416314e preprocess: fix dev dependency 2023-02-08 18:44:30 -05:00
chyyran 44b2a797b4 test: add test for shader preprocess 2023-02-08 03:37:21 -05:00
chyyran 2128945c06 test: add test for shader preprocess 2023-02-08 03:28:27 -05:00
chyyran 85497e47c1 build: untangle spirv-to-dxil from non-d3d12 paths 2023-02-08 03:21:28 -05:00
chyyran ccc2539e2f chore: Release 2023-02-08 03:09:03 -05:00
chyyran 48a1b28665 presets: greatly improve path resolution logic and parsing of invalid constructs 2023-02-08 03:06:25 -05:00
chyyran 45dbdc6157 chore: Release 2023-02-07 20:05:12 -05:00
chyyran d1771a8b25 api: fix feature flags to allow building a proper subset of librashader 2023-02-07 18:50:33 -05:00
chyyran d6e1f2ca16 chore: Release 2023-02-07 02:32:55 -05:00
chyyran cb4dc418cd chore: Release 2023-02-06 19:23:06 -05:00
chyyran 3ad67d9539 dep: upgrade to spirv-to-dxil 0.3 2023-02-06 19:22:53 -05:00
chyyran 8588021a6e chore: Release 2023-02-06 02:48:40 -05:00
chyyran 37cb3493ca chore: Release 2023-02-06 02:21:19 -05:00
chyyran 9a898f2cba build: try letting cmake take care of meson and ninja. 2023-02-06 01:42:43 -05:00
chyyran 3cdf3aa105 doc(d3d12): clean up docs for d3d12 2023-02-06 01:25:06 -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 f077f86bad dx12: cleanup and micro-opts 2023-02-05 21:49:55 -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 f677666900 d3d12: initial implementation of spirv-to-dxil 2023-02-05 01:05:42 -05:00
chyyran 53e3732a93 d3d12: complete mipmapper 2023-02-01 02:08:50 -05:00
chyyran 2f82c5f430 d3d12: implement sampler palette 2023-02-01 02:08:50 -05:00
chyyran 0ceb70d799 d3d12: take hello triangle from windows-rs 2023-02-01 02:08:50 -05:00
chyyran b7a44f25f3 chore: Release 2023-01-29 22:49:26 -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 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 5d4eafe3bf deps: upgrade deps 2023-01-21 14:31:57 -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 fc54c7f65c reflect: move compile_preset_passes from librashader-runtime into librashader-reflect 2023-01-18 21:58:13 -05:00
chyyran 479015d223 api: clean up spirv-cross related apis 2023-01-16 19:35:23 -05:00
chyyran acca9ce6f6 d3d11: update to windows-rs 0.44 2023-01-16 18:45:02 -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 d97e16b31a rt: reduce image dependencies 2023-01-15 15:49:02 -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 f49c78912b docs: expose sys objects 2023-01-13 23:58:59 -05:00
chyyran 54150e9bea chore: Release 2023-01-13 19:35:05 -05:00
chyyran 3e628093ae capi: finish capi for vulkan 2023-01-13 18:10:20 -05:00
chyyran 60f2ae6da8 chore: Release 2023-01-13 03:20:13 -05:00
chyyran dc6e8f9a2c vk: clean up docs 2023-01-13 02:10:07 -05:00
chyyran 43bd53a92b chore: general clean up and format 2023-01-13 01:48:04 -05:00
chyyran 1d07c66239 vk: hello triangle swapchain 2023-01-04 00:49:42 -05:00
chyyran 4393f5c871 capi: capi reflect api 2023-01-02 18:22:52 -05:00
chyyran a8840829aa vk: begin infra for vk runtime 2022-12-05 21:01:15 -05:00
chyyran 843c438e31 capi: move header generation to postbuild 2022-12-05 17:30:48 -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 2cce27ecb9 capi: make function pointer types for everything 2022-12-05 00:06:37 -05:00
chyyran 6ab03ecc99 capi: more docs 2022-12-04 22:48:57 -05:00
chyyran 8a782da0e8 chore: Release 2022-12-03 21:26:02 -05:00
chyyran b569de1522 capi: basic capi for presets and gl 2022-12-03 18:33:01 -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 acab02e401 doc: general add docs and clean up 2022-11-30 22:50:57 -05:00
chyyran 6519a78df2 d3d11: make error unboxed 2022-11-30 17:59:55 -05:00
chyyran 7acf208f39 d3d11: implement history 2022-11-30 01:35:20 -05:00
chyyran 538672e355 gl: abstract away gl3 and dsa 2022-11-30 00:39:50 -05:00
chyyran ae257d8574 runtime: move some runtime commonalities into runtime crate 2022-11-29 00:23:48 -05:00
chyyran 83b7cd38a0 gl/reflect: abstract away common uniform storage buffers 2022-11-28 22:56:20 -05:00
chyyran 5078015605 gl46: implement DSA version of gl runtime 2022-11-28 18:56:35 -05:00
chyyran 46bc8a9e70 build: move dx11 -> d3d11 2022-11-26 15:58:26 -05:00
chyyran 4c4a918b9f d3d11: gen samplers 2022-11-26 15:55:14 -05:00
chyyran dadfb6ba33 dx11: begin to work on dx11 implementation 2022-11-24 01:37:16 -05:00
chyyran 5d476d5229 dx11: hello_triangle 2022-11-22 01:56:39 -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 c06751eca9 gl: load luts 2022-11-17 00:08:11 -05:00
chyyran d37fc0ccb5 gl: clean up the huge lib.rs file 2022-11-14 01:49:51 -05:00
chyyran 848d87021c gl: start work on frame history 2022-11-14 00:14:05 -05:00
chyyran 6fcee1691f gl: implement hello triangle test for further debug 2022-11-11 21:52:22 -05:00
chyyran bbefc3ced3 gl: expose compiler in gl result 2022-11-11 02:26:57 -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 3a0b545ad2 reflect: more work on semantics binding 2022-10-25 22:13:39 -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
chyyran de161373a9 api: do some renaming of structs 2022-10-21 21:04:00 -04:00
chyyran 2f85ea9f24 preprocess: add preprocessor module with include resolver 2022-10-21 01:12:17 -04:00
chyyran c5b0ce211c presets: implement path resolution logic 2022-10-19 22:47:43 -04:00
chyyran f43a57d29f chore: move src to root 2022-10-18 17:46:46 -04:00
Renamed from src/Cargo.lock (Browse further)