DirectX SDK 위치

Windows 8부터 DirectX SDK는 Windows SDK의 일부로 포함 되어 있습니다.

원래는 Windows 기반 게임 개발을 위한 고성능 플랫폼으로 DirectX SDK를 만들었습니다. DirectX 기술이 성숙 되 면 광범위 한 응용 프로그램에 관련 된 것입니다. 오늘날에는 컴퓨터에서 Direct3D 하드웨어를 사용 하는 경우 기존 데스크톱 응용 프로그램 에서도 그래픽 하드웨어 가속을 사용할 수 있습니다. 동시에 DirectX 기술은 Windows와 더욱 통합 됩니다. DirectX는 이제 Windows의 기본적인 부분입니다.

Windows SDK은 Windows 용 기본 개발자 SDK 이므로 이제 DirectX가 여기에 포함 되어 있습니다. 이제 Windows SDK를 사용 하 여 Windows 용 우수한 게임을 빌드할 수 있습니다. Windows 8.x SDK 또는 Windows 10 SDK를 다운로드 하려면 Windows SDK 및 에뮬레이터 보관을 참조 하세요.

현재 DirectX SDK의 일부인 다음 기술 및 도구는 Windows SDK에 포함 되어 있습니다.

기술 또는 도구 Description
Windows 그래픽 구성 요소
Direct3D 및 기타 Windows graphics api (예: Direct2D)에 대 한 헤더 및 라이브러리는 Windows SDK에서 사용할 수 있습니다.
[!Note]
사용 되지 않는 D3DX9/D3DX10/D3DX11 유틸리티 라이브러리는 NuGet을 통해 사용할 수 있지만 몇 가지 오픈 소스 대안도 있습니다. D3DCSX DirectCompute 유틸리티 라이브러리 및 재배포 가능 DLL은 Windows SDK에서 사용할 수 있습니다. D3DX12는 GitHub에서 사용할 수 있습니다.

HLSL 컴파일러 (FXC.EXE)
HLSL 컴파일러는 Windows SDK의 bin 폴더 아래에 있는 적절 한 아키텍처 하위 디렉터리의 도구입니다.
[!Note]
D3DCompiler API 및 재배포 가능 DLL은 Windows SDK에서 사용할 수 있습니다.


