reshade and m64p (Vulkan N64 emulator)

More
3 weeks 1 day ago #1 by ovitus
I'd like to use Reshade for CRT-Royale but haven't been able to get it working in Vulkan. Here's the log:

01:30:46:848 [10456] | INFO  | Initializing crosire's ReShade version '4.9.1.1003' (64-bit) built on '2021-01-09 21:12:36' loaded from "C:\ProgramData\ReShade\ReShade64.dll" into "C:\Program Files (x86)\mupen64plus\mupen64plus-gui.exe" ...
01:30:46:858 [10456] | INFO  | Registering hooks for "user32.dll" ...
01:30:46:858 [10456] | INFO  | > Libraries loaded.
01:30:46:858 [10456] | INFO  | > Found 14 match(es). Installing ...
01:30:46:868 [10456] | INFO  | Registering hooks for "ws2_32.dll" ...
01:30:46:868 [10456] | INFO  | > Libraries loaded.
01:30:46:868 [10456] | INFO  | > Found 8 match(es). Installing ...
01:30:46:877 [10456] | INFO  | Registering hooks for "C:\Windows\system32\d2d1.dll" ...
01:30:46:877 [10456] | INFO  | > Delayed.
01:30:46:877 [10456] | INFO  | Registering hooks for "C:\Windows\system32\d3d9.dll" ...
01:30:46:877 [10456] | INFO  | > Libraries loaded.
01:30:46:877 [10456] | INFO  | > Found 9 match(es). Installing ...
01:30:46:887 [10456] | INFO  | Registering hooks for "C:\Windows\system32\d3d10.dll" ...
01:30:46:887 [10456] | INFO  | > Delayed.
01:30:46:887 [10456] | INFO  | Registering hooks for "C:\Windows\system32\d3d10_1.dll" ...
01:30:46:887 [10456] | INFO  | > Delayed.
01:30:46:887 [10456] | INFO  | Registering hooks for "C:\Windows\system32\d3d11.dll" ...
01:30:46:887 [10456] | INFO  | > Libraries loaded.
01:30:46:887 [10456] | INFO  | > Found 2 match(es). Installing ...
01:30:46:896 [10456] | INFO  | Registering hooks for "C:\Windows\system32\d3d12.dll" ...
01:30:46:896 [10456] | INFO  | > Delayed.
01:30:46:896 [10456] | INFO  | Registering hooks for "C:\Windows\system32\dxgi.dll" ...
01:30:46:896 [10456] | INFO  | > Libraries loaded.
01:30:46:897 [10456] | INFO  | > Found 5 match(es). Installing ...
01:30:46:905 [10456] | INFO  | Registering hooks for "C:\Windows\system32\opengl32.dll" ...
01:30:46:906 [10456] | INFO  | > Libraries loaded.
01:30:46:906 [10456] | INFO  | > Found 360 match(es). Installing ...
01:30:46:918 [10456] | INFO  | Initialized.
01:30:46:919 [10456] | INFO  | Redirecting CreateDXGIFactory1(riid = {C1B6694F-FF09-44A9-B03C-77900A0A1D17}, ppFactory = 000000AAB69FBBA0) ...
01:30:46:919 [10456] | INFO  | Redirecting vkCreateInstance(pCreateInfo = 000000AAB69FBD30, pAllocator = 0000000000000000, pInstance = 000000AAB69FBE90) ...
01:30:46:919 [10456] | INFO  | > Dumping enabled instance extensions:
01:30:46:919 [10456] | INFO  |   VK_KHR_get_physical_device_properties2
01:30:46:919 [10456] | INFO  |   VK_KHR_external_memory_capabilities
01:30:46:919 [10456] | INFO  |   VK_KHR_external_semaphore_capabilities
01:30:46:919 [10456] | INFO  |   VK_EXT_debug_utils
01:30:46:919 [10456] | INFO  | > Requesting new Vulkan instance for API version 1.1 ...
01:30:46:921 [10456] | INFO  | Redirecting CreateDXGIFactory1(riid = {C1B6694F-FF09-44A9-B03C-77900A0A1D17}, ppFactory = 000000AAB69FAD38) ...
01:30:46:922 [10456] | INFO  | Redirecting CreateDXGIFactory1(riid = {C1B6694F-FF09-44A9-B03C-77900A0A1D17}, ppFactory = 000000AAB69FAD38) ...
01:30:46:922 [10456] | INFO  | Redirecting CreateDXGIFactory1(riid = {C1B6694F-FF09-44A9-B03C-77900A0A1D17}, ppFactory = 000000AAB69FAD28) ...
01:30:46:922 [10456] | INFO  | Redirecting CreateDXGIFactory1(riid = {C1B6694F-FF09-44A9-B03C-77900A0A1D17}, ppFactory = 000000AAB69FAD28) ...
01:30:46:922 [10456] | INFO  | Redirecting CreateDXGIFactory1(riid = {C1B6694F-FF09-44A9-B03C-77900A0A1D17}, ppFactory = 000000AAB69FAD38) ...
01:30:46:922 [10456] | INFO  | Redirecting CreateDXGIFactory1(riid = {C1B6694F-FF09-44A9-B03C-77900A0A1D17}, ppFactory = 000000AAB69FAD38) ...
01:30:46:923 [10456] | INFO  | Redirecting CreateDXGIFactory1(riid = {C1B6694F-FF09-44A9-B03C-77900A0A1D17}, ppFactory = 000000AAB69FAD28) ...
01:30:46:923 [10456] | INFO  | Redirecting CreateDXGIFactory1(riid = {C1B6694F-FF09-44A9-B03C-77900A0A1D17}, ppFactory = 000000AAB69FAD28) ...
01:30:46:924 [10456] | INFO  | Redirecting vkCreateDevice(physicalDevice = 000001E5F9A30FB0, pCreateInfo = 000000AAB69FB290, pAllocator = 0000000000000000, pDevice = 000000AAB69FB230) ...
01:30:46:924 [10456] | INFO  | > Dumping enabled device extensions:
01:30:46:924 [10456] | INFO  |   VK_KHR_get_memory_requirements2
01:30:46:924 [10456] | INFO  |   VK_KHR_dedicated_allocation
01:30:46:924 [10456] | INFO  |   VK_KHR_image_format_list
01:30:46:924 [10456] | INFO  |   VK_KHR_sampler_mirror_clamp_to_edge
01:30:46:924 [10456] | INFO  |   VK_KHR_external_semaphore
01:30:46:925 [10456] | INFO  |   VK_KHR_external_memory
01:30:46:925 [10456] | INFO  |   VK_KHR_external_semaphore_win32
01:30:46:925 [10456] | INFO  |   VK_KHR_external_memory_win32
01:30:46:925 [10456] | INFO  |   VK_KHR_descriptor_update_template
01:30:46:925 [10456] | INFO  |   VK_KHR_maintenance1
01:30:46:925 [10456] | INFO  |   VK_KHR_maintenance2
01:30:46:925 [10456] | INFO  |   VK_KHR_maintenance3
01:30:46:925 [10456] | INFO  |   VK_KHR_bind_memory2
01:30:46:925 [10456] | INFO  |   VK_KHR_draw_indirect_count
01:30:46:925 [10456] | INFO  |   VK_KHR_shader_draw_parameters
01:30:46:925 [10456] | INFO  |   VK_EXT_calibrated_timestamps
01:30:46:925 [10456] | INFO  |   VK_KHR_storage_buffer_storage_class
01:30:46:925 [10456] | INFO  |   VK_EXT_conservative_rasterization
01:30:46:925 [10456] | INFO  |   VK_KHR_8bit_storage
01:30:46:925 [10456] | INFO  |   VK_KHR_16bit_storage
01:30:46:925 [10456] | INFO  |   VK_KHR_shader_float16_int8
01:30:46:925 [10456] | INFO  |   VK_KHR_multiview
01:30:46:926 [10456] | INFO  |   VK_EXT_subgroup_size_control
01:30:46:926 [10456] | INFO  |   VK_NV_compute_shader_derivatives
01:30:46:926 [10456] | INFO  |   VK_EXT_host_query_reset
01:30:46:926 [10456] | INFO  |   VK_EXT_shader_demote_to_helper_invocation
01:30:46:926 [10456] | INFO  |   VK_EXT_scalar_block_layout
01:30:46:926 [10456] | INFO  |   VK_KHR_uniform_buffer_standard_layout
01:30:46:926 [10456] | INFO  |   VK_KHR_timeline_semaphore
01:30:46:926 [10456] | INFO  |   VK_KHR_sampler_ycbcr_conversion
01:30:46:926 [10456] | INFO  |   VK_EXT_memory_priority
01:30:46:926 [10456] | INFO  |   VK_EXT_memory_budget
01:30:46:926 [10456] | INFO  |   VK_KHR_synchronization2
01:30:46:926 [10456] | INFO  |   VK_EXT_external_memory_host
01:30:46:926 [10456] | INFO  |   VK_KHR_driver_properties
01:30:46:926 [10456] | WARN  | Vulkan queue used for rendering has a low priority (0.5).
01:30:46:926 [10456] | WARN  | Skipping device because it is not created with the "VK_KHR_swapchain" extension.
01:30:46:927 [10456] | WARN  | Skipping device because it is not created with a graphics queue.

