You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
For those interested in performance, we did a comprehensive benchmarks of Dota2 and Dolphin Emulator on macOS. Results were published to gfx-rs blog here and there.
For the extension support, see INSTANCE_EXTENSIONS and DEVICE_EXTENSIONS in the code.
Despite the fact it's written in Rust, the produced binaries have standard linking interface compatible with any program (written in the language of your choice). There are multiple ways to link to gfx-portability.
Dynamic linking
Typically, you'd need to create a symbolic link with a name that a target application expects, e.g. libvulkan.dylib -> libportability.dylib.
gfx-portability can be used with Vulkan loader like any other Vulkan driver. In order to use it this way, you need to build libportability-icd and point to it from an ICD json file:
For C, you'd need to add crate-type = ["cdylib"] to libportability-gfx/Cargo.toml and build it with the backend of your choice. Note: features of this library are fully-qualified crate names, e.g. features gfx-backend-metal. For rust, just point the cargo dependency to libportability-gfx.
Please visit our wiki for CTS hookup instructions. Once everything is set, you can generate the new results by calling make cts on Unix systems. When investigating a particular failure, it's handy to do make cts debug=<test_name>, which runs a single test under system debugger (gdb/lldb). For simply inspecting the log output, one can also do make cts pick=<test_name>.