ValveSoftware / ValveSoftware/Proton
[379720] Doom 2016 common issue with Razer-ChromaSDK
Nobody has claimed this yet.
- Dominant language
- C++
- Stars
- 32.8k
- Forks
- 1.6k
- PR merge metrics
- PR metrics pending
Description
Hello,
I just want to mention an issue that a lot of people are having with this game. ID-Software added support for the Razer-Chroma effects in one of their updates for the game, but the implementation is really flawed. You get the option to enable or disable the effect in game. But both have their own problem in wine, which results in one or two CPU cores stuck at 100% workload. This can result in unplayable stutter and bad frametimes.
Chroma enabled
With the effect enabled the dll isn't able to load the Chroma animations the game tells it to load. This results in a spamming of load animation, which creates the performance impact.
Chroma disabled
You think that disabling the effect will help, but no it just moves the problem to somewhere else. With this option the game still calls the Chroma dll functions, but fails at the invocation of for example ChromaSDKPlugin::CreateEffectNone2D. This gets also spammed by the game and results in the same performance issue.
My workaround
This is just a fork of the original dll that modifies the exported functions to simple return calls. The Chroma effects don't work with this dll, but it fixes the performance issue.
https://github.com/Riesi/CChromaEditor
The CChromaEditor is licensed under GPL3 as you can see in the eula:
https://github.com/razerofficial/CChromaEditor/blob/master/eula.txt
Here some reddit discussions about bad doom performance where my dll fixed the issue:
Doom 2016 Chroma Fix (CChromaEditorLibrary.dll)
Doom performance
I hope that I described the problem understandable and that it's possible to issue some kind of fix. Keep the great work up!
Kind regards,
Riesi
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
The issue names no project files, entry points, or tests. Start by reproducing Doom 2016 under Proton with Chroma enabled and disabled, then compare CPU usage and frametimes while investigating the reported Chroma DLL calls. Done means the game no longer causes sustained CPU saturation and stutter in either configuration.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- cpp
- Domain
- game-dev, operating-systems
- Issue type
- Bug
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 20/100