DirectX 12 개발의 경우 Windows SDK에서 DXCompiler를 사용 하 고 [GitHub](https://github.com/Microsoft/DirectXShaderCompiler)에서 호스트 합니다.
Windows 용 PIX
Windows 용 PIX 도구는 이제 Visual Studio Graphics Debugger 라는 Microsoft Visual Studio의 기능으로 대체 되었습니다. 이 기능을 사용 하면 유용성이 크게 향상 되 고, Windows 8 및 Direct3D 11.1에 대 한 지원이 제공 되며, HLSL 디버깅을 위한 windows 디버깅 및 호출 스택과 같은 기존의 Microsoft Visual Studio 기능과의 통합이 제공 됩니다. 이 새로운 기능에 대 한 자세한 내용은 DirectX 그래픽 디버그를 참조 하세요.

DirectX 12 개발의 경우 Windows에서 최신 PIX 를 참조 하세요.
Windows 용 XAudio2
XAudio2 API는 이제 windows 8.X 및 windows 10의 시스템 구성 요소입니다. XAudio2에 대 한 헤더 및 라이브러리는 Windows SDK에서 사용할 수 있습니다. Windows 7 지원에 대 한 자세한 내용은 XAudio2Redist를 참조 하세요.
Windows 용 XInput
XInput 1.4 API는 이제 windows 8.X 및 windows 10의 시스템 구성 요소입니다. XInput에 대 한 헤더 및 라이브러리는 Windows SDK에서 사용할 수 있습니다.
[!Note]
레거시 XInput 9.1.0는 Windows 7 이상 버전의 일부로도 제공 됩니다.

XNAMATH
새 명령 집합 및 ARM/ARM64에 대해 업데이트 되는 XNAMATH의 최신 버전은 이제 Directxmath입니다. DirectXMath의 헤더는 Windows SDK 및 GitHub에서 사용할 수 있습니다.
DirectX 제어판 및 DirectX 기능 뷰어
DirectX 제어판 및 DirectX 기능 뷰어 유틸리티는 Windows SDK의 bin 폴더 아래에 있는 적절 한 아키텍처 하위 디렉터리에 포함 되어 있습니다. DirectX 기능 뷰어는 GitHub에서도 사용할 수 있습니다.
XACT
Xbox 오디오 XACT (오디오 플랫폼 간 도구)는 Windows에서 더 이상 사용할 수 없습니다.
게임 탐색기 및 GDFMAKER
게임 탐색기 API는 Windows 사용자에 게 게임을 제공 합니다. 게임 탐색기 API는 Windows Vista 및 Windows 7 에서만 지원 됩니다. 게임 정의 파일 작성자 도구 (GDFMAKER.EXE)를 사용 하 여 Windows 스토어 앱에 대 한 게임 등급을 선언 합니다.
게임 정의 파일 작성자 도구 (GDFMaker.exe)는 Windows SDK의 bin 폴더 아래에 있는 x86 하위 디렉터리에 포함 되며, Windows 스토어 앱 및 Win32 데스크톱 응용 프로그램을 모두 지원 합니다.

샘플
Directx 샘플 리포지토리에서 Windows의 directx 12 기술을 강조 표시 하는 샘플 응용 프로그램을 찾을 수 있습니다. 이전 버전의 Direct3D에 대 한 대부분의 샘플은 온라인 에서도 사용할 수 있습니다. 이러한 샘플에 대 한 자세한 내용은 DIRECTX SDK 샘플 카탈로그를 참조 하세요.
관리 되는 DirectX 1.1
.NET DirectX 어셈블리는 더 이상 사용 되지 않으며 새 응용 프로그램에서 사용 하지 않는 것이 좋습니다. 사용할 수 있는 대안은 여러 가지가 있습니다. DirectX 및 .net을 참조 하십시오.

필요한 경우 Microsoft 다운로드 센터 에서 레거시 DirectX SDK를 다운로드할 수 있지만 새 프로젝트에는를 사용 하지 않는 것이 좋습니다.

참고

Visual C++ 2010 재배포 가능 패키지의 특정 버전이 이미 설치 되어 있는 경우 DirectX SDK를 설치 하지 못합니다. 및이 문제를 해결 하기 위한 해결 방법에 대 한 자세한 내용은 DIRECTX SDK를 설치할 때 "S1023" 오류 (6 월 2010)를 참조 하세요.

Visual Studio에서 DirectX SDK 프로젝트 사용

6 월 2010 DirectX SDK의 샘플은 Windows 7 및 Windows 8 이상 릴리스에서 프리미엄 Visual Studio Sku (Microsoft Visual Studio Professional 2012, Microsoft Visual Studio Ultimate 2012, Microsoft Visual Studio Professional 2013 또는 Microsoft Visual Studio Ultimate 2013)에서 지원 됩니다. DirectX 헤더와 라이브러리를 Windows SDK로 전환 하기 때문에 Windows 8 SDK 이상이 프리미엄 Visual Studio Sku를 사용 하 여 패키지 되는 방식으로 이러한 샘플을 제대로 빌드하려면 프로젝트 설정을 변경 해야 합니다.

이러한 단계는 DirectX SDK에 종속 된 자체 프로젝트에도 적용 됩니다.

  1. DirectX SDK의 6 월 2010 릴리스가 개발 컴퓨터에 설치 되어 있는지 확인 합니다. Windows 8 이상을 실행 하는 컴퓨터에를 설치 하는 경우 DirectX SDK의 필수 구성 요소 설치로 .NET 3.5을 사용 하도록 설정 하 라는 메시지가 표시 됩니다.

    참고

    Visual C++ 2010 재배포 가능 패키지의 특정 버전이 이미 설치 되어 있는 경우 DirectX SDK를 설치 하지 못합니다. 및이 문제를 해결 하기 위한 해결 방법에 대 한 자세한 내용은 DIRECTX SDK를 설치할 때 "S1023" 오류 (6 월 2010)를 참조 하세요.

  2. 프리미엄 Visual Studio Sku 중 하나를 사용 하 고 있는지 확인 합니다. Windows 8의 Microsoft Visual Studio Express 2012 또는 Windows 용 Microsoft Visual Studio Express 2013은 DirectX SDK 샘플과 같은 Windows 8 및 이후 버전의 데스크톱 응용 프로그램을 빌드하지 않습니다. 프리미엄 Visual Studio Sku 중 하나를 설치 하려면 Visual studio 다운로드 로 이동 하 여 지침을 따르세요.

  3. DirectX SDK 샘플 브라우저를 사용 하 여 원하는 샘플에 대 한 프로젝트 파일을 설치 합니다. 샘플의 Microsoft Visual Studio 2010 호환 솔루션 파일 ( _ 2010 을 사용 하 여)을 엽니다.

  4. Microsoft Visual Studio 2012 또는 Microsoft Visual Studio 2013만 설치 된 시스템에서 샘플을 여는 경우 다음과 같은 메시지가 표시 됩니다. "이 솔루션에는 이전 버전의 VC + + 컴파일러 및 라이브러리를 사용 하는 하나 이상의 프로젝트가 포함 되어 있습니다. VC + + 컴파일러 및 라이브러리 (v110)를 사용 하도록 각 프로젝트를 업데이트할 수 있습니다. " 프로젝트를 열기 전에 업데이트 하려면이 대화 상자에서 업데이트 옵션을 선택 합니다.

    그렇지 않으면 솔루션을 마우스 오른쪽 단추로 클릭 하 고 VC + + 프로젝트 업데이트 를 선택 하 여 로드 한 후 Visual Studio 2012 또는 Visual Studio 2013 c + + 11 컴파일러 및 라이브러리를 업데이트할 수 있습니다.

  5. D3DX는 Windows 8 이상에서 Direct3D를 사용 하기 위한 정식 API로 간주 되지 않으므로 해당 하는 Windows SDK에는 포함 되지 않습니다. Direct3D API 사용에 대 한 대체 솔루션을 조사 합니다. Windows 7 및 이전 버전의 DirectX SDK 샘플과 같은 레거시 프로젝트의 경우 DirectX SDK를 사용 하 여 D3DX로 응용 프로그램을 빌드하려면 다음 단계가 필요 합니다.

    1. SDK 헤더 및 라이브러리에 대 한 올바른 순서를 사용 하도록 프로젝트의 VC + + 디렉터리를 다음과 같이 수정 합니다.

      i. 프로젝트에 대 한 **속성** 을 열고 **VC + + 디렉터리** 페이지를 선택 합니다. ii. **모든 구성 및 모든 플랫폼** 을 선택 합니다. iii. 이러한 디렉터리를 다음과 같이 설정 합니다.
      • 실행 가능 디렉터리: (오른쪽 드롭다운에서)
      • 포함 디렉터리: $ (Includepath); $ (DXSDK _ DIR) 포함
      • 라이브러리 디렉터리 포함: $ (LibraryPath); $ (DXSDK _ DIR) Lib \ x86

      iv. 적용 을 클릭합니다.
      v. X64 플랫폼 을 선택 합니다.
      vi. 다음과 같이 라이브러리 디렉터리 를 설정 합니다.

      • 라이브러리 디렉터리: $ (LibraryPath); $ (DXSDK _ DIR) Lib \ x64
    2. 프로젝트에 "d3dx9", "d3dx10" 또는 "d3dx11"가 포함 된 경우에는 "d3d9", "d3d10" 및 "d3d11", "" 및 ""를 먼저 포함 하 여 최신 버전을 선택 했는지 확인 해야 합니다. 필요한 경우 경고 C4005 를 사용 하지 않도록 설정할 수 있습니다. 그러나이 경고는 이전 버전의 헤더를 사용 하 고 있음을 나타냅니다.

    3. 프로젝트에서 DXGIType에 대 한 모든 참조를 제거 합니다. 이 헤더는 Windows SDK에 없고 DirectX SDK 버전이 새 winerror.h와 충돌 합니다.

    4. 모든 D3DX Dll은 DirectX SDK 설치를 통해 개발 컴퓨터에 설치 됩니다. 필요한 D3DX 종속성을 다른 컴퓨터로 이동 하는 경우 모든 샘플과 함께 재배포 하거나 응용 프로그램을 사용 하 여 다시 배포 해야 합니다.

    5. D3DX11의 현재 사용에 대 한 대체 기술은 DirectXTex, DirectXTK, Directxmeshuvatlas를 포함 합니다. D3DXMath는 Directxmath로 대체 됩니다.

  6. 다음 조건을 관찰 하 여 새 버전의 HLSL 셰이더 컴파일러를 사용 하 고 있는지 확인 합니다.

    1. 5 단계에 따라 실행 파일 디렉터리를 변경 하면 프로젝트 빌드에서 Windows SDK 설치의 FXC.EXE을 사용 하 게 됩니다. HLSL 파일은 이제 Visual Studio에서 공식적으로 인식 됩니다. 프로젝트 파일로 추가 하 고 프로젝트 시스템을 통해 컴파일러 옵션을 설정할 수 있습니다.

    2. 레거시 D3DX DLL을 통해 런타임 컴파일을 호출 하면 잘못 된 이전 버전의 HLSL 컴파일러가 사용 됩니다. *코드에서 D3DXCompile, D3DX10Compile 및 D3DX11Compile api에 대 한 모든 참조를 * * D3DCOMPILER _46.DLL 또는 D3DCOMPILER47.DLL의 D3DCompile 함수로 바꿉니다 _ .

    3. 런타임 셰이더 컴파일을 사용 하는 모든 프로젝트는 _ 프로젝트의 로컬 실행 파일 경로에 D3DCOMPILERxx.DLL 복사 해야 합니다. 이 DLL은 % ProgramFiles (x86)% \ windows 키트 \ 8.0 \ redist \ d3d \ 또는 % ProgramFiles (x86)% \ windows 키트 \ 8.1 \ redist \ d3d \ ( x86 x64) 아래에 설치 된 Windows SDK의이 하위 디렉터리에 있습니다.

      Windows SDK의 D3DCOMPILER _46.DLL 또는 D3DCOMPILER _47.DLL는 시스템 구성 요소가 아니므로 Windows 시스템 디렉터리에 복사 하면 안 됩니다. 응용 프로그램을 side-by-side DLL로 사용 하 여 다른 컴퓨터에이 DLL을 재배포할 수 있습니다.

  7. XInput API를 사용 하 고 Windows 7 또는 이전 버전의 Windows에서 실행 하려는 모든 프로젝트는 레거시 버전 (9.1.0)을 사용 해야 합니다. 또는이 구성 요소에 대 한 헤더 및 라이브러리를 DirectX SDK에서 명시적으로 포함 해야 합니다. XInput 헤더 및 XINPUT입니다. Windows SDK에 포함 된 LIB는 Windows 8 이상의 일부로 제공 되는 버전 (1.4)만을 대상으로 합니다. _ _ 이전 버전의 Windows에 포함 된 레거시 버전을 사용 하기 위해 XINPUT9 1 0. x 1과 함께 동일한 헤더를 사용할 수 있습니다. 레거시 버전의 XInput는 전체 기능을 검색 하거나 컨트롤러 통합 오디오를 지원 하지 않으므로 이러한 기능에 대 한 지원이 필요한 경우 DirectX SDK 버전 (1.3)을 사용 해야 합니다.

    완전 한 기능을 갖춘 하위 수준 XInput API를 사용 하려면 #include DIRECTX SDK의 특정 XInput 헤더를 직접 만들어야 합니다.

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

    ... 추가 종속성에 대 한 링커 옵션에서 DirectX SDK XInput 라이브러리에 직접 연결 합니다.

    % DXSDK _ DIR% Include \ \ xinput

    XINPUT1 _3.DLL binary는 개발 컴퓨터에 DIRECTX SDK를 설치 하 여 Windows 시스템 디렉터리에 설치 됩니다. DirectX SDK의 DirectX 설치 프로그램을 사용 하 여 응용 프로그램과 함께이 이진 파일을 재배포 해야 합니다.

  8. XAudio2 API를 사용 하 고 Windows 7 또는 이전 버전의 Windows에서 실행 하려면 이전 버전 (9.1.0)을 사용 하거나 DirectX SDK의이 구성 요소에 대 한 헤더 및 라이브러리를 명시적으로 포함 해야 합니다. Windows SDK 포함 된 XAudio2 헤더 및 라이브러리는 Windows 8의 일부로 포함 된 버전 (2.8)만을 대상으로 합니다.

    예를 들어 XAudio2를 사용 하는 경우 #include DIRECTX SDK의 특정 XAudio2 헤더를 직접 만들어야 합니다.

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

    ... 추가 종속성에 대 한 링커 옵션에서 DirectX SDK XAudio2 라이브러리에 직접 연결 합니다.

    % DXSDK _ DIR% Include \ \ xaudio2

    XAUDIO2 _7.DLL binary는 개발 컴퓨터에 DIRECTX SDK를 설치 하 여 Windows 시스템 디렉터리에 설치 됩니다. DirectX SDK의 DirectX 설치 설치를 사용 하 여 응용 프로그램과 함께 이러한 라이브러리를 재배포 해야 합니다.

  9. 이전 버전의 Visual Studio에서 DirectX SDK를 사용 하는 경우 Visual Studio 2010 업그레이드에서 DirectX SDK 경로를 기본 프로젝트 설정으로 마이그레이션 했을 수 있습니다. 이후 빌드 오류를 방지 하기 위해 이러한 설정을 제거 하는 것이 좋습니다. % USERPROFILE% \ AppData \ Local \ microsoft \ MSBUILD \ v 4.0 디렉터리에서 DXSDK 디렉터리 경로에 대 한 모든 참조를 제거 하도록 microsoft .cppmicrosoft .cpp . x m l. x m l 파일을 수정 합니다. _ 또는와 같은 경로 항목이 포함 된 전체 노드를 제거 하 여 표준 기본값으로 되돌릴 수 있습니다. 이러한 파일에 DXSDK DIR에 대 한 참조가 표시 되지 않는 경우에 _ 는 변경이 필요 하지 않습니다.

  10. 결과 앱이 windows 7 및 Windows 8 이상 버전을 비롯 하 여 Windows Vista SP2 (서비스 팩 2)를 지 원하는 경우 _ WIN32 _ WINNT 라는 전처리기 정의를 0x600으로 설정 합니다. Windows 7 및 Windows 8 이상만 지원 되는 경우에는 0x601로 설정 합니다.

    다음은 그 예입니다.

    1. 프로젝트에 대 한 속성 을 열고 c/c + + > 전처리기 를 선택 합니다.
    2. 모든 구성모든 플랫폼 을 선택 합니다.
    3. 전처리기 정의 섹션으로 이동 하 고 _ WIN32 _ WINNT = 0x600으로 설정 합니다.
    4. 적용 을 클릭합니다.

Windows 용 게임과 DirectX SDK

DirectX SDK (2021 버전)는 어디에 있나요?

특정 기간에 대 한 DirectX Sdk

D3DX 없이 살아있는