정적 및 동적 라이브러리 연결(Direct3D 10)

애플리케이션이 제대로 실행되려면 호스트 컴퓨터에 적절한 DLL이 설치되어 있어야 합니다. 이러한 DLL은 운영 체제 또는 애플리케이션의 재배포 가능 패키지에서 제공할 수 있습니다.

라이브러리 로드 적절한 DLL

DirectX SDK에 포함된 라이브러리는 런타임에 적절한 DLL을 자동으로 로드합니다. 이 규칙의 예외는 d3dx10.lib/d3dx10d.lib로, 해당 버전의 SDK와 함께 제공된 d3dx10.dll 로드합니다. 예를 들어 다운로드한 SDK에 d3dx10_33.dll 및 d3dx10_34.dll 포함된 경우 해당 SDK와 함께 제공되는 라이브러리(d3dx10.lib)가 d3dx10_34.dll 로드됩니다. 나중에 d3dx10_35.lib를 포함하는 후속 SDK가 설치된 경우 이전 SDK의 d3dx10.lib는 여전히 d3dx10_34.dll 로드합니다. 최신 SDK의 d3dx10.lib는 d3dx10_35.dll 로드합니다.

이진 파일 재배포

d3dx10.dll(및 동일한 파일의 후속 버전)만 재배포할 수 있습니다. 이 파일을 재배포하려면 DirectXSetup 함수를 사용해야 합니다. 이 함수를 사용하고 재배포 가능 패키지를 구성하는 방법에 대한 자세한 내용은 DirectSetup을 사용하여 DirectX 설치를 참조하세요. 필요한 다른 모든 이진 파일은 Windows Vista에 포함되어 있습니다. 재배포할 수 있는 유일한 이진 파일은 다음 디렉터리에 있는 이진 파일입니다.

(SDK root)\Redist

다음 표에서는 개발자가 알아야 할 이진 파일에 대해 설명합니다.

Direct3D 10 이진 파일 설명
d3dx10.dll/d3dx10d.dll 소매 및 디버그 D3DX10 구성 요소; 소매 구성 요소는 REDIST CAB에서 재배포할 수 있습니다.
d3d10ref.dll 참조 래스터라이저. 그래픽 파이프라인의 소프트웨어 구현을 제공합니다. Windows SDK 또는 레거시 DirectX SDK의 일부로만 포함되며 재배포할 수 없습니다. 참조 래스터라이저는 디버깅 전용입니다. 명시적 연결은 필요하지 않습니다. 참조 디바이스를 만들려고 하면( D3D10CreateDevice 참조) 이 dll이 있는 경우 로드됩니다.
d3d10sdklayers.dll 디버그 계층과 참조로 전환 계층을 포함하여 API 호출과 런타임 실행 간의 계층 역할을 하는 일련의 SDK 유틸리티입니다. 명시적 연결은 필요하지 않습니다. 적절한 계층 플래그를 사용하여 디바이스를 만들면 이 DLL이 자동으로 로드됩니다. 이 구성 요소는 개발 및 디버깅 목적으로만 사용됩니다. Windows SDK 또는 레거시 DirectX SDK의 일부로만 포함되며 재배포할 수 없습니다.

 

Direct3D 10 프로그래밍 가이드

Direct3D 10 그래픽