This PC is Windows 11.. Reshade works on other games and emulators that use OpenGL.. any ideas why it isn't here?

Thanks,
Andrew

Please Log in or Create an account to join the conversation.

More
3 weeks 20 hours ago #2 by lordbean
Replied by lordbean on topic reshade and m64p (Vulkan N64 emulator)
Vulkan is a bit of a different animal from OpenGL and DirectX, that's why you either need the ReShade installer app open or to have it enabled globally for it to work. I'm not that familiar with the code but I'm guessing it works with Vulkan by inserting itself into the swapchain as the final step before the image is pushed to the output target, but oddly mupen64 appears to be running vulkan without creating a swapchain. In mupen64, check in Settings / Drivers / Video and see if you have an option to use OpenGL instead of Vulkan as the OpenGL version of ReShade should work with it then. You might need to go looking for an OpenGL plugin if the option isn't there.

Please Log in or Create an account to join the conversation.

More
6 days 10 hours ago #3 by mattdog1000000
Replied by mattdog1000000 on topic reshade and m64p (Vulkan N64 emulator)
It seems that although the rendering in m64p uses Vulkan, the gui uses OpenGL via qt.

(Using OpenGL instead of Vulkan in ReShade worked on m64p for me.)

Please Log in or Create an account to join the conversation.