mirror of
https://github.com/italicsjenga/portability.git
synced 2025-02-17 06:37:43 +11:00
No description
52: Return VK_INCOMPLETE for partial physical device enumeration r=kvark a=grovesNL Trivial fix for `dEQP-VK.api.info.instance.physical_devices: Query didn't return VK_INCOMPLETE(Fail)` (only tested with Metal CTS). [Reference:](https://www.khronos.org/registry/vulkan/specs/1.0/man/html/vkEnumeratePhysicalDevices.html) > If pPhysicalDeviceCount is smaller than the number of physical devices available, VK_INCOMPLETE will be returned instead of VK_SUCCESS, to indicate that not all the available physical devices were returned. Co-authored-by: grovesNL <josh@joshgroves.com> |
||
---|---|---|
conformance | ||
libportability | ||
libportability-gfx | ||
libportability-icd | ||
modules | ||
native | ||
.gitignore | ||
.gitmodules | ||
.travis.yml | ||
appveyor.yml | ||
bors.toml | ||
Cargo.toml | ||
CMakeLists.txt | ||
LICENSE | ||
Makefile | ||
README.md |
gfx-portability
This is a prototype library implementing Vulkan Portability Initiative using gfx-rs low-level core. See gfx-rs meta issue for backend limitations and further details.
Vulkan CTS coverage
gfx-rs Backend | Total cases | Pass | Fail | Quality warning | Compatibility warning | Not supported | Resource error | Internal error | Timeout | Crash |
---|---|---|---|---|---|---|---|---|---|---|
Vulkan | 3742 | 1393 | 101 | 0 | 0 | 2248 | 0 | 0 | 0 | 0 |
DX12 | 3563 | 1243 | 73 | 0 | 0 | 2247 | 0 | 0 | 0 | 0 |
Metal | 3710 | 1260 | 66 | 0 | 0 | 2384 | 0 | 0 | 0 | 0 |
Currently stopping with:
Unable to create Vulkan instance: VkError(ErrorIncompatibleDriver)
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.
Check out
git clone --recursive https://github.com/gfx-rs/portability && cd portability
Build
Makefile (Unix)
make
CMake (Window)
Build the Rust library (portability implementation):
cargo build --manifest-path libportability/Cargo.toml --features <vulkan|dx12|metal>
Build the native example:
mkdir build
cd build
cmake ..
cmake --build . --target native_test
Running Samples
LunarG (API-Samples)
After building portability
as shown above, grab a copy from https://github.com/LunarG/VulkanSamples.
Manually override the VULKAN_LOADER
variable and set it to the portability library.
set (VULKAN_LOADER "path/to/portability/library")
Then proceed with the normal build instructions.