Résoudre les problèmes Direct3D de DirectX

DirectX & Direct3D

Il y a quelques jours, j’ai voulu rejouer à quelques anciens jeux comme FarCry et essayer Counter Strike Source dont tout le monde semble si friant.

Je m’étais arrêté à Half-Life – qui ne m’avait pas vraiment conquis – avant de fondre devant les graphismes luxuriants de la jungle de FarCry.

J’insère mon CD, je lance mon raccourci. Ecran noir puis retour sur le bureau. Qu’est-ce donc que ce bin’s ! Je retente. Même résultat, le jeu ne veut pas se lancer.

Une petite série de tests (Google Earth, Joost) m’apprend que c’est Direct3D, un des composants de DirectX qui est en cause…

Si jamais cela vous arrive un jour – et vu le nombre de résultats retournés par Google, c’est un problème extrêmement courant ! – voici comment vous retirer cette vilaine épine du pied.

Le problème en détail

Si votre système possède l’un des symptômes suivant :

  • les jeux refusent de se lancer comme d’habitude : “direct3d failed to initialise”.
  • vous avez des erreurs Direct3D à répétition :

    Direct3D9 driver is creating…
    Best-match display mode: 1024x768x32 (Error=8)
    Creating D3D device (Adapter format: D3DFMT_X8R8G8B8, BackBuffer format: D3DFMT_A8R8G8B8, Depth format: D3DFMT_D24S8)
    Error: Couldn’t initialize 3D environment (D3DERR_INVALIDCALL)
    *** Clearing render resources ***
    Creating D3D device (Adapter format: D3DFMT_X8R8G8B8, BackBuffer format: D3DFMT_A8R8G8B8, Depth format: D3DFMT_D24S8)
    Error: Couldn’t initialize 3D environment (D3DERR_INVALIDCALL)
    *** Clearing render resources ***
    System Shutdown
    *** Clearing render resources ***


  • l’utilitaire de configuration DirectX (Démarrer > Exécuter > dxdiag) vous donne les erreurs suivantes lorsque vous tentez les tests Direct3D :

    Résultats des tests Direct3D 7 : Échec à l’étape 8 (Création d’un périphérique 3D): HRESULT = 0x80004005 (Échec général)
    Résultats des tests Direct3D 8 : Échec à l’étape 8 (Création d’un périphérique 3D): HRESULT = 0x8876086c (Code d’erreur)
    Résultats des tests Direct3D 9 : Échec à l’étape 8 (Création d’un périphérique 3D): HRESULT = 0x8876086c (Code d’erreur)


et bien cela n’a qu’une seule solution : la désinstallation de vos pilotes de carte graphique et la réinstallation de pilotes compatibles, généralement une version précédente. Si vous avez une carte ATI, l’installation des Catalyst 7.8 résout le problème.

La solution

Cette solution, je l’ai trouvée à la sueur de mon front. La phrase précédente est loin d’être une litote.

Persuadé qu’il s’agissait d’une corruption de DirectX, j’ai passé deux week-ends complets à le désinstaller puis à le réinstaller, de la version 8.1 à la version 9.0c, en passant par les versions SDK pour voir si cela pouvait débloquer quelque chose. C’est vraiment une expérience que je ne souhaite à personne.

Si un jour cela vous arrive, je vous recommande DirectX Happy Uninstall, c’est l’un des rares programmes qui permet la désinstallation effective de DirectX, tout comme XP Lite Professional. Rien n’y a fait.

Je possède une carte ATI 9800 SE. En dernier recours, j’ai désinstallé les pilotes Catalyst 7.10 que j’avais mis à jour il y a quelques semaines.

J’ai installé les Catalyst 7.9 : toujours le même problème. Catalyst 7.8 : le problème disparaît et tout redevient fonctionnel de nouveau.

Conclusion

Une erreur Direct3D ne veut pas forcément dire que DirectX est en cause.

Il n’est pas nécessaire de mettre à jour ses pilotes de carte graphique constamment – la preuve c’est que les nouveaux Catalyst foirent sur les cartes un peu plus anciennes. If it ain’t broke, don’t fix it !

Recherchez-vous un expert WordPress ou WooCommerce sur qui vous pouvez compter? Ne cherchez plus.

Faites confiance à mon expertise »

Articles conseillés :

Matt

Matt Biscay est développeur WordPress et WooCommerce certifié chez Codeable, ainsi que sysadmin qualifié et enseignant-chercheur. Passionné par le code performant et les solutions sécurisées, je m'efforce d'offrir une expérience utilisateur exceptionnelle sur chaque projet.

Vous avez aimé cet article ? Vous avez un projet en tête et vous pensez que je pourrais vous aider à le concrétiser ? N'hésitez pas à me contacter, je serais ravi de discuter avec vous de votre projet !

3 pensées sur “Résoudre les problèmes Direct3D de DirectX”

  1. Bonjour Matt et surtout merci.

    Je faisais des recherches pour désinstaller totalement direct X de Windows et grâce à toi j’ai la solution.

    Maintenant j’espère que ces softwares sont sains.

    Reply

Opinions