metal-rs
metal-rs copied to clipboard
Rust bindings for Metal
Inspired by #224 All methods that return auto-referenced objects have this common property: they assume ARP alive, and they could return a reference with a lifetime not greater than that...
Relate to #87
Autorelease is a major pain point for Apple integration, and users of this library in particular. It forces an uncomfortable tradeoff between performance and safety, and is quite prone to...
Is adding core-graphics as a dependency ok? Is there an alternative?
Apple recently announced official C++ bindings for metal. https://developer.apple.com/metal/cpp/ I was curious if it would be possible to use bindgen on it to autogenerate bindings to metal. If bindings are...
We have `set_label` methods, which use `nsstring_from_str`, which uses auto-release pool. This is inviting for leaks in user code. There is no reason why `set_label` should use any auto-release pools,...
Trying to figure out if I'm missing some neat trick. At first glance it appears that `MTLPixelFormat` and related are unsound. For example, `MTLPixelFormat` is returned by objc [here](https://github.com/gfx-rs/metal-rs/blob/600f865d24adb1f0430f06a5d4194742cf6731ce/src/pipeline/render.rs#L84). If...
Reading https://developer.apple.com/documentation/metal/frame_capture_debugging_tools/enhancing_frame_capture_by_using_labels?language=objc gets me confused. So the `pushDebugGroup` and friends are only defined on `MTLCommandEncoder`, and yet their own example shows how to use it on `MTLRenderPassEncoder`. If we can...