Commit graph

75 commits

Author SHA1 Message Date
chyyran 41353ac9c4 rt(gl): remove need for explicit external FBO object
Replaced with an internal FBO that is state tracked so as to not recreate it every frame, but will update if necessary
2024-09-22 02:06:47 -04:00
chyyran 2f988d5b1d rt: add stable feature to build ShaderPassArtifacts via Box<dyn CompileReflectShader> 2024-09-15 03:10:45 -04:00
chyyran ab9ab6fe68 rt(gl): use Option::filter instead of let_chains 2024-09-14 02:11:18 -04:00
chyyran 552be8c34e rt(gl): remove unnecessary unstable features
polyfill strict_provenance with sptr
2024-02-03 22:06:55 -05:00
chyyran 96f937586c build: clean unused features 2024-02-03 03:01:16 -05:00
chyyran f5da7d8421 fmt: cargo fmt 2023-07-20 02:40:13 -04:00
chyyran 70aa4091e0 build: fix nightly flag 2023-04-23 00:13:39 -04: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 e7645a5592 rt: expose cache disable option in filter options 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 3c15a3a523 rt: fix history framebuffer requirements and unify framebuffer initialization logic 2023-02-11 00:20:35 -05:00
chyyran 2b250db353 capi: make _opt* structs more forwards compatible
yay another abi break 🙃
hopefully for the last time
2023-02-09 23:44:39 -05:00
chyyran 59e0b5da86 rt: unify render target logic 2023-02-07 23:14:39 -05:00
chyyran 4e8047932b gl: make input MVP apply to all internal passes 2023-02-06 23:11:39 -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 1e99c169db d3d11: rebind vertices each pass 2023-01-27 01:22:53 -05:00
chyyran e887b7cf35 docs: add crate docs to helper crates 2023-01-16 23:09:07 -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 e2ac7a1bfa common: unify viewport types 2023-01-13 02:54:16 -05:00
chyyran abaebe56cc api: remove FilterChain trait 2023-01-13 02:32:21 -05:00
chyyran 5acf70e362 vk: try to fix feedback (but its not working..) 2023-01-12 01:20:13 -05:00
chyyran 8047bf80c8 gl/d3d11: add option to force mipmap generation off 2023-01-11 18:25:31 -05:00
chyyran f08098680a misc: tweaks 2023-01-03 01:06:42 -05:00
chyyran 8fca2954b0 fmt: run cargo fmt 2022-12-21 21:39:31 -05:00
chyyran b928a8068d capi: finish basic gl capi 2022-12-03 18:56:57 -05:00
chyyran b569de1522 capi: basic capi for presets and gl 2022-12-03 18:33:01 -05:00
chyyran acab02e401 doc: general add docs and clean up 2022-11-30 22:50:57 -05:00
chyyran cbfe76928e gl: overall cleanup 2022-11-30 19:05:24 -05:00
chyyran 759cd4bc28 gl: very not nicely make dsa a runtime prop 2022-11-30 17:21:32 -05:00
chyyran 5088e1c55b fmt: run cargo fmt and clippy 2022-11-30 01:38:05 -05:00
chyyran a091cff6ae gl: merge gl46 back into gl crate 2022-11-30 00:39:50 -05:00
chyyran 538672e355 gl: abstract away gl3 and dsa 2022-11-30 00:39:50 -05:00
chyyran f2d67f9160 gl: leave texture unbound if trying to sample from 0 2022-11-30 00:39:50 -05:00
chyyran 83b7cd38a0 gl/reflect: abstract away common uniform storage buffers 2022-11-28 22:56:20 -05:00
chyyran 7b2721aa19 gl: move quad drawing into filterchain 2022-11-28 18:34:37 -05:00
chyyran 2081e00956 gl: don't keep entire shaderpreset for final filter chain object 2022-11-28 01:16:09 -05:00
chyyran 9e2c914e57 gl: cleanup and refactor
- allow frame and filterchain init to take optional config object by caller
- allow binding MVP as a uniform
2022-11-27 23:27:21 -05:00
chyyran 0806114e12 gl: accomodate for viewport x and y 2022-11-27 02:10:11 -05:00
chyyran f0bc2d92af d3d11: load shaders and buffers 2022-11-26 23:57:22 -05:00
chyyran 1f068bc0d5 gl: try using samplerset 2022-11-26 16:59:34 -05:00
chyyran bfed01435b gl: fix redundant fbo rebind 2022-11-26 16:58:23 -05:00
chyyran 5cd30ade02 dx11: lut upload 2022-11-26 02:38:15 -05:00
chyyran cb8af115c7 gl: don't rename inputs/outputs 2022-11-24 02:24:05 -05:00
chyyran daea19b5a2 gl: fix image size change 2022-11-24 02:08:34 -05:00
chyyran 5d476d5229 dx11: hello_triangle 2022-11-22 01:56:39 -05:00
chyyran 254875de29 reflect: desugar rpitit into tait to avoid incomplete feature warning 2022-11-21 18:19:43 -05:00
chyyran b017127b9d gl: use explicit error type 2022-11-21 17:44:38 -05:00
chyyran 1579516d25 fmt: clean up unused items 2022-11-21 16:21:50 -05:00
chyyran e0b66c2c60 gl: move Size to librashader core 2022-11-21 03:01:26 -05:00