Commit graph

26 commits

Author SHA1 Message Date
chyyran d3d8e85461 capi: replace unstable library features with polyfills 2024-02-16 01:19:52 -05:00
chyyran dca93a1310 test(mtl): add objc example 2024-02-14 03:08:09 -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 8cff5a47a8 test: fix some paths to test shaders 2023-02-16 21:32:05 -05:00
chyyran cff4f650c9 ld: add a flag to check if the instance is loaded
Also explicitly create function pointers to NULL, otherwise
null instance is technically unsound to call.

Practically if the create function is unloaded, so will the frame
function, but we should be consistent with the safety model.
2023-02-11 16:40:33 -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 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 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 4dcbdadb4f capi: publish d3d12 2023-02-06 02:17:30 -05:00
chyyran 2d6a967c7f d3d11: generate mipmaps for inputs if requested 2023-01-29 19:04:34 -05:00
chyyran b5ce7ce30d tests: add imgui example for dx11
Currently only dx11 is available for testing but plan is to verify correctness of bindings with others.
2023-01-28 03:07:56 -05:00
chyyran 7900f8538e capi: swap width and height back 2023-01-27 18:17:35 -05:00
chyyran 1e99c169db d3d11: rebind vertices each pass 2023-01-27 01:22:53 -05:00
chyyran 3d0bdd0eac test: update slang-shaders repo 2023-01-27 00:07:12 -05:00
chyyran 51d112fb7d examples: add another d3d11 c++ example 2023-01-26 23:47:27 -05:00
chyyran 4aa0e4450f examples: add d3d11 c++ examples 2023-01-26 23:18:10 -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 da4f61fcc4 ld: finish librashader_ld 2023-01-14 01:38:59 -05:00
chyyran 7e34b991e5 ld: start writing librashader_ld 2023-01-13 18:30:16 -05:00
chyyran 3e628093ae capi: finish capi for vulkan 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 45913c32bf capi: docs 2022-12-04 22:37:03 -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