Où est le Kit de développement logiciel (SDK) DirectX ?

À compter de Windows 8, le Kit de développement logiciel (SDK) DirectX est inclus dans le cadre du Kit de développement logiciel (SDK) Windows.

À l’origine, nous avons créé le Kit de développement logiciel (SDK) DirectX en tant que plateforme hautes performances pour le développement de jeux sur Windows. À mesure que les technologies DirectX ont mûri, elles sont devenues pertinentes pour un plus large éventail d’applications. Aujourd’hui, la disponibilité du matériel Direct3D sur les ordinateurs pousse même les applications de bureau traditionnelles à utiliser l’accélération matérielle graphique. En parallèle, les technologies DirectX sont plus intégrées à Windows. DirectX est désormais un élément fondamental de Windows.

Étant donné que le Kit de développement logiciel Windows constitue le principal outil des développeurs sous Windows, DirectX est désormais intégré. Vous pouvez à présent utiliser le Kit de développement logiciel Windows pour concevoir des jeux incroyables sous cette interface. Pour télécharger le Kit de développement logiciel (SDK) Windows 11, Windows 10 ou le KIT de développement logiciel (SDK) Windows 8.x, consultez Archive du KIT de développement logiciel (SDK) Windows et de l’émulateur.

Les technologies et outils suivants, qui font autrefois partie du KIT de développement logiciel (SDK) DirectX, font désormais partie du KIT DE développement logiciel (SDK) Windows.

Technologie ou outil Description
Composants graphiques Windows
Les en-têtes et bibliothèques pour Direct3D et d’autres API graphiques Windows, comme Direct2D, sont disponibles dans le Kit de développement logiciel (SDK) Windows.
Note: Les bibliothèques utilitaires D3DX9/D3DX10/D3DX11 dépréciées sont disponibles via NuGet, mais il existe également un certain nombre d’alternatives open source. La bibliothèque d’utilitaire DirectCompute D3DCSX et la DLL redistribuable sont disponibles dans le Kit de développement logiciel (SDK) Windows. D3DX12 est disponible sur GitHub.
Compilateur HLSL (FXC.EXE)
Le compilateur HLSL est un outil dans le sous-répertoire d’architecture approprié sous le dossier bin dans le Kit de développement logiciel (SDK) Windows.
Note: L’API D3DCompiler et la DLL redistribuable sont disponibles dans le Kit de développement logiciel (SDK) Windows.
Pour le développement DirectX 12, utilisez DXCompiler dans le SDK Windows et hébergé sur GitHub.
PIX pour Windows
Un remplacement de l’outil PIX pour Windows est désormais une fonctionnalité de Microsoft Visual Studio, appelée Débogueur Visual Studio Graphics. Cette fonctionnalité a considérablement amélioré la convivialité, la prise en charge de Windows 8 et Direct3D 11.1, ainsi que l’intégration aux fonctionnalités traditionnelles de Microsoft Visual Studio telles que les piles d’appels et les fenêtres de débogage pour le débogage HLSL . Pour plus d’informations sur cette nouvelle fonctionnalité, consultez Débogage des graphiques DirectX.

