Commit graph

247 commits

Author SHA1 Message Date
chyyran af49128ee7 chore: Release 2024-02-16 01:53:56 -05:00
chyyran f7dd955c0a chore: Release 2024-02-14 20:51:57 -05:00
chyyran 6fbc4b3075 fmt: cargo fmt 2024-02-14 20:50:17 -05:00
chyyran b348e8591f lib: use a faster hashmap implementation 2024-02-14 20:50:17 -05:00
chyyran a2987555a2 chore: Release 2024-02-14 03:08:40 -05:00
chyyran cc93e37701 reflect: get rid of redundant shader compiler argument 2024-02-14 03:08:09 -05:00
chyyran 76aa5ce4c6 capi(mtl): implement capi for metal 2024-02-14 03:08:09 -05:00
chyyran 1aedb1bea7 rt: auto-impl parameters 2024-02-14 03:08:09 -05:00
chyyran daf30c83c0 rt: add Rotation, TotalSubFrames, CurrentSubFrame uniform semantics 2024-02-12 01:58:05 -05:00
chyyran 3c3f024ef8 preset: add original scaletype
As defined in https://github.com/libretro/RetroArch/pull/15937
2024-02-12 01:58:05 -05:00
chyyran d0a5224c10 dep: upgrade librashader-spirv-cross 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 b98d86a940 reflect: allow specifying output toolchain 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 12af3c3f3a chore: Release 2024-02-09 18:30:07 -05:00
chyyran c34fa4195b chore: Release 2024-02-09 02:55:02 -05:00
chyyran 2fbc7f92da capi: add preset_ctx C API 2024-02-09 02:49:31 -05:00
chyyran 4da6c98655 rt: add driver context + path context for FilterChain::load_with_path 2024-02-09 02:02:13 -05:00
chyyran b7f62dc378 chore: Release 2024-02-07 23:56:09 -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 fb2bcc5d52 chore: Release 2024-02-06 21:41:00 -05:00
chyyran f6268a621c chore: Release 2024-02-06 19:20:37 -05:00
chyyran 4e052159e7 rt(wgpu): create pipeline bind group layouts 2024-02-06 19:04:28 -05:00
chyyran 80325fda9e fmt: cargo fmt 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 59cc3deb09 rt: fix TAIT usages 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 650aecbe10 d3d11/12: fix sampler set creation 2023-02-21 21:06:47 -05:00
chyyran ac1494bee1 chore: Release 2023-02-21 17:09:10 -05:00
chyyran ded8851e16 d3d11/12: fix sampler set creation 2023-02-21 17:08:24 -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 af6f58981e vk: move internal frame count to common 2023-02-16 21:16:42 -05:00
chyyran 8ed244f6fa rt: clean up sampler sets 2023-02-16 18:19:38 -05:00
chyyran 302ef76a82 doc(readme): update header image 2023-02-16 17:42:01 -05:00
chyyran 912099f00a test: fix unsafe changes 2023-02-16 17:38:00 -05: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 7ebc3da94b chore: Release 2023-02-16 01:11:55 -05:00
chyyran 0eb9859cc4 build(docs.rs): try a default-feature based approach 2023-02-16 01:09:43 -05:00
chyyran 284d644f99 cache: make cache opt-in by default so docs.rs can build sqlite properly 2023-02-16 00:54:22 -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 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 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 abadfb3ee1 d3d12: use dxc to compile mipmap shader
removes fxc dependency completely.
Also slim down windows-rs features where only needed for testing.
2023-02-12 13:03:31 -05:00
chyyran 0eac766685 capi: expose deferred API and make order consistent.
gotta get all these ABI breaks done before release.
2023-02-11 15:30:20 -05:00
chyyran fa6cd87c60 vk/11/12: allow gpu-deferred creation of filter chains 2023-02-11 02:44:07 -05:00
chyyran 800b6e7b4b d3d11: cleanup todo 2023-02-11 01:18:04 -05:00
chyyran 3c15a3a523 rt: fix history framebuffer requirements and unify framebuffer initialization logic 2023-02-11 00:20:35 -05:00
chyyran 0cb6f6a346 d3d11: be agnostic about deferred contexts
This brings the D3D11 API more in line with the D3D12 and Vulkan runtimes. To get the old behaviour with immediate contexts, just pass a NULL context.
2023-02-10 18:08:13 -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 121209da10 fmt: clean up warnings 2023-02-09 21:06:58 -05:00
chyyran 55e800b67e d3d12: fix mipmaps again 2023-02-09 19:44:01 -05:00
chyyran 336094cad9 d3d11: properly clear history framebuffers 2023-02-09 00:42:46 -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 9847e5e603 chore: Release 2023-02-08 18:47:36 -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 ccc2539e2f chore: Release 2023-02-08 03:09:03 -05:00
chyyran 59e0b5da86 rt: unify render target logic 2023-02-07 23:14:39 -05:00
chyyran 06161b5aad rt: make scale framebuffers a lot nicer to use 2023-02-07 22:02:08 -05:00
chyyran 45dbdc6157 chore: Release 2023-02-07 20:05:12 -05:00
chyyran 07b20fecdc d3d11: fall back to singlethreaded shader compile if device was single threaded 2023-02-07 17:27:44 -05:00
chyyran d9a97de131 rt: doc FilterPassMeta 2023-02-07 02:55:15 -05:00
chyyran d6e1f2ca16 chore: Release 2023-02-07 02:32:55 -05:00
chyyran 6d75dc5100 fmt: general format and clean up 2023-02-07 02:31:08 -05:00
chyyran c8a1d4d196 rt: abstract framebuffer scaling into common code 2023-02-07 02:12:47 -05:00
chyyran 5ffcf005a0 d3d11: set and restore blend state between passes and disable unneeded CPU access write 2023-02-07 00:51:35 -05:00
chyyran c5b2b50d16 d3d11: make default cpu access none 2023-02-06 23:34:32 -05:00
chyyran d6b492c614 doc: Vulkan runtime is not limited to 1.3 anymore 2023-02-06 22:05:29 -05:00
chyyran 3eae38f815 fmt: cargo fmt 2023-02-06 21:56:30 -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 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 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 17203692f0 d3d12: make framebuffer 2023-02-01 02:08:50 -05:00
chyyran c2bef7f985 d3d12: upload shaders 2023-02-01 02:08:50 -05:00
chyyran 82ad516db0 d3d11/vk: render intermediate passes with identity matrix 2023-01-31 00:53:55 -05:00
chyyran b996d60e9b test(d3d11): make args test harness 2023-01-30 19:48:54 -05:00
chyyran 18e1f758cd rt: apply filter settings before drawing frame 2023-01-30 19:30:23 -05:00