Rpcs3: GL/Vulkan: Grand Theft Auto V graphical issues

Created on 20 Dec 2017  路  22Comments  路  Source: RPCS3/rpcs3

With https://github.com/RPCS3/rpcs3/commit/bd1d4de422cd3fbf6839e10012cc5d7873f4f114:

  • [ ] Distorted UI elements (HUD, loading screens...)

  • [x] Black textures - Fixed in #6415

  • [x] Dark shadows - Fixed in #8186

  • [x] Trevor's outfit changes color (red or black) and other characters during prologue's mission - Fixed in Vulkan. Still happens in OpenGL.

  • [x] Broken foliage in some locations - Fixed in #6228

  • [x] No color in skybox - Fixed in #8243

  • [ ] Broken reflections (They're only present in Vulkan. With OpenGL, it's fine.)

  • [x] Weird tracing when rotating the camera - Fixed in #6415

Footage (June 25, 2019)

Log OpenGL
Shaderlog OpenGL
RenderDoc OpenGL (Loading screen and ingame)


Original comment
With https://github.com/RPCS3/rpcs3/commit/a08e79f4267b5e9fab82949a5f011eb40aca76b0, GTA V renders its UI like this (look at the Rockstar's logo):

image

But with RenderDoc, I was able to modify the shaders. I went to the vertex one to investigate what was causing that bug. And I found these two lines of code:

rd1
By changing bits 216 and 217, it fixed Rockstar's logo's orientation somehow, but the rest of UI is moved and rotated.
rd2

In conclussion, this bug is caused, likely, by a vertex shader instruction badly implemented.

Log OpenGL
Shaderlog OpenGL - It's important the latest generated vertex shader.
RenderDoc OpenGL

Most helpful comment

@Xcedf I can confirm that the red texture bug is fixed, even if you get injured.
image
image

But it still happens with OpenGL.
image

Cellphone screen has now correct colors. Previously, colors were inverted.
image
image

Although car reflections are missing in OpenGL. Vulkan shows them correctly.
image
image

All 22 comments

Actually that change just changes referenced data that is uploaded from the cpu. There is no ARL preceding it meaning the values are intentionally that way (also confirmed in that swapping them rotated everything). Might be a vertex register misalignment or something broken in cell side calculations.

With https://github.com/RPCS3/rpcs3/commit/345f92ab0a57a4f302f6fac651372bcf42005080:

This screenshot is taken with PPU interpreter fast and SPU interpreter precise, and there's no graphic difference.

RSX Capture Loading screen (Vulkan)

gta v-ppu spu prec

Ace Combat Infinity, like GTA V, has the same distorted UI bug. With these settings and with/without Force CPU blit, it doesn't improve.

Screenshot of the bug:

RSX Capture (ACI and GTA V)

I've attached the latest capture of the distorted UI glitch.
image

RSX Capture (Pause menu)

This game needs Write Color Buffers to fix lighting outside.


Screenshot comparison

Without WCB:
image
With WCB:
image

I've attached a RDC in Los Santos to show the graphical issues.
image

RenderDoc VK

I've attached a OpenGL renderdoc trace for the dark shadows. Tested with 0.0.7-8700-32a4c224.

RenderDoc OpenGL

Raindrops are rendered by using WCB+WDB+RCB+RDB.


Missing raindrops

image
image

Models no longer turn black in certain camera angles. But the red textures are still there:
image
image

I'm getting severely distorted/laggy audio, and for some reason characters are red.
FPS_ 16 54 _ Vulkan _ 0 0 8-9349 _ Grand Theft Auto V  BLES01807  2020-01-15 5_10_52 PM

I'm also getting distorted graphics
FPS_ 30 13 _ Vulkan _ 0 0 8-9349 _ Grand Theft Auto V  BLES01807  2020-01-15 5_15_35 PM

Reflections are broken, like in these puddles.
image
image

Sea isn't vertex-exploded if you disable WCB, as well the weird garbage glitch:
image
image

With WCB enabled:
image
image

Ambient occlusion seems to be broken as well.


Prologue shots

RPCS3
Screenshot_4
RealHW shot from Youtube
Screenshot_6
PC
sspcprologue



Franklin's house

RPCS3
Screenshot_3
PC
sspc


RPCS3.log.gz
PC and RPCS3 renderdocs https://www.dropbox.com/s/7jj8lff29mc5yne/gtavrdc.7z?dl=0

For post-processing missing bugs, please make sure to test with all the buffer options enabled in case the game is using SPUs for some effects.

And also accurate xfloat just in case. There's a very large chance this effect is not done GPU-side given how weak the shader pipes are on RSX.

In the image WCB+WDB+RCB+RDB and accurate xfloat are enabled, no change.
image
In addition to the settings mentioned above, I tried SRM and CPU blit as well, no change.

Broken ambient occlusion is now fixed.

image
image

I attached two RSX Captures for the broken UI bug.

RSX Captures (Pause menu and brightness calibration screen)

Dudes don't turn red anymore during intro mission
https://youtu.be/LE8C-12tIKw
unfortunately game froze during capture, but still

@Xcedf I can confirm that the red texture bug is fixed, even if you get injured.
image
image

But it still happens with OpenGL.
image

Cellphone screen has now correct colors. Previously, colors were inverted.
image
image

Although car reflections are missing in OpenGL. Vulkan shows them correctly.
image
image

@MarioSonic2987 can't get to Franklin mission in the car shop cause of freezing, maybe Setarian strange monkey face bug is also fixed. Besides do you know maybe game need some special settings to maintain stability?

@Xcedf You need to change Driver Wake-Up Delay to, at least, 400 渭s.

The "monkey face" bug is still there, but it happens when a character is too close to the camera. It also happens in the prologue in the same manner (see Michael's jacket in my previous comment).
image
image

@MarioSonic2987 Freezes for me even on 5000渭s.

Was this page helpful?
0 / 5 - 0 ratings

Related issues

Xcedf picture Xcedf  路  3Comments

elad335 picture elad335  路  3Comments

Luffykun007 picture Luffykun007  路  3Comments

legend800 picture legend800  路  3Comments

AniLeo picture AniLeo  路  3Comments