다음을 통해 공유


PFND3DDDI_SUBMITCOMMANDCB 콜백 함수(d3dumddi.h)

pfnSubmitCommandCb GPU(그래픽 처리 장치) 가상 주소 지정을 지원하는 컨텍스트에서 명령 버퍼를 제출하는 데 사용됩니다. 이러한 컨텍스트는 사용자 모드에서 직접 명령을 생성하고, 자체 명령 버퍼 풀을 관리하며, 할당 또는 패치 위치 목록을 사용하지 않습니다.

pfnSubmitCommandCb 이러한 컨텍스트에 대한 이전 pfnRenderCb 대체하며 해당 위치에서 사용해야 합니다. 레거시 패치 모드에서 작동하는 컨텍스트는 이전 pfnRenderCb계속 사용해야 합니다.

사용자 모드 드라이버는 패치 위치를 생성하지 않지만 기록되는 주 데이터베이스 목록을 생성해야 합니다. 비디오 메모리 관리자는 할당 목록을 사용하여 각 명령 버퍼에서 쓰기를 위해 참조되는 기본 할당을 결정합니다. 이 정보는 대칭 이동 작업과 주 복제본에 렌더링을 동기화하는 데 사용됩니다.

일부 커널 모드 드라이버는 GPU에 특정 DMA(직접 메모리 액세스) 버퍼를 제출하는 방법에 대한 사용자 모드 드라이버의 정보가 필요합니다. WDDM(Windows Display Driver Model) 1.0에서 사용자 모드 드라이버가 명령 버퍼를 통해 커널 모드 드라이버로 이 정보를 보냈습니다. DMA 버퍼는 사용자 모드 드라이버에 의해 직접 빌드되고 수정 없이 GPU에 제출되므로 더 이상 커널 드라이버에 정보를 보내는 데 사용할 수 없습니다. 따라서 전송할 명시적 프라이빗 드라이버 데이터 버퍼를 제출과 함께 추가합니다. 이 프라이빗 드라이버 데이터는 단방향이며 커널 모드 드라이버는 이 버퍼를 통해 사용자 모드 드라이버에 정보를 반환할 수 없습니다.

통사론

PFND3DDDI_SUBMITCOMMANDCB Pfnd3dddiSubmitcommandcb;

HRESULT Pfnd3dddiSubmitcommandcb(
  HANDLE hDevice,
  const D3DDDICB_SUBMITCOMMAND *unnamedParam2
)
{...}

매개 변수

hDevice

디스플레이 디바이스에 대한 핸들입니다.

unnamedParam2

pData [in]

수행할 작업을 설명하는 D3DDDICB_SUBMITCOMMAND 구조체에 대한 포인터입니다.

반환 값

이 콜백 함수가 성공하면 S_OK반환합니다. 그렇지 않으면 HRESULT 오류 코드를 반환합니다.

요구 사항

요구
지원되는 최소 클라이언트 Windows 10
지원되는 최소 서버 Windows Server 2016
대상 플랫폼 바탕 화면
헤더 d3dumddi.h(D3dumddi.h 포함)

참고 항목

D3DDDICB_SUBMITCOMMAND

pfnRenderCb