chyyran
b7071958bd
rt(d3d9): add a runtime for direct3d 9
2024-03-07 21:09:15 -05:00
chyyran
2550bf7ed5
test: update shaders_slang
2024-03-05 19:03:54 -05:00
chyyran
ed7216990a
test: update slang_shaders
2024-03-03 13:19:55 -05:00
chyyran
d3d8e85461
capi: replace unstable library features with polyfills
2024-02-16 01:19:52 -05:00
chyyran
cbac011969
reflect(wgsl): only analyze active ubo members
2024-02-15 21:43:02 -05:00
chyyran
dca93a1310
test(mtl): add objc example
2024-02-14 03:08:09 -05:00
chyyran
d0a5224c10
dep: upgrade librashader-spirv-cross
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
b2d8d084be
test: update shaders_slang
2024-02-09 02:02:13 -05:00
chyyran
4dfcdf2725
reflect(wgsl): wgsl compile backend
2024-02-06 19:04:28 -05:00
chyyran
797625903a
build(obs): add openbuildservice
2024-02-04 13:16:48 -05:00
chyyran
8cff5a47a8
test: fix some paths to test shaders
2023-02-16 21:32:05 -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
0bbf124b54
ci: move slang-shaders submodule to shaders_slang
2023-02-14 17:57:48 -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
55e800b67e
d3d12: fix mipmaps again
2023-02-09 19:44:01 -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
79ed9c222a
doc: clarify build dependencies
2023-02-07 20:05:03 -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
4dcbdadb4f
capi: publish d3d12
2023-02-06 02:17:30 -05:00
chyyran
b996d60e9b
test(d3d11): make args test harness
2023-01-30 19:48:54 -05:00
chyyran
abcd3bdc24
d3d11: set the proper sampler for each pass input
2023-01-29 22:19:08 -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
chyyran
b799c1c6ef
gl: initialize history and feedback fbos before drawing
2022-11-21 02:36:37 -05:00
chyyran
f1280202e5
hlsl: implement hlsl reflection
2022-11-07 00:25:11 -05:00
chyyran
073921b9fb
reflect: implement shader reflection
2022-10-27 02:22:44 -04:00
chyyran
6ab3775b23
reflect: some cursed experiments
2022-10-25 01:47:41 -04:00
chyyran
36a885e55a
reflect: partially implement reflection
2022-10-23 23:22:26 -04:00
chyyran
731c27a4be
repo: move slang-shaders to root/test
2022-10-21 00:09:38 -04:00