protonscr

[d3d9] Menu graphics corruption in Crazy Taxi 3

dxvkopen bugd3d9fixed function
doitsujin/dxvk#2819 · opened 2022-08-12 by simifor · updated 2026-08-09 · 14 comments · github
Ssimifor 2022-08-12 github

Software information

Crazy Taxi 3, the only setting you can change is resolution (and seems to have no effect on this)

After finishing a match and getting to the driver rank page, graphics appear corrupted. The issue also appears with wine's d3d renderer, but in the case of wine the menu gets back to normal when alt-tabbing (which doesn't happen with dxvk).

System information

  • GPU: AMD 380x
  • Driver: mesa 22.3
  • Wine version: 6.0/7.0 (tried both)
  • DXVK version: 1.10.3

Apitrace file(s)

https://ufile.io/izyozi0l

Log files

KK0bin maintainer 2022-08-12 github

The apitrace replays just fine. This might be a driver bug.

image

Ssimifor 2022-08-12 github

The menu only breaks after a match finishes, they look normal before that point. So your screenshot is the same thing I see, the problem only happens later.

KK0bin maintainer 2022-08-12 github

Never mind, it's there right at the end.

Ssimifor 2022-08-13 github

It's already in the original message,

KK0bin maintainer 2022-08-14 github

The fixed function vertex shader used for the UI at the end uses DXVK_TSS_TCI_CAMERASPACEREFLECTIONVECTOR with DXVK. If I edit the shader to just use the input texture coordinate, it renders fine.

The game sets CAMERASPACEREFLECTIONVECTOR | 1 as the texture index. The docs say CAMERASPACEREFLECTIONVECTOR takes precendence in that case but that might be wrong.
Need to investigate that at some point.

Alternatively it's possible that something resets it as the game renders a bunch of frames between setting that and the frame I looked into. The game doesn't seem to use vertex shaders at all, so this isn't it.

Llondiebrondie 2023-03-07 github

Did anyone find a fix? Also, this is super trippy, hey @Blisto91!! I'm the annoying guy who kept making posts about Knuckle Sandwich (demo) crashing on linux (https://github.com/ValveSoftware/Proton/issues/6526).

So, again, did anyone ever find a fix?

BBlisto91 2023-03-07 github

Did anyone find a fix?

Not yet. Fixed Function is kinda cursed from what I've gathered. I think it's just waiting for a dev to have time to look at it.

Llondiebrondie 2023-03-07 github

A dev of dxvk or Crazy Taxi 3? Because Crazy Taxi 3 is basically dead...

Llondiebrondie 2023-03-07 github

The apitrace replays just fine. This might be a driver bug.

Buys a 3090, plays Crazy Taxi 3 :joy:

BBlisto91 2023-03-07 github

A dev of dxvk or Crazy Taxi 3?

Dxvk

Llondiebrondie 2023-03-07 github

A dev of dxvk or Crazy Taxi 3?

Dxvk

Cool. Also, if anyone here wants a copy to further investigate the problem, it's up on myabandonware (because It's not on Steam, Epic, GOG, or basically anywhere else).

https://www.myabandonware.com/game/crazy-taxi-3-high-roller-cjp

Nnor2101 2023-07-21 github

Using dgVoodoo2 as an additional wrapper fixes the glitches and distorsions

Sstashymane 2026-08-08 github

For future visitors, I fixed this in taxipatch by resetting D3DTSS_TEXCOORDINDEX before flushing sprites:
https://github.com/stashymane/taxipatch/blob/master/patch/src/patches/ui_texcoord.rs

Launch options

Upstream links