chyyran
41353ac9c4
rt(gl): remove need for explicit external FBO object
...
Replaced with an internal FBO that is state tracked so as to not recreate it every frame, but will update if necessary
2024-09-22 02:06:47 -04:00
chyyran
4d790e7a7b
doc: update ABI versions in version.rs and readme
2024-09-22 02:06:47 -04:00
chyyran
aeb0a16cfb
rt(vk): allow specifying the queue to use
2024-09-22 02:06:47 -04:00
chyyran
1e33b4cc03
capi: make viewport optional, defaulting to a viewport that is the entire size of the render target
2024-09-22 02:06:47 -04:00
chyyran
f0a7970b44
rt: add viewport extent separate from output texture dimensions
2024-09-22 02:06:47 -04:00
chyyran
e7e6ed8fb8
capi: remove _internal_alloc from libra_preset_param_list_t
2024-09-22 02:06:47 -04:00
chyyran
61fdaeea14
capi(gl): update to take opengl context in constructor
2024-09-22 02:06:47 -04:00
chyyran
2552d4321b
capi(gl): set output in libra_output_image_gl_t, not viewport
2024-09-22 02:06:47 -04:00
chyyran
eaf939c861
capi(vk): set output in libra_output_image_vk_t, not viewport
2024-09-22 02:06:47 -04:00
chyyran
14abb0362b
capi(d3d12): set output in libra_output_image_d3d12_t, not viewport
2024-09-22 02:06:47 -04:00
chyyran
e064f8d0be
capi(d3d12): remove ignored fields from libra_source_image_d3d12_t
2024-09-22 02:06:47 -04:00
chyyran
f18c22a95a
capi(d3d11): take ManuallyDrop<ID3D11ShaderResourceView> directly in libra_d3d11_filter_chain_t
2024-09-22 02:06:47 -04:00
chyyran
e6d23f1d8f
doc: update opengl example
2024-09-22 02:06:47 -04:00
chyyran
72a98272f3
doc(capi): document all C API members
2024-09-21 01:50:05 -04:00
chyyran
4ba5aefafc
capi: don't export wrap_ok macro
...
This was done by accident, so will be made exempt from Rust versioning guarantees.
2024-09-18 00:55:05 -04:00
chyyran
f49e3b58d8
doc(capi): fix rotation integer docs
2024-09-17 19:06:57 -04:00
jcm
1f4f1b6c12
capi: Fix Metal error message, function header
2024-09-17 18:27:43 -04:00
chyyran
e930f90a9c
capi: allow building on stable by gating #[doc] comments
2024-09-15 03:10:45 -04:00
chyyran
c291d9d85f
capi: remove dependency on try_blocks
...
Uses an IIFE + return type changes to remove the need for try blocks
2024-09-14 21:26:19 -04:00
chyyran
98d8d91c66
capi: undo const qualification of chain in _filter_chain_get_param
and _filter_chain_get_active_pass_count
...
This should be done over an ABI bump, even if the headers weren't updated.
2024-09-13 17:21:03 -04:00
chyyran
090e268c4a
doc: improve docs
2024-09-06 22:45:07 -04:00
chyyran
ec3add1616
rt(params): rename get_parameter -> parameter_value
2024-09-06 22:45:07 -04:00
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
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
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
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
chyyran
fff80df5a0
ci: temporarily remove deny-deprecated on ctypes to unblock ares
2024-06-14 18:17:36 -04:00
chyyran
8c8e386a6c
capi(d3d9): expose d3d9 in capi
2024-03-07 21:09:15 -05:00
chyyran
d3d8e85461
capi: replace unstable library features with polyfills
2024-02-16 01:19:52 -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
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
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
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