Commit graph

111 commits

Author SHA1 Message Date
chyyran 528dd1b53c reflect: fix some refs 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 fa8ee5d143 build: fix cbindgen not finding ctypes
* removes capi internal interface from librashader crate
* adds missing noop impls in header
* fix build on rustc < 1.74
2024-02-09 18:02:30 -05:00
chyyran 2fbc7f92da capi: add preset_ctx C API 2024-02-09 02:49:31 -05:00
chyyran f5da7d8421 fmt: cargo fmt 2023-07-20 02:40:13 -04:00
chyyran 24f28bb605 capi: better clarify story around panic safety
- catches panics for all functions now except frame for performance reasons
2023-04-23 02:09:04 -04:00
chyyran 916cd1a681 doc: fix doc typos 2023-04-23 01:44:28 -04:00
chyyran a6b1e0a412 capi: use unwrap_unchecked when we're certain a value is not null. 2023-02-16 18:23:56 -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 83422de1f7 capi: expose disable_cache option to capi 2023-02-15 18:08:47 -05:00
chyyran d925dc95c6 capi: expose helpers to ensure ABI version compatibility 2023-02-11 15:37:21 -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 115382d8f0 gl: rename capi Framebuffer handle to 'fbo' to make it more clear. 2023-02-11 00:19:53 -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 512a4c0050 rt: make runtimes thread safe and document thread safety guarantees 2023-02-10 03:20:59 -05:00
chyyran a19ea7cf7d gl: remove support for POT textures 2023-02-10 00:59:22 -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 5e99ddf73c vk/d3d12: recompile pipelines on incompatible output format.
This also involves changes to the C API, since we're breaking API anyways
might as well unify some type names. No breakages for D3D11.
2023-02-08 21:21:40 -05:00
chyyran 3eae38f815 fmt: cargo fmt 2023-02-06 21:56:30 -05:00
chyyran 4dcbdadb4f capi: publish d3d12 2023-02-06 02:17:30 -05:00
chyyran 8b6481abc1 fmt: run clippy and rustfmt 2023-01-29 02:30:58 -05:00
chyyran 7900f8538e capi: swap width and height back 2023-01-27 18:17:35 -05:00
chyyran 07944f9c29 doc(capi): fix d3d11 param docs 2023-01-27 00:40:48 -05:00
chyyran cdf94cee1f capi(d3d11): Don't drop passed in COM pointers 2023-01-26 23:12:56 -05:00
chyyran 8e67c637a5 capi: fix pointer type bindings for D3D11 2023-01-26 19:05:48 -05:00
chyyran 9cdf646681 build: only build d3d11 stuff for windows 2023-01-21 01:54:06 -05:00
chyyran 7f01c9aad3 capi: fix height/width order 2023-01-21 00:33:44 -05:00
chyyran 4e51704e35 reflect: abstract away preset compilation 2023-01-18 20:56:08 -05:00
chyyran 40e4ce908f preprocess: store parameters in FxHashMap 2023-01-15 14:06:38 -05:00
chyyran 19e8da7d85 chore: general cleanup 2023-01-15 11:08:13 -05:00
chyyran 05ec73a11c fmt: run cargo fmt 2023-01-15 03:06:09 -05:00
chyyran c3a532d729 rt: unify semantics binding logic 2023-01-15 03:01:23 -05:00
chyyran 831ba3d357 docs: more surgically avoid linux linking to windows symbols 2023-01-14 20:13:15 -05:00
chyyran e320e093e2 build: fix missing symbols on linux 2023-01-14 18:56:31 -05:00
chyyran c1669916d4 ld: expose runtime params api to loader 2023-01-14 17:14:37 -05:00
chyyran 3592b453e8 capi: expose pass count/param 2023-01-14 15:52:58 -05:00
chyyran 2e2713a21b capi: expose FilterChainParameters to capi 2023-01-14 09:36:26 -05:00
chyyran 1fa85d1e4d capi: check api is aligned 2023-01-14 00:27:35 -05:00
chyyran 403ed5ed13 reflect: rename SpirV to SPIRV 2023-01-13 23:59:16 -05:00
chyyran 3f3712eaa4 chore: cleanup 2023-01-13 18:11:41 -05:00
chyyran 2728cff55c capi: document rest of capi 2023-01-13 18:10:20 -05:00
chyyran 3e628093ae capi: finish capi for vulkan 2023-01-13 18:10:20 -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 f25693815b capi: use extern_ffi where possible 2023-01-13 16:05:13 -05:00
chyyran c948c882ab api: export Size from librashader::runtime 2023-01-13 03:00:45 -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 43bd53a92b chore: general clean up and format 2023-01-13 01:48:04 -05:00
chyyran 48321d997b fmt: run cargo fmt 2023-01-09 22:54:54 -05:00
chyyran 4393f5c871 capi: capi reflect api 2023-01-02 18:22:52 -05:00
chyyran 8fca2954b0 fmt: run cargo fmt 2022-12-21 21:39:31 -05:00
chyyran 2cce27ecb9 capi: make function pointer types for everything 2022-12-05 00:06:37 -05:00
chyyran ebe889df2f capi: get rid of safer_ffi 2022-12-04 23:54:47 -05:00
chyyran 0e18b56752 capi: d3d11 capi 2022-12-04 23:54:18 -05:00
chyyran 6ab03ecc99 capi: more docs 2022-12-04 22:48:57 -05:00
chyyran 45913c32bf capi: docs 2022-12-04 22:37:03 -05:00
chyyran afe7165707 capi: error api 2022-12-04 22:35:51 -05:00
chyyran a00c4e1d88 capi: get rid of Box and use NonNull pointers 2022-12-03 19:55:27 -05:00
chyyran 4946bfc0dd gl: catch panic if gl not intialized 2022-12-03 19:07:15 -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