Open kvark opened 6 years ago
Could you please give some details about 'minor tweak to WSI' for GZDoom mentioned on 0.7 release notes? I guess the minimum set of changes is this one.
The thing is I've got VK_ERROR_SURFACE_LOST_KHR
from vkQueuePresentKHR()
almost every time on launch or after starting a new game. Sometimes, like in 20 to 30% of attempts, everything works fine.
Just of curiosity, did you experience something similar?
Probably, I can even debug Portability, although I'm not familiar with Rust at all. Are you using CLion with Rust plug-in?
I would like to use Portability with GZDoom for testing and benchmarking purposes. Two Vulkan implementations are better than one anyway.
By the way, the source port is called GZDoom, not gzDoom.
@alexey-lysiuk hi! I wanted to file an issue but your github project doesn't enable issues. Would be best to have this discussion in a more specific place than our meta-issue...
Looks like you figured this out:
MoltenVK allows passing a layer, although Vulkan specs prohibit this
Basically, it's an undocumented behavior of MoltenVK implementation of the "VK_MVK_macos_surface" extension. We understand the reason why it's there, but we don't want to implement undocumented behaviors. Instead, we developed a portability-agnostic extension that would work for both us and MoltenVK and is documented properly: EXT_metal_surface. gfx-portability supports this extension since v0.6 release. MoltenVK should have it in the latest release, they implemented support about a month ago, see https://github.com/KhronosGroup/MoltenVK/issues/653
The thing is I've got VK_ERROR_SURFACE_LOST_KHR from vkQueuePresentKHR() almost every time on launch or after starting a new game. Sometimes, like in 20 to 30% of attempts, everything works fine.
I haven't seen it, although:
CAMetalLayer
way of acquiring drawables... We are looking into ways to make it more robust, see https://github.com/gfx-rs/gfx/pull/2882 .Probably, I can even debug Portability, although I'm not familiar with Rust at all. Are you using CLion with Rust plug-in?
People have different setups. I just use Sublime Text 3 with Rust Enhanced plugin.
I would like to use Portability with GZDoom for testing and benchmarking purposes. Two Vulkan implementations are better than one anyway.
This is great, thank you! We keep our hopes up when talking about benchmarks :) We just need to find a better place to communicate: this meta-issue is high level for our topic. There is a gitter room, for example. Alternatively, you can just create issues in this project (as opposed to continuing here).
Looks like DuckStation attempted to run with portability on macOS https://github.com/stenzek/duckstation/issues/555#issuecomment-648252921
now blocked by https://github.com/ValveSoftware/Dota-2-Vulkan/issues/335VK_FORMAT_B4G4R4A4_UNORM_PACK16
formatVK_FORMAT_B10G11R11_UFLOAT_PACK32
withRGB1
swizzle