BUG Playing Cyberpunk with Nvidia 2060 SUPER + driver 455 (steam + proton)

I have render issues playing Cyberpunk and I want to know if the coming driver will fix it.
In my case, and I think with other players too, there is a lights/render problem in a mission (The Heist)
Just in case you don’t know what I mean I did a video:

There is any hope to play this soon?

Regards!

1 Like

Cyberpunk with nvidia isn’t supported by steam. . . Yet. Only AMD

1 Like

I tested with driver 460.27.04 (Beta) (I think I installed well, it shows on nvidia-info & steam system info) and it still shows the game in black like before. Not sure what can be exactly :S

i can play a lot but till have random freeze. U should use steam beta with steam runtime in beta (or soldier i have put it both to be sure) nd use proton experimental u can find it under tool in steam

I’m sure is not for that. I have most of drivers and software updated, but some parts in the game have this behavior. It turs all black.

I found another place (Hotel NO-TELL):

Hi, I’ve been testing with lutris and my steam copy of the game.

I7 - nvidia 3080 -32G ram
Mageia Linux 8.Nvidia driver : 460.32.03 mesa:20.3.3 Vulkan:1.2.162 Xorg:7.7 DXVK 1.7.3

The game runs using wine lutris-6.0-rc1 with many freezes every little time.
But I have been able to verify that this same black screen occurs.Just like you show in the video.
In order to fix this freeze problems, replacing the d3d12 library in windows/system32, I realized that lutris replace d3d12 lib every time you run the game, with a symlink to
.local/share/lutris/runtime/dxvk/1.7.3L-03f11ba/x64/d3d12.dll

Then I replace the d3d12 library in the game path Cyberpunk 2077/bin/x64, because the game takes the lib in this path always before.
Using this d3d12 Releases · HansKristian-Work/vkd3d-proton · GitHub , no more freezes.
Game runs perfectly (except black screen). It doesn’t matter if you are using wine 6 or proton 5.14.
But the same black screen again, like in the video.

Same vulkan messages, doesn’t matter depending d3d12 version:
312:fixme:vk_address_mode_from_d3d12: Unhandled address mode 0x5.
284:fixme:vkd3d_create_texture_srv: Ignoring plane slice 1.
284:fixme:vkd3d_set_view_swizzle_for_format: Alpha swizzle is not supported.

I have also done the tests with the 455 version of the nvidia driver, same story.

What I’m wondering if the solution will be in the wine d3d12 library, or in the version of the nvidia driver or maybe in a future update of the game.
The case this black screen that occurs in some places , is impossible to avoid if you want to play cyberpunk under linux and nvidia.It doesn’t matter if you change the quality of the graphics in the game.

Drivers are not supporting VK_VALVE_mutable_descriptor_type, so VKD3D will not fix anything

1 Like

May 2021 here still experiencing this issue sadly.

Seems to take effect for me when entering the hotel lobby at Konpeki Plaza. Goes away when entering the elevator and then comes back when you get to the Suite occupied by Yorinobu…

Hi,

There is a working workaround you can use until the problem is being solved.
When you are using the scanner, a “greenish” filter is applied and you can see in those areas.

There is a way to toggle this filter without having to be in “scan mode”

For that, you need to use the lua console provided by the Cyber Engine Tweaks (https://wiki.cybermods.net/cyber-engine-tweaks)

Game.GetPlayer():GetHudManager().visionModeSystem:EnterMode(Game.GetPlayer(),1)

This will force the game to display the “greenish” overlay, but without the scan UI, you will be able to play normally.

Note that if you jump or run, the mode will go back to 0. It means you will have to make a function that calls that command periodically.
It is quite an ugly inelegant hack, but at least it makes the game playable …
After installing Cyber Engine Tweaks, create a file called init.lua in the following folder :

Cyberpunk 2077/bin/x64/plugins/cyber_engine_tweaks/mods/black_screen_workaround/

Here is the content of the file :

local workaroundEnabled=false
local bs_wk_count = 0;
registerForEvent("onInit", function()
               
end)

registerForEvent("onUpdate", function(deltaTime)
    if (workaroundEnabled) then
        bs_wk_count=bs_wk_count + deltaTime
               
        if ( bs_wk_count > 0.2 ) then
            Game.GetPlayer():GetHudManager().visionModeSystem:EnterMode(Game.GetPlayer(),1)
            bs_wk_count = 0;
        end
    else
        if(bs_wk_count > 1000) then
            Game.GetPlayer():GetHudManager().visionModeSystem:EnterMode(Game.GetPlayer(),0)
            bs_wk_count=0;
        end      
    end
end)

registerHotkey("bs_workaround_enable", "Activate/Desactivate Black Screen Workaround", function()
    workaroundEnabled = not workaroundEnabled
end)

registerForEvent("onDraw", function()
    ImGui.SetNextWindowPos(300, 300, ImGuiCond.FirstUseEver)

    if (ImGui.Begin("Black Screen Workaround")) then              
            if(workaroundEnabled) then
                ImGui.Text("Status : enabled.")
                clicked = ImGui.Button("Disable Workaround ")
            else
                ImGui.Text("Status : disabled.")
                clicked = ImGui.Button("Enable Workaround")
            end
        if (clicked) then
            workaroundEnabled = not workaroundEnabled
            if (not workaroundEnabled) then
                bs_wk_count=5000
            end
        end
    end
    ImGui.End()
end)

Now it would be interesting to understand why the “greenish filter” makes the issue disappear …

Hope that it helps.