Commit graph

222 commits

Author SHA1 Message Date
chyyran 40a56bf165 reflect/preprocess/presets: use SmallString where it makes sense
Most use cases are internal so at least for the runtime consumers there's no API change, but preset parsing
and reflection items are public API so might as well put this as part of 0.4.0
2024-09-06 22:45:07 -04:00
chyyran c447e40583 rt: redesign parameters to be thread-safe across FFI using arcswap and atomicusize
This should allow C FFI consumers to modify frame parameters from a different thread without it being UB.
2024-09-06 22:45:07 -04:00
chyyran 8fb5d48a1e chore: Release 2024-08-21 20:13:23 -04:00
chyyran 436d1fe3cd chore: Release 2024-08-21 00:38:32 -04:00
chyyran 321e30a0f1 capi: extend config_struct macro to handle overrides 2024-08-19 18:33:30 -04:00
chyyran ac66b1b6f6 style: fix warnings 2024-08-09 00:56:44 -04:00
chyyran 899fb50da6 chore: Release 2024-08-03 00:13:40 -04:00
chyyran 3cda5b706d rt(d3d12): get rid of size in inputview 2024-08-02 00:16:52 -04:00
chyyran 4d6793d305 rt(d3d11): get rid of input/output view wrappers 2024-08-02 00:16:52 -04:00
chyyran d4b4366836 dep: update ash to 0.38 2024-08-01 08:37:40 -04:00
chyyran f6cf642e50 chore: Release 2024-07-29 00:44:51 -04:00
chyyran 98958dfb5e dep: update rustc_hash 2024-07-29 00:40:59 -04:00
chyyran b5d523e9f3 rt(mtl): move icrate definitions to objc2-metal 2024-07-29 00:40:59 -04:00
chyyran 5e9ce1207c Revert "ci: temporarily remove deny-deprecated on ctypes to unblock ares"
This reverts commit a8d2d1d2ada8fd7e18ee55c53ce5115ef19d6154.
2024-07-29 00:40:59 -04:00
Stefan Schlosser b84e104212 capi: fix malformed vulkan include 2024-07-29 00:40:21 -04:00
chyyran fff80df5a0 ci: temporarily remove deny-deprecated on ctypes to unblock ares 2024-06-14 18:17:36 -04:00
chyyran e8ffd8fdf3 chore: Release 2024-03-08 00:18:30 -05:00
chyyran 8c8e386a6c capi(d3d9): expose d3d9 in capi 2024-03-07 21:09:15 -05:00
chyyran 9dc0cf26fd chore: Release 2024-03-05 19:04:14 -05:00
chyyran 31b7a6f33f chore: Release 2024-03-03 13:21:29 -05:00
chyyran d72519b9fd chore: Release 2024-03-01 01:41:50 -05:00
chyyran a849f5e745 dep: unify on windows 0.52.0 2024-02-26 21:17:30 -05:00
chyyran 4ef4b8762b chore: Release 2024-02-24 12:38:13 -05:00
chyyran be11953516 build: allow passing arbitrary cargo flags 2024-02-20 19:26:43 -05:00
chyyran f073c76ade chore: Release 2024-02-19 16:19:05 -05:00
chyyran a8ae407ddb chore: Release 2024-02-17 03:01:28 -05:00
chyyran 1f5b4380a3 chore: Release 2024-02-16 18:18:33 -05:00
chyyran af49128ee7 chore: Release 2024-02-16 01:53:56 -05:00
chyyran d3d8e85461 capi: replace unstable library features with polyfills 2024-02-16 01:19:52 -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 4247e64336 docs: update capi docs 2024-02-14 20:50:17 -05:00
chyyran a2987555a2 chore: Release 2024-02-14 03:08:40 -05:00
chyyran 3afcd6223c build(capi): dont enable all core features 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 ab31abb3d7 capi(mtl): prep metal capi 2024-02-14 03:08:09 -05:00
chyyran 363657deef rt(vk): make render passes the default, and dynamic rendering not.
This is technically a breaking change for the C API, but it doesn't break ABI.
If someone complains there is a migration guide anyways...
2024-02-14 03:08:09 -05:00
chyyran 5554703af7 rt(mtl): fix stride asssignment 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 4762055dc1 reflect(msl): naga msl implementation 2024-02-11 15:48:01 -05:00
chyyran d0a5224c10 dep: upgrade librashader-spirv-cross 2024-02-11 15:48:01 -05:00
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 12af3c3f3a chore: Release 2024-02-09 18:30:07 -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 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 b7f62dc378 chore: Release 2024-02-07 23:56:09 -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 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 f5da7d8421 fmt: cargo fmt 2023-07-20 02:40:13 -04:00
chyyran ab8072c4f7 chore: Release 2023-04-23 18:52:14 -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 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 284e0e2a0f capi: emit delayload link arg for d3d12 for systems that don't have dxcompiler.dll 2023-02-19 11:29:21 -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 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 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 ceb5a6d6ea build(docs.rs): properly specify no default features 2023-02-16 00:55:47 -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 7d6701aa4e chore: Release 2023-02-15 22:58:34 -05:00
chyyran 0000fdbdec chore: Release 2023-02-15 18:40:06 -05:00
chyyran 83422de1f7 capi: expose disable_cache option to capi 2023-02-15 18:08:47 -05:00
chyyran 893c58c53d chore: Release 2023-02-13 00:41:53 -05:00
chyyran bc45729a51 build: replace cargo post with custom buildscript 2023-02-11 18:12:14 -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 cc3e50611e chore: Release 2023-02-08 21:22:33 -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 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 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 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 8588021a6e chore: Release 2023-02-06 02:48:40 -05:00
chyyran 37cb3493ca chore: Release 2023-02-06 02:21:19 -05:00
chyyran 4dcbdadb4f capi: publish d3d12 2023-02-06 02:17:30 -05:00
chyyran b7a44f25f3 chore: Release 2023-01-29 22:49:26 -05:00