다음을 통해 공유


ID3D12GraphicsCommandList4::ExecuteMetaCommand 메서드(d3d12.h)

지정한 메타 명령의 실행(또는 호출)을 그래픽 명령 목록에 기록합니다.

메타 명령을 실행하기 전에 ID3D12GraphicsCommandList4::InitializeMetaCommand 를 호출합니다. 호출하는 동안 런타임 매개 변수 값에 대한 재정의를 지정할 수 있습니다. 동일한 그래픽 명령 목록에서 여러 메타 명령을 실행할 수 있습니다. 또한 동일한 명령 목록에서 동일한 메타 명령을 여러 번 실행할 수 있습니다.

메타 명령을 사용하여 PIX 캡처를 사용하면 동일한 하드웨어 구성에서 다시 재생할 수 있습니다. 그러나, 의도적으로, 그것은 다른 GPU에 이식 할 수 없습니다.

구문

void ExecuteMetaCommand(
  [in]           ID3D12MetaCommand *pMetaCommand,
  [in, optional] const void        *pExecutionParametersData,
  [in]           SIZE_T            ExecutionParametersDataSizeInBytes
);

매개 변수

[in] pMetaCommand

초기화할 메타 명령을 나타내는 ID3D12MetaCommand 에 대한 포인터입니다.

[in, optional] pExecutionParametersData

메타 명령을 실행하기 위한 매개 변수 값을 포함하는 상수 구조체에 대한 선택적 포인터입니다.

[in] ExecutionParametersDataSizeInBytes

pExecutionParametersData가 가리키는 구조체의 크기를 포함하는 SIZE_T 설정되면 0입니다.

반환 값

메서드가 성공하면 S_OK를 반환하고, 그러지 않으면 HRESULT 오류 코드를 반환합니다.

설명

애플리케이션은 메타 명령 사양에 따라 필요한 상태에서 메타 명령에 제공된 리소스를 설정해야 합니다. 메타 명령 정의 사양은 각 매개 변수에 대해 예상되는 리소스 상태를 정의합니다. 애플리케이션은 입력 리소스에 대한 UAV(순서가 지정되지 않은 액세스 보기) 장벽을 삽입한 후 메타 명령의 알고리즘이 이를 사용할 수 있도록 합니다. 또한 출력 리소스를 다시 읽으려는 경우 출력 리소스에 대한 UAV 장벽을 삽입해야 합니다.

알고리즘 호출 중에 드라이버는 알고리즘 구현에서 출력 리소스 사용량을 동기화하는 데 필요한 만큼 UAV 장벽을 출력 리소스에 삽입할 수 있습니다. 애플리케이션의 관점에서 스크래치 메모리를 포함하여 모든 아웃/인/아웃 리소스가 메타 명령에 의해 기록된다고 가정해야 합니다.

요구 사항

요구 사항
대상 플랫폼 Windows
헤더 d3d12.h

추가 정보

ID3D12GraphicsCommandList4