Petrolhex Posted March 4, 2021 Share Posted March 4, 2021 (edited) NOTE: My copy of the game is the Steam Complete Edition version plus the Old Radio Downgrader and 1080 Game Downgrader detailed in this Steam guide. As we all know GTA4's PC port is one of the worst of all time. I don't know exactly why, in this thread it mentions both the map being poorly put together and the engine being a rush job. Whatever the case is it just doesn't run well, especially for people with lower spec rigs. For example, take my CPU, GPU and RAM: Processor: AMD FX(tm)-6100 Six-Core Processor (6 CPUs), ~3.3GHz Memory: 8192MB RAM Card name: Radeon RX 590 Series The CPU nowadays isn't very good, in fact it wasn't very good back then. But paired with the RX 590 it can run modern games like Red Dead Redemption 2, Hitman 2 (2018) and Doom Eternal fine. Frame rates might be limited to mostly 30-40, but performance on high settings is consistent with not a lot of dips. Despite GTA4 coming out in 2008 it doesn't even come close to that level of performance. Right in the beginning of the game where you are just given control you can look to the back of the car and the framerate will immediately drop to 10 FPS and below and the game will stutter. These are my settings which according to research gives the best balance between performance and visuals on modern rigs: Video Mode: 1600x900 (60 Hz) (my monitor's max resolution) Aspect Ratio: Auto Texture Quality: High Reflection Resolution: High Water Quality: High Shadow Quality: High Night Shadows: Off Texture Filter Quality: Anisotropic x16 View Distance: 80 Detail Distance: 80 Vehicle Density: 80 Definition: On VSync: On While the stutter doesn't make the game totally unplayable, it definitely makes it feel awful to play as its constant. And I think for this reason I could never get into GTA4 as much as I could. So is there a solution? As it turns out there is and its called DXVK. It is mainly used on Linux in conjunction with Wine to translate DirectX to Vulkan but it works on Windows. DirectX and Vulkan both act as middlemen between the programmer and the graphics card to simplify the process of programming graphics, and despite Vulkan being the new kid on the block it has matured enough to be adopted by both RDR2 and Doom Eternal because of its lower overhead which results in better performance for both games. What does this mean for GTA4? Upon dropping in the files for DXVK and editing the config file the results were surprising. I switched back and fourth between normal D3D9 and DXVK multiple times, making the beginning drive during The Cousins Bellic repeatedly and I noticed just looking around the docks the stutter is no longer present. On my rig 30 FPS is still the average, but framerate dips are no longer constant unlike previously and now there is very close to no stutter. This isn't a placebo effect, it really does work. So how do you run DXVK? -Download the latest release from GitHub and extract the x32 DLL files to your GTAIV directory. -Download the dxvk.conf file and also drop it into your GTAIV directory. -Change the settings in dxvk.conf for "dxgi.maxFrameLatency" and "dxgi.maxFrameLatency" from 0 to 1. This reduces stutter from DXVK. And you're done. Hopefully someday there will be a definitive guide on the differences between running GTA4 on D3D9 and DXVK with graphs and videos showing the performance difference and it can be pinned here. But hopefully this will convince people to try this for themselves. Credit to those in this thread who mentioned this, it's the first time I heard of this solution. EDIT: Specified where I tested D3D9 vs DXVK. EDIT 2: After spending more hours with the game using DXVK I found that there is so little stutter and the framerate is so much more consistent that there needs to be more clarification. Edited March 5, 2021 by Petrolhex NightmanCometh96 and ant_sh 2 Link to comment Share on other sites More sharing options...
ant_sh Posted March 5, 2021 Share Posted March 5, 2021 I just want to add that you may skip dxvk.conf step. Those DXVK parameters were needed as workarounds in earlier builds but latest build works OK without them since the issue was fixed in August 2020 NightmanCometh96 1 Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now