-
Notifications
You must be signed in to change notification settings - Fork 257
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Want to know about how does OpenXR manage/destroy Vulkan resources. #377
Comments
Oops, I made something wrong, I let the VulkanGraphicsPlugin destroy the device before destroying other objects, let me try again. This should be the output after the members are destructed:
|
Which runtime/device are you using? This is probably a bug with the runtime in question. |
An issue (number 1928) has been filed to correspond to this issue in the internal Khronos GitLab (Khronos members only: KHR:openxr/openxr#1928 ), to facilitate working group processes. This GitHub issue will continue to be the main site of discussion. |
Yes, you are right. It happens when applications are running on SteamVR. I tried Oculus runtime just now after seeing your comment, and the errors are gone. I'm using quest2, the SteamVR runtime throws these errors no matter if I run it through Virtual Desktop or through the Oculus app. |
OK, so steamvr. It also depends on your GPU and driver version: what are those? |
RTX4090, driver version 528.24 |
Vulkan version: 1.3
In my application, when I try to destroy the Vulkan logical device, the validation layer complains that a bunch of objects has not been destroyed yet. I spent an entire day trying to properly destroy the resources until I realized that these objects were not created by me at all. Then they must be created by OpenXR I think since it's the only part of my code that interact with Vulkan.
And I also found an #issue saying that the hello-xr demo doesn't destroy the Vulkan device manually. And it is true indeed. So I tried to add a destructor for the VulkanGraphicsPlugin class. And as a result, the validation layer complained the same thing (maybe not completely the same) as it does in my application.
I don't understand how OpenXR manages these Vulkan objects, maybe it's a bug, or maybe I just shouldn't destroy the Vulkan logical device myself, and OpenXR can handle this for me, so I'm asking here.
Here's the validation layer output from hello-xr after manually destroying m_vkDevice field:
The text was updated successfully, but these errors were encountered: