다음을 통해 공유


ID3D12DebugCommandList1::AssertResourceState 메서드(d3d12sdklayers.h)

지정된 상태가 명령 목록을 기록하는 동안 지정된 하위 리소스의 상태를 알고 있다고 가정하여 하위 리소스의 상태와 일치하는지 확인합니다(예: 리소스가 동일한 명령 목록 기록의 앞부분에서 전환됨). 상태가 아직 알려지지 않은 경우 이 메서드는 나중에 동일한 명령 목록 기록에서 추가 유효성 검사를 위해 알려진 상태를 설정합니다.

구문

BOOL AssertResourceState(
  [in] ID3D12Resource *pResource,
       UINT           Subresource,
       UINT           State
);

매개 변수

[in] pResource

형식: ID3D12Resource*

검사 ID3D12Resource를 지정합니다.

Subresource

형식: UINT

검사 하위 리소스의 인덱스입니다. 인덱스로 설정하거나 D3D12_RESOURCE_BARRIER_ALL_SUBRESOURCES 수 있습니다.

State

형식: UINT

검사 상태를 지정합니다. 이것은 하나 이상의 D3D12_RESOURCE_STATES 플래그 또는 함께 할 수 있습니다.

반환 값

형식: BOOL

이 메서드는 리소스 또는 하위 리소스의 추적된 상태가 지정된 상태와 일치하면 true 를 반환하고, 그렇지 않으면 false 를 반환합니다.

설명

명령 목록 실행은 기록 후 가끔 발생하므로 명령 목록 기록 중에 리소스 상태를 알 수 없는 경우가 많습니다. AssertResourceState 는 애플리케이션 개발자에게 명령 목록의 고정 기록 지점에서 리소스 또는 하위 리소스에 가정된 상태를 적용할 수 있는 기능을 제공합니다.

명령 목록 기록 중에 리소스 또는 하위 리소스의 상태를 이전 장벽 또는 유추된 사용(예: CopyBufferRegion에 대한 이전 호출에서 사용됨)으로 인해 알 수 있는 경우가 많습니다. 이러한 경우 AssertResourceState 는 지정된 상태가 알려진 상태 또는 가정된 상태와 일치하지 않는 경우 디버그 메시지를 생성할 수 있습니다.

이 API는 디버그 유효성 검사 전용이며 리소스의 실제 런타임 또는 GPU 상태에 영향을 주지 않습니다.

요구 사항

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

추가 정보

ID3D12DebugCommandList1