Pour le développement DirectX 12, consultez la dernière génération de PIX sur Windows
XAudio2 pour Windows
L’API XAudio2 est désormais un composant système dans Windows 11, Windows 10 et Windows 8.x. Les en-têtes et bibliothèques pour XAudio2 sont disponibles dans le Kit de développement logiciel (SDK) Windows. Pour la prise en charge de Windows 7, consultez XAudio2Redist.
XInput pour Windows
L’API XInput 1.4 est désormais un composant système dans Windows 11, Windows 10 et Windows 8.x. Les en-têtes et bibliothèques pour XInput sont disponibles dans le Kit de développement logiciel (SDK) Windows.
Note: XInput 9.1.0 hérité est également disponible dans le cadre de Windows 7 ou version ultérieure.
XNAMATH
La version la plus récente de XNAMATH, qui est mise à jour pour les nouveaux jeux d’instructions ainsi que arm/ARM64, est désormais DirectXMath. Les en-têtes pour DirectXMath sont disponibles dans le Kit de développement logiciel (SDK) Windows et sur GitHub.
Visionneuse Panneau de configuration et fonctionnalités DirectX
Les utilitaires DirectX Panneau de configuration et DirectX Capabilities Viewer sont inclus dans le sous-répertoire d’architecture approprié sous le dossier bin du Kit de développement logiciel (SDK) Windows. La visionneuse des fonctionnalités DirectX est également disponible sur GitHub.
XACT
L’outil XACT (Audio Cross Platform Tool) Xbox n’est plus pris en charge pour une utilisation sur Windows.
Jeux Explorer et GDFMAKER
L’API Games Explorer présente les jeux aux utilisateurs de Windows. L’API Games Explorer est prise en charge uniquement sur Windows Vista et Windows 7. Utilisez l’outil Games Definition File Maker (GDFMAKER.EXE) pour déclarer les évaluations des jeux pour les applications du Windows Store.
L’outil Game Definition File Maker (GDFMaker.exe) est inclus dans le sous-répertoire x86 sous le dossier bin du Kit de développement logiciel (SDK) Windows et prend en charge les applications du Windows Store et les applications de bureau Win32.

Autres outils du Kit de développement logiciel (SDK) DirectX
Divers outils tels que dxtex.exe, meshconvert.exe, texconv.exe et uvatlas.exe sont disponibles en ligne. Pour plus d’informations sur ces outils, consultez Catalogue des outils du Kit de développement logiciel (SDK) DirectX.
Exemples
Vous trouverez des exemples d’applications qui mettent en évidence les technologies DirectX 12 sur Windows dans le dépôt d’exemples DirectX . La plupart des exemples pour les versions antérieures de Direct3D sont également disponibles en ligne. Pour plus d’informations sur ces exemples, consultez Catalogue d’exemples du Kit de développement logiciel (SDK) DirectX.
DirectX managé 1.1
Les assemblys .NET DirectX sont déconseillés et ne sont pas recommandés pour une utilisation par les nouvelles applications. Il existe un certain nombre d’alternatives disponibles. Consultez DirectX et .NET.

 

Le SDK DirectX hérité est disponible en téléchargement à partir du Centre de téléchargement Microsoft si nécessaire, mais l’utilisation pour les nouveaux projets n’est pas recommandée.

Notes

L’installation du Kit de développement logiciel (SDK) DirectX échoue si une certaine version du package Redistribuable Visual C++ 2010 est déjà installée. Pour plus d’informations et une solution pour résoudre ce problème, consultez erreur « S1023 » lors de l’installation du Kit de développement logiciel (SDK) DirectX (juin 2010).

 

Utilisation de projets du Kit de développement logiciel (SDK) DirectX avec Visual Studio

Les exemples du Kit de développement logiciel (SDK) DirectX de juin 2010 sont pris en charge avec les références SKU Visual Studio Premium (Microsoft Visual Studio Professional 2012, Microsoft Visual Studio Ultimate 2012, Microsoft Visual Studio Professional 2013 ou Microsoft Visual Studio Ultimate 2013) sur Windows 7 et Windows 8 et versions ultérieures. En raison de la transition des bibliothèques et des en-têtes DirectX vers le KIT de développement logiciel (SDK) Windows, des modifications des paramètres de projet sont nécessaires pour générer ces exemples correctement avec la façon dont le Kit de développement logiciel (SDK) Windows 8 et les versions ultérieures sont empaquetés avec les références SKU Visual Studio Premium.

