NVIDIAGameWorks / NRI

Low-level abstract render interface
MIT License
208 stars 25 forks source link

RenderDoc Vulkan #98

Open pollend opened 3 days ago

pollend commented 3 days ago

Im trying to run my app in renderdoc but it fails to create the instance. I've been able to use renderdoc with other application what does NRI do different that prevents this? maybe im missing a vulkan extension?

nri::INFO (DeviceVK.hpp:135) - VK::Unknown - Supported instance extensions:
nri::INFO (DeviceVK.hpp:137) - VK::Unknown -     VK_EXT_acquire_drm_display (v1)
nri::INFO (DeviceVK.hpp:137) - VK::Unknown -     VK_EXT_acquire_xlib_display (v1)
nri::INFO (DeviceVK.hpp:137) - VK::Unknown -     VK_EXT_debug_report (v10)
nri::INFO (DeviceVK.hpp:137) - VK::Unknown -     VK_EXT_debug_utils (v2)
nri::INFO (DeviceVK.hpp:137) - VK::Unknown -     VK_EXT_direct_mode_display (v1)
nri::INFO (DeviceVK.hpp:137) - VK::Unknown -     VK_EXT_display_surface_counter (v1)
nri::INFO (DeviceVK.hpp:137) - VK::Unknown -     VK_EXT_surface_maintenance1 (v1)
nri::INFO (DeviceVK.hpp:137) - VK::Unknown -     VK_EXT_swapchain_colorspace (v4)
nri::INFO (DeviceVK.hpp:137) - VK::Unknown -     VK_KHR_device_group_creation (v1)
nri::INFO (DeviceVK.hpp:137) - VK::Unknown -     VK_KHR_display (v23)
nri::INFO (DeviceVK.hpp:137) - VK::Unknown -     VK_KHR_external_fence_capabilities (v1)
nri::INFO (DeviceVK.hpp:137) - VK::Unknown -     VK_KHR_external_memory_capabilities (v1)
nri::INFO (DeviceVK.hpp:137) - VK::Unknown -     VK_KHR_external_semaphore_capabilities (v1)
nri::INFO (DeviceVK.hpp:137) - VK::Unknown -     VK_KHR_get_display_properties2 (v1)
nri::INFO (DeviceVK.hpp:137) - VK::Unknown -     VK_KHR_get_physical_device_properties2 (v2)
nri::INFO (DeviceVK.hpp:137) - VK::Unknown -     VK_KHR_get_surface_capabilities2 (v1)
nri::INFO (DeviceVK.hpp:137) - VK::Unknown -     VK_KHR_surface (v25)
nri::INFO (DeviceVK.hpp:137) - VK::Unknown -     VK_KHR_surface_protected_capabilities (v1)
nri::INFO (DeviceVK.hpp:137) - VK::Unknown -     VK_KHR_xcb_surface (v6)
nri::INFO (DeviceVK.hpp:137) - VK::Unknown -     VK_KHR_xlib_surface (v6)
nri::INFO (DeviceVK.hpp:137) - VK::Unknown -     VK_EXT_debug_utils (v2)
nri::ERROR (DeviceVK.hpp:1287) - VK::Unknown - CreateInstance: vkCreateInstance returned -7
dzhdanNV commented 3 days ago

Unfortunately, I don't know. At least because it's Linux. Does RenderDoc work with NRI on Windows? (I can try it myself)

vertver commented 3 days ago

image RenderDoc works fine on Windows and D3D12, so it might be an issue with unsupported extensions on Vulkan

pollend commented 2 days ago

umm sounds like it, im not sure what extension though that kind of annoying. I was also able to get this to work on windows.

vertver commented 2 days ago

Can you enable validation layers to check where exactly the problem appears?

pollend commented 2 days ago

Can you enable validation layers to check where exactly the problem appears?

I have it enabled it just end after CreateInstance. I'm pretty sure i have it enabled it will throw if i just ran the app normally or is there something else I need to do?

vertver commented 2 days ago

Yeah, it should work this way. Try to attach debugger to your application and see what's happening.

pollend commented 2 days ago

Yeah, it should work this way. Try to attach debugger to your application and see what's happening.

you would have to probably look at mesa it calls down into mesa and returns so i'm not sure how its failing. you mean step down into the call?

vertver commented 1 day ago

you mean step down into the call

I mean, can you enable validation layer and then debug exactly where the problem occurs?