COMPTOIR
register

Un patch pour Mass Effect corrigeant un bug mystérieux avec les CPU AMD

Univers (génial) mis à part, le portage du premier Mass Effect (initialement une exclusivité Xbox) sur PC n’est pas franchement merveilleux et de nombreux bugs variés subsistent aujourd’hui encore dans ce jeu de 2007, et qui a d’ailleurs bien mal vieilli. L’un d’entre eux a fait surface en 2011 avec le lancement des CPU Bulldozer (Steamroller, Excavator, etc.) d’AMD et affecte aujourd’hui toujours uniquement les processeurs de la maison, y compris ceux de la génération Ryzen. Spécifiquement, le problème en question transforme tous les personnages en un tas de pixels grossiers bien moche ! Un cas assez rare, les glitchs spécifiques à un hardware donné n’ont rien de nouveau, mais la majorité des bugs de ce genre ont généralement pour origine le GPU, et non le CPU.

 

mass effect bug black blog cpu amd

 Ouais, pas très beau tout ça !

 

Bien entendu, les joueurs affectés — certainement relativement rares à cette époque où Intel dominait encore outrageusement, mais sûrement moins aujourd’hui — n’ont pas attendu toutes ces années pour trouver des parades plus ou moins efficaces, comme dans cette vidéo. Mais un développeur de jeu/moddeur/" rétro-ingénieur » nommé Adrian, aussi connu sous les noms Silent et CookiePLMonster, est véritablement allé au fond du problème — il a d’ailleurs rédigé un blog très (très) détaillé dans sa quête. Grosso modo lié au fait que les CPU AMD FX et Ryzen ne supportent pas le jeu d’instruction 3DNow ! et que le moteur du jeu a du mal avec le jeu d’instruction AMD SSE2, voici le résumé des détails techniques expliquant l’origine du bug graphique et la solution trouvée  :

 

  • We verified that the game does not use 3DNow! instructions directly (only the system DLLs do).
  • We found out that disabling PSGP fixes the issue on AMD processors.
  • Using PIX, we found the culprit—NaN values in pixel shader constants.
  • We nailed down the origin of those values to D3DXMatrixInverse.
  • We fuzzed that function and found out that it does not give consistent results between Intel and AMD CPUs when SSE2 instructions are used.
  • We accidentally found out that XMMatrixInverse does not have this flaw and is a viable replacement.

 

En conséquence, l’auteur a publié son patch compatible avec les versions Steam et Origin du jeu, il ne nécessite aucun programme tiers pour son installation et règle (enfin) définitivement le vilain bug ! Bravo à lui, et dire qu’il n’a fallu attendre que 9 ans, gg BioWare !  Bon, une bonne excuse pour revisiter l’esprit tranquille ce classique Space Opera (et pourquoi pas toute la trilogie) sur votre config' Ryzen flambante neuve ?

 

Le blog avec tous les détails techniques et le lien pour le téléchargement du patch.
Un poil avant ?

MODDING • SS Mods - Project Odyssey

Un peu plus tard ...

Un PC SFF signé Huawei avec de l'APU Renoir desktop dedans ?

Les 10 ragots
Les ragots sont actuellement
ouverts à tous, c'est open bar !