Ces étapes s’appliquent également à vos propres projets qui dépendent du Kit de développement logiciel (SDK) DirectX.

  1. Vérifiez que la version de juin 2010 du Kit de développement logiciel (SDK) DirectX est installée sur votre ordinateur de développement. Si vous effectuez l’installation sur un ordinateur exécutant Windows 8 et versions ultérieures, vous êtes invité à activer .NET 3.5 en tant qu’installation requise pour le Kit de développement logiciel (SDK) DirectX.

    Notes

    L’installation du Kit de développement logiciel (SDK) DirectX échoue si une certaine version du package Redistribuable Visual C++ 2010 est déjà installée. Pour plus d’informations et une solution pour résoudre ce problème, consultez erreur « S1023 » lors de l’installation du Kit de développement logiciel (SDK) DirectX (juin 2010).

     

  2. Vérifiez que vous utilisez l’une des références SKU Visual Studio Premium. Microsoft Visual Studio Express 2012 pour Windows 8 ou Microsoft Visual Studio Express 2013 pour Windows ne générera pas d’applications de bureau Windows 8 et ultérieures telles que les exemples du SDK DirectX. Pour installer l’une des références SKU Visual Studio Premium, accédez à : Téléchargements Visual Studio et suivez les instructions.

  3. Utilisez l’exemple de navigateur du SDK DirectX pour installer les fichiers projet de l’exemple souhaité. Ouvrez le fichier solution compatible Microsoft Visual Studio 2010 de l’exemple (avec suffixe _2010).

  4. Si vous ouvrez l’exemple sur un système sur lequel microsoft Visual Studio 2012 ou Microsoft Visual Studio 2013 uniquement installé, vous obtenez le message suivant : « Cette solution contient un ou plusieurs projets utilisant une version antérieure du compilateur et des bibliothèques VC++. Chaque projet peut être mis à jour pour utiliser le compilateur et les bibliothèques VC++ (v110). » Choisissez l’option Mettre à jour dans cette boîte de dialogue à mettre à jour avant d’ouvrir le projet.

    Sinon, vous pouvez effectuer une mise à jour vers Visual Studio 2012 ou Visual Studio 2013 compilateur et les bibliothèques C++ 11 après leur chargement en cliquant avec le bouton droit sur la solution et en choisissant Mettre à jour les projets VC++.

  5. D3DX n’est pas considéré comme l’API canonique pour l’utilisation de Direct3D dans Windows 8 et versions ultérieures et n’est donc pas inclus avec le SDK Windows correspondant. Examinez d’autres solutions pour utiliser l’API Direct3D. Pour les projets hérités, tels que les exemples du Kit de développement logiciel (SDK) DirectX Windows 7 (et versions antérieures), les étapes suivantes sont nécessaires pour créer des applications avec D3DX à l’aide du Kit de développement logiciel (SDK) DirectX :

    1. Modifiez les répertoires VC++ du projet comme suit pour utiliser l’ordre approprié pour les bibliothèques et en-têtes du SDK.

      i. Ouvrez **Propriétés** pour le projet et sélectionnez la page **Répertoires VC++*. ii. Sélectionnez **Toutes les configurations et toutes les plateformes**. iii. Définissez ces répertoires comme suit :
      • Répertoires exécutables : <héritent des valeurs par défaut> du parent ou du projet (dans la liste déroulante de droite)
      • Inclure les répertoires : $(IncludePath);$(DXSDK_DIR)Include
      • Inclure les répertoires de bibliothèque : $(LibraryPath);$(DXSDK_DIR)Lib\x86

      iv. Cliquez sur Appliquer.
      v. Choisissez la plateforme x64.
      vi. Définissez le répertoire de bibliothèque comme suit :

      • Répertoires de bibliothèque : $(LibraryPath);$(DXSDK_DIR)Lib\x64
    2. Partout où « d3dx9.h », « d3dx10.h » ou « d3dx11.h » sont inclus dans votre projet, veillez à inclure explicitement « d3d9.h », « d3d10.h » et « dxgi.h », ou « d3d11.h » et « dxgi.h » pour vous assurer que vous choisissez la version la plus récente. Vous pouvez désactiver l’avertissement C4005 si nécessaire ; toutefois, cet avertissement indique que vous utilisez l’ancienne version de ces en-têtes.

    3. Supprimez toutes les références à DXGIType.h dans votre projet. Cet en-tête n’existe pas dans le KIT de développement logiciel (SDK) Windows, et la version du KIT de développement logiciel (SDK) DirectX est en conflit avec le nouveau fichier winerror.h.

    4. Toutes les DLL D3DX sont installées sur votre ordinateur de développement par l’installation du Kit de développement logiciel (SDK) DirectX. Assurez-vous que les dépendances D3DX nécessaires sont redistribuées avec n’importe quel exemple ou avec votre application si elle est déplacée vers un autre ordinateur.

    5. N’oubliez pas que les technologies de remplacement pour les utilisations actuelles de D3DX11 incluent DirectXTex, DirectXTK, DirectXMesh et UVAtlas. D3DXMath est remplacé par DirectXMath.

  6. Vérifiez que vous utilisez la nouvelle version du compilateur de nuanceur HLSL en observant les conditions suivantes :

    1. Si vous modifiez le répertoire exécutable conformément à l’étape 5, les builds de projet utilisent FXC à partir de l’installation du Kit de développement logiciel (SDK) Windows. N’oubliez pas que les fichiers HLSL sont désormais officiellement reconnus par Visual Studio. Vous pouvez les ajouter en tant que fichiers projet et définir des options de compilateur via le système de projet.

    2. L’appel de la compilation au moment de l’exécution via la DLL D3DX héritée utilise l’ancienne version incorrecte du compilateur HLSL. Remplacez toutes les références aux API D3DXCompile*, D3DX10Compile* et D3DX11Compile* dans votre code par la fonction D3DCompile dans D3DCOMPILER_46.DLL ou D3DCOMPILER_47.DLL.

    3. Tout projet qui utilise la compilation de nuanceur d’exécution doit avoir D3DCOMPILER_xx.DLL copié dans le chemin d’accès exécutable local du projet. Cette DLL est disponible dans ce sous-répertoire de l’installation du Kit de développement logiciel (SDK) Windows sous %ProgramFiles(x86)%\Windows Kits\8.0\Redist\D3D\<arch> ou %ProgramFiles(x86)%\Windows Kits\8.1\Redist\D3D\<arch><arch> est x86 et x64.

      Le D3DCOMPILER_46.DLL ou D3DCOMPILER_47.DLL du Kit de développement logiciel (SDK) Windows n’est pas un composant système et ne doit pas être copié dans le répertoire système Windows. Vous pouvez redistribuer cette DLL à d’autres ordinateurs avec votre application en tant que DLL côte à côte.

  7. Tout projet qui utilise l’API XInput et qui est destiné à s’exécuter sur Windows 7 ou des versions antérieures de Windows doit utiliser la version héritée (9.1.0) ou doit inclure explicitement les en-têtes et les bibliothèques pour ce composant à partir du Kit de développement logiciel (SDK) DirectX. En-tête XInput et XINPUT. LIB inclus dans le Kit de développement logiciel (SDK) Windows cible uniquement la version (1.4) fournie dans le cadre de Windows 8 et versions ultérieures. Le même en-tête peut être utilisé avec XINPUT9_1_0.LIB pour utiliser la version héritée, qui est incluse avec les anciennes versions de Windows. La version héritée de XInput ne détecte pas toutes les fonctionnalités et ne prend pas en charge l’audio intégré au contrôleur. Par conséquent, si la prise en charge de ces fonctionnalités est requise, vous devez utiliser la version du KIT de développement logiciel (SDK) DirectX (1.3).

    Pour utiliser l’API XInput de niveau inférieur complet, vous devez #include directement utiliser les en-têtes XInput spécifiques du Kit de développement logiciel (SDK) DirectX :

    #include <%DXSDK_DIR%Include\xinput.h>

    ... et dans les options de l’éditeur de liens pour les dépendances supplémentaires, liez directement à la bibliothèque XInput du KIT de développement logiciel (SDK) DirectX :

    %DXSDK_DIR%Include\<arch>\xinput.lib

    Le XINPUT1_3.DLL binaire est installé dans les répertoires système Windows par l’installation du KIT de développement logiciel (SDK) DirectX sur votre ordinateur de développement. Vous devez redistribuer ce fichier binaire avec votre application à l’aide de l’installation de DirectX à partir du Kit de développement logiciel (SDK) DirectX.

  8. Tout projet qui utilise l’API XAudio2 et qui est destiné à s’exécuter sur Windows 7 ou des versions antérieures de Windows doit utiliser l’ancienne version (9.1.0) ou inclure explicitement les en-têtes et les bibliothèques pour ce composant à partir du Kit de développement logiciel (SDK) DirectX. Les en-têtes et bibliothèques XAudio2 inclus avec le Kit de développement logiciel (SDK) Windows ciblent uniquement la version (2.8) incluse dans Windows 8.

    Par exemple, avec XAudio2, vous devez #include directement utiliser les en-têtes XAudio2 spécifiques du Kit de développement logiciel (SDK) DirectX :

    #include <%DXSDK_DIR%Include\xaudio2.h>

    ... et dans les options de l’éditeur de liens pour les dépendances supplémentaires, liez directement à la bibliothèque XAudio2 du KIT de développement logiciel (SDK) DirectX :

    %DXSDK_DIR%Include\<arch>\xaudio2.lib

    Le XAUDIO2_7.DLL binaire est installé dans les répertoires système Windows par l’installation du KIT de développement logiciel (SDK) DirectX sur votre ordinateur de développement. Vous devez redistribuer ces bibliothèques avec votre application à l’aide de l’installation de DirectX à partir du Kit de développement logiciel (SDK) DirectX.

  9. Si vous avez utilisé le Kit de développement logiciel (SDK) DirectX avec des versions antérieures de Visual Studio, la mise à niveau de Visual Studio 2010 a peut-être migré le chemin du KIT de développement logiciel (SDK) DirectX vers vos paramètres de projet par défaut. Il est recommandé de supprimer ces paramètres pour éviter les erreurs de build futures. Dans le répertoire %USERPROFILE%\AppData\Local\Microsoft\MSBuild\v4.0 , modifiez les fichiers Microsoft.Cpp.Win32.user et Microsoft.Cpp.x64.user pour supprimer toutes les références aux chemins d’accès DXSDK_DIR. Vous pouvez également supprimer l’intégralité <du nœud PropertyGroup> qui contient les entrées path telles que <ExecutablePath> et <IncludePath> pour revenir aux valeurs par défaut standard. Si vous ne voyez pas de références à DXSDK_DIR dans ces fichiers, aucune modification n’est nécessaire.

  10. Si l’application résultante prend en charge Windows Vista avec Service Pack 2 (SP2) ainsi que Windows 7 et Windows 8 et versions ultérieures, définissez la définition de préprocesseur nommée _WIN32_WINNT sur 0x600. S’il prend uniquement en charge Windows 7 et Windows 8 et versions ultérieures, définissez-le sur 0x601.

    Par exemple :

    1. Ouvrez Propriétés pour le projet, puis sélectionnez C/C++>Préprocesseur.
    2. Sélectionnez Toutes les configurations et toutes les plateformes.
    3. Accédez à la section Définitions du préprocesseur et définissez _WIN32_WINNT=0x600.
    4. Cliquez sur Appliquer.

Jeux pour Windows et kit de développement logiciel (SDK) DirectX

Où se trouve le Kit de développement logiciel (SDK) DirectX (édition 2021) ?

Kits de développement logiciel (SDK) DirectX d’un certain âge

Vivre sans D3DX