doitsujin / dxvk

Vulkan-based implementation of D3D8, 9, 10 and 11 for Linux / Wine
zlib License
13.01k stars 834 forks source link

Black screen on Elden Ring #2518

Closed ghost closed 2 years ago

ghost commented 2 years ago

In the last few days i changed to linux because i discovered that my GPU doesn't support Elden Ring's Dx12 (gtx 760), and after some reading i thought i could play in linux thanks to vulkan translating the dx12, and then installed Proton GE on steam (last version), but every time i tried do open the game, it just appeared a black screen on the corner (just like when i tried to use the dxcpl force warp in windows) and the game closes itself. Thats the "start_protected_game.exe" log (i tried the experimental version of proton and the 7.0.1 too): info: Game: start_protected_game.exe info: DXVK: v1.9.4 info: Built-in extension providers: info: Win32 WSI info: OpenVR info: OpenXR info: OpenVR: could not open registry key, status 2 info: OpenVR: Failed to locate module info: Enabled instance extensions: info: VK_KHR_get_surface_capabilities2 info: VK_KHR_surface info: VK_KHR_win32_surface warn: Skipping CPU adapter: llvmpipe (LLVM 12.0.0, 256 bits) info: D3D9: VK_FORMAT_D16_UNORM_S8_UINT -> VK_FORMAT_D24_UNORM_S8_UINT info: NVIDIA GeForce GTX 760: info: Driver: 470.86.0 info: Vulkan: 1.2.175 info: Memory Heap[0]: info: Size: 2048 MiB info: Flags: 0x1 info: Memory Type[7]: Property Flags = 0x1 info: Memory Heap[1]: info: Size: 5910 MiB info: Flags: 0x0 info: Memory Type[0]: Property Flags = 0x0 info: Memory Type[1]: Property Flags = 0x0 info: Memory Type[2]: Property Flags = 0x0 info: Memory Type[3]: Property Flags = 0x0 info: Memory Type[4]: Property Flags = 0x0 info: Memory Type[5]: Property Flags = 0x0 info: Memory Type[6]: Property Flags = 0x0 info: Memory Type[8]: Property Flags = 0x6 info: Memory Type[9]: Property Flags = 0xe info: Process set as DPI aware info: Game: start_protected_game.exe info: DXVK: v1.9.4 info: Built-in extension providers: info: Win32 WSI info: OpenVR info: OpenXR info: OpenVR: could not open registry key, status 2 info: OpenVR: Failed to locate module info: Enabled instance extensions: info: VK_KHR_get_surface_capabilities2 info: VK_KHR_surface info: VK_KHR_win32_surface warn: Skipping CPU adapter: llvmpipe (LLVM 12.0.0, 256 bits) info: D3D9: VK_FORMAT_D16_UNORM_S8_UINT -> VK_FORMAT_D24_UNORM_S8_UINT info: NVIDIA GeForce GTX 760: info: Driver: 470.86.0 info: Vulkan: 1.2.175 info: Memory Heap[0]: info: Size: 2048 MiB info: Flags: 0x1 info: Memory Type[7]: Property Flags = 0x1 info: Memory Heap[1]: info: Size: 5910 MiB info: Flags: 0x0 info: Memory Type[0]: Property Flags = 0x0 info: Memory Type[1]: Property Flags = 0x0 info: Memory Type[2]: Property Flags = 0x0 info: Memory Type[3]: Property Flags = 0x0 info: Memory Type[4]: Property Flags = 0x0 info: Memory Type[5]: Property Flags = 0x0 info: Memory Type[6]: Property Flags = 0x0 info: Memory Type[8]: Property Flags = 0x6 info: Memory Type[9]: Property Flags = 0xe info: Process set as DPI aware info: Device properties: info: Device name: : NVIDIA GeForce GTX 760 info: Driver version : 470.86.0 info: Enabled device extensions: info: VK_EXT_4444_formats info: VK_EXT_custom_border_color info: VK_EXT_depth_clip_enable info: VK_EXT_extended_dynamic_state info: VK_EXT_host_query_reset info: VK_EXT_robustness2 info: VK_EXT_shader_demote_to_helper_invocation info: VK_EXT_transform_feedback info: VK_EXT_vertex_attribute_divisor info: VK_KHR_create_renderpass2 info: VK_KHR_depth_stencil_resolve info: VK_KHR_draw_indirect_count info: VK_KHR_driver_properties info: VK_KHR_image_format_list info: VK_KHR_sampler_mirror_clamp_to_edge info: VK_KHR_shader_float_controls info: VK_KHR_swapchain info: Device features: info: robustBufferAccess : 1 info: fullDrawIndexUint32 : 1 info: imageCubeArray : 1 info: independentBlend : 1 info: geometryShader : 1 info: tessellationShader : 0 info: sampleRateShading : 1 info: dualSrcBlend : 0 info: logicOp : 0 info: multiDrawIndirect : 0 info: drawIndirectFirstInstance : 0 info: depthClamp : 1 info: depthBiasClamp : 1 info: fillModeNonSolid : 1 info: depthBounds : 1 info: multiViewport : 1 info: samplerAnisotropy : 1 info: textureCompressionBC : 1 info: occlusionQueryPrecise : 1 info: pipelineStatisticsQuery : 1 info: vertexPipelineStoresAndAtomics : 1 info: fragmentStoresAndAtomics : 0 info: shaderImageGatherExtended : 0 info: shaderStorageImageExtendedFormats : 0 info: shaderStorageImageReadWithoutFormat : 0 info: shaderStorageImageWriteWithoutFormat : 1 info: shaderClipDistance : 1 info: shaderCullDistance : 1 info: shaderFloat64 : 0 info: shaderInt64 : 0 info: variableMultisampleRate : 0 info: VK_EXT_4444_formats info: formatA4R4G4B4 : 1 info: formatA4B4G4R4 : 1 info: VK_EXT_custom_border_color info: customBorderColors : 1 info: customBorderColorWithoutFormat : 1 info: VK_EXT_depth_clip_enable info: depthClipEnable : 1 info: VK_EXT_extended_dynamic_state info: extendedDynamicState : 1 info: VK_EXT_host_query_reset info: hostQueryReset : 1 info: VK_EXT_memory_priority info: memoryPriority : 0 info: VK_EXT_robustness2 info: robustBufferAccess2 : 1 info: robustImageAccess2 : 0 info: nullDescriptor : 1 info: VK_EXT_shader_demote_to_helper_invocation info: shaderDemoteToHelperInvocation : 1 info: VK_EXT_transform_feedback info: transformFeedback : 0 info: geometryStreams : 0 info: VK_EXT_vertex_attribute_divisor info: vertexAttributeInstanceRateDivisor : 1 info: vertexAttributeInstanceRateZeroDivisor : 1 info: VK_KHR_buffer_device_address info: bufferDeviceAddress : 0 info: Queue families: info: Graphics : 0 info: Transfer : 1 warn: DXVK: No state cache file found warn: DXVK: Creating new state cache file info: DXVK: Using 2 compiler threads info: D3D9DeviceEx::ResetSwapChain: info: Requested Presentation Parameters info: - Width: 1 info: - Height: 1 info: - Format: D3D9Format::Unknown info: - Auto Depth Stencil: false info: ^ Format: D3D9Format::Unknown info: - Windowed: true info: Presenter: Actual swap chain properties: info: Format: VK_FORMAT_B8G8R8A8_UNORM info: Present mode: VK_PRESENT_MODE_IMMEDIATE_KHR info: Buffer size: 1x1 info: Image count: 2 info: Exclusive FS: 0 info: D3D9DeviceEx::ResetSwapChain: info: Requested Presentation Parameters info: - Width: 800 info: - Height: 450 info: - Format: D3D9Format::Unknown info: - Auto Depth Stencil: false info: ^ Format: D3D9Format::Unknown info: - Windowed: true info: Presenter: Actual swap chain properties: info: Format: VK_FORMAT_B8G8R8A8_UNORM info: Present mode: VK_PRESENT_MODE_FIFO_KHR info: Buffer size: 800x450 info: Image count: 3 info: Exclusive FS: 0

Blisto91 commented 2 years ago

Since the game uses directx 12 i think you might have to make a issue at the vkd3d-proton repo instead of here. Or maybe in the proton issue. (Correct me if I'm wrong)

I know people with Nvidia 700 series and below seem to have similar issues in other dx12 games, e.g. age of empires IV, so there might be hardware or Nvidia driver issues that make it impossible for the dxvk or vkd3d devs to solve. Even if you manage to get it working tho i don't think you are going to have a fun time with your GPU in this game.

That said you can try to use the bleeding edge branch of proton experimental to pull in the latest changes. In steam right click on proton experimental -> go into properties -> under the beta tab select bleeding edge. I don't expect this to change anything tho.

doitsujin commented 2 years ago

Elden Ring is a D3D12 game, and your GPU is a) below the minimum requirements for the game and b) no longer enjoys active driver support from Nvidia, so we cannot really support that.