vulkano/vulkano-win/Cargo.toml
Mads Marquart 0af3fb3cb3
Use raw-window-metal to get a CAMetalLayer from raw-window-handle (#2561)
The way `raw-window-metal` works is by creating a layer, and inserting
that as a sublayer, just like we did on iOS before. The bounds are then
kept in-sync with an observer, ensuring smooth resizing.

This also fixes compilation errors on iOS, and adds preliminary support
for tvOS.

The implementation now solely uses `VK_EXT_metal_surface`, which was
added in 2018, instead of `VK_MVK_ios_surface` / `VK_MVK_macos_surface`,
which are deprecated, and only available a year and a half earlier
anyhow.

Note that apart from the above, there is a slight behavioral change on
macOS: we no longer set `edgeAntialiasingMask` on the layer, as it's not
really required, and allows us to avoid depending on `objc2` directly.
It was introduced without motivation in 40e0b24, so I doubt anyone uses
it, and if they do, they can change it on the layer themselves.
2024-09-11 18:03:54 +02:00

35 lines
1.1 KiB
TOML

[package]
name = "vulkano-win"
version = "0.34.0"
edition = "2021"
authors = [
"Pierre Krieger <pierre.krieger1708@gmail.com>",
"The vulkano contributors",
]
repository = "https://github.com/vulkano-rs/vulkano/tree/master/vulkano-win"
description = "Link between vulkano and winit"
license = "MIT OR Apache-2.0"
documentation = "https://docs.rs/vulkano-win"
homepage = "https://vulkano.rs"
keywords = ["vulkan", "bindings", "graphics", "gpu", "rendering"]
categories = ["rendering::graphics-api"]
readme = "../README.md"
[features]
default = ["winit", "raw-window-handle"]
raw-window-handle = ["dep:raw-window-handle"]
raw-window-handle_ = ["dep:raw-window-handle"]
winit = ["dep:winit"]
winit_ = ["dep:winit"]
# NOTE(Marc): The dependencies here are not workspace dependencies because vulkano-win is
# deprecated and won't be receiving updates.
[dependencies]
raw-window-handle = { version = "0.5", optional = true }
vulkano = { workspace = true }
winit = { version = "0.28", optional = true }
[target.'cfg(target_vendor = "apple")'.dependencies]
raw-window-metal.workspace = true