Xenia: Texture format (transparency glitch)

Created on 4 Mar 2018  Â·  11Comments  Â·  Source: xenia-project/xenia

For some games textures without transparency where it should be.
Maybe uses incorrect format textures?
For example games as RDR (trees, grass), Midnight Club LA (grass), Naruto games (trees, grass), GTA San Andreas (vegetable, wires), MK vs DCU (trees, effects), Asterix at the Olympic games (effects) and more.
xenia naruto storm generation mkv_snapshot_02 21_ 2018 03 04_17 34 21
fragment of mk 003 mp4_snapshot_02 14_ 2018 03 04_17 24 42
desktop 2018 03 04 - 17 48 29 01 mp4_snapshot_00 35_ 2018 03 04_20 48 33

bug gpu gpu-vulkan

Most helpful comment

Not a format glitch — currently kill shader instructions are totally ignored because they don't write anything to registers. The only reason why I'm not fixing it yet is because when I tried to do so, the Vulkan renderer started giving GPU crashes everywhere — the SPIR-V shader translator in Xenia doesn't really support this scenario.

All 11 comments

Here trouble with compressed textures DXT 4_5 which converted for Vulkan as VK_FORMAT_BC3.

/* k_DXT1                   */ {VK_FORMAT_BC1_RGBA_UNORM_BLOCK},
/* k_DXT2_3                 */ {VK_FORMAT_BC2_UNORM_BLOCK},
/* k_DXT4_5                 */ {VK_FORMAT_BC3_UNORM_BLOCK},

bandicam 2018-03-14 09-44-11-796
I tried replaced on other formats, and came to the conclusion that everything is correct here, and the error occurs already in the rendering (the error is that the alpha channel is not used).
For example BC4 instead BC3 for DXT5 textures
bandicam 2018-03-14 10-11-11-394

Hmm... Similar issue to Banjo Kazooie (xenia-project/game-compatibility#206)?

I see Banjo rendering correct now (remember screenshot with eggs)
i will try replace format, but most likely here other format.
bandicam 2018-03-10 23-37-21-844

I tried Banjo. Eggs uses texture format k_8888.
Alpha channel used but slightly glitch with close other obects and depend on view angel. Transparent turn on 1st egg and 2nd too but only one of them:

here is correct:

bandicam 2018-03-19 00-12-26-393

here is incorrect:

bandicam 2018-03-19 00-52-03-571

Banjo Tooie's issue is that the game isn't properly enabling alpha tests. Most likely a JIT issue.

This issue is present too in Bayonetta
2
1

Still present on DX12 in many games

352
396
392

Not a format glitch — currently kill shader instructions are totally ignored because they don't write anything to registers. The only reason why I'm not fixing it yet is because when I tried to do so, the Vulkan renderer started giving GPU crashes everywhere — the SPIR-V shader translator in Xenia doesn't really support this scenario.

Some transparency glitches solved in latest Xenia build, (Bayonetta plants for example)

Yes, alpha to coverage is implemented on Direct3D.

Was this page helpful?
0 / 5 - 0 ratings

Related issues

ProtoByter picture ProtoByter  Â·  3Comments

JohnGodgames picture JohnGodgames  Â·  3Comments

kobyaustin1 picture kobyaustin1  Â·  4Comments

SakataGintokiYT picture SakataGintokiYT  Â·  3Comments

niko1point0 picture niko1point0  Â·  3Comments