PFND3DDDI_CREATEDEVICE 콜백 함수(d3dumddi.h)
CreateDevice 함수는 후속 호출에서 참조되는 그래픽 컨텍스트를 만듭니다.
구문
PFND3DDDI_CREATEDEVICE Pfnd3dddiCreatedevice;
HRESULT Pfnd3dddiCreatedevice(
HANDLE hAdapter,
D3DDDIARG_CREATEDEVICE *unnamedParam2
)
{...}
매개 변수
hAdapter
그래픽 어댑터를 식별하는 핸들입니다.
unnamedParam2
pCreateData [in, out]
D3DDDIARG_CREATEDEVICE 구조체에 대한 포인터입니다. 입력에서 이 구조체에는 드라이버에서 사용할 수 있는 정보가 포함됩니다. 출력 시 드라이버는 Microsoft Direct3D 런타임에서 사용할 수 있는 구조의 정보를 지정합니다.
반환 값
CreateDevice는 다음 값 중 하나를 반환합니다.
반환 코드 | 설명 |
---|---|
S_OK | 그래픽 컨텍스트가 성공적으로 생성되었습니다. |
E_OUTOFMEMORY | CreateDevice 에서 완료하는 데 필요한 메모리를 할당할 수 없습니다. |
설명
디스플레이 디바이스는 렌더링 상태 컬렉션을 보유하는 데 사용되는 그래픽 컨텍스트입니다. 지정된 어댑터에서 동일한 프로세스로 여러 디바이스를 만들 수 있습니다. 동시에 존재할 수 있는 디스플레이 디바이스 수는 사용 가능한 시스템 메모리에 의해서만 제한됩니다. 즉, 드라이버는 최대 디바이스 제한을 하드 코딩할 수 없습니다.
일반적으로 디바이스는 서로 독립적이므로 한 디바이스에서 만든 리소스는 다른 디바이스에서 만든 리소스에서 참조하거나 액세스할 수 없습니다. 그러나 프로세스 간 리소스는 이 규칙의 예외입니다.
Direct3D 런타임이 CreateDevice 를 호출하여 디바이스를 만들 때 런타임은 디바이스에 대한 실행의 기본 GPU(그래픽 처리 장치) 컨텍스트 스레드를 만들지 않습니다. 드라이버는 pfnCreateContextCb 함수를 명시적으로 호출하여 필요에 따라 하나 이상의 컨텍스트를 만들어야 합니다.
요구 사항
요구 사항 | 값 |
---|---|
지원되는 최소 클라이언트 | Windows Vista 이상 버전의 Windows 운영 체제에서 사용할 수 있습니다. |
대상 플랫폼 | 데스크톱 |
머리글 | d3dumddi.h(D3dumddi.h 포함) |