D3DDisassemble11Trace 함수(d3d11shadertracing.h)
셰이더 추적 단계에서 지정한 컴파일된 Microsoft HLSL(High Level Shader Language) 코드의 섹션을 디스어셈블합니다.
구문
HRESULT D3DDisassemble11Trace(
[in] LPCVOID pSrcData,
[in] SIZE_T SrcDataSize,
[in] ID3D11ShaderTrace *pTrace,
[in] UINT StartStep,
[in] UINT NumSteps,
[in] UINT Flags,
[out] ID3D10Blob **ppDisassembly
);
매개 변수
[in] pSrcData
형식: LPCVOID
컴파일된 셰이더 데이터에 대한 포인터입니다.
[in] SrcDataSize
형식: SIZE_T
pSrcData가 가리키는 메모리 블록의 크기(바이트)입니다.
[in] pTrace
형식: ID3D11ShaderTrace*
셰이더 추적 정보 개체의 ID3D11ShaderTrace 인터페이스에 대한 포인터입니다.
[in] StartStep
형식: UINT
D3DDisassemble11Trace가 디스어셈블리를 시작하는 추적의 단계 수입니다.
[in] NumSteps
형식: UINT
디스어셈블할 추적 단계 수입니다.
[in] Flags
형식: UINT
비트 OR 연산을 사용하여 결합된 다음 플래그 중 0개 이상의 조합입니다. 결과 값은 D3DDisassemble11Trace가 컴파일된 셰이더 데이터를 디스어셈블하는 방법을 지정합니다.
플래그 | 설명 |
---|---|
D3D_DISASM_ENABLE_COLOR_CODE(0x01) | 색 코드의 출력을 사용하도록 설정합니다. |
D3D_DISASM_ENABLE_DEFAULT_VALUE_PRINTS(0x02) | 기본값의 출력을 사용하도록 설정합니다. |
D3D_DISASM_ENABLE_INSTRUCTION_NUMBERING(0x04) | 명령 번호 매기기 사용. |
D3D_DISASM_ENABLE_INSTRUCTION_CYCLE(0x08) | 아무런 영향이 없습니다. |
D3D_DISASM_DISABLE_DEBUG_INFO(0x10) | 디버그 정보의 출력을 사용하지 않도록 설정합니다. |
D3D_DISASM_ENABLE_INSTRUCTION_OFFSET(0x20) | 명령 오프셋의 출력을 사용하도록 설정합니다. |
D3D_DISASM_INSTRUCTION_ONLY(0x40) |
D3DDisassemble11Trace에서 단계당 명령 주기의 출력을 사용하도록 설정합니다. 이 플래그는 D3D_DISASM_ENABLE_INSTRUCTION_NUMBERING 및 D3D_DISASM_ENABLE_INSTRUCTION_OFFSET 플래그와 비슷합니다.
이 플래그는 D3DDisassembleRegion 함수에 영향을 주지 않습니다. 주기 정보는 추적에서 가져옵니다. 따라서 주기 정보는 추적 디스어셈블리에서만 사용할 수 있습니다. |
[out] ppDisassembly
형식: ID3D10Blob**
디스어셈블된 HLSL 코드에 액세스하는 ID3DBlob 인터페이스를 수신하는 버퍼에 대한 포인터입니다.
반환 값
형식: HRESULT
이 메서드는 HRESULT 오류 코드를 반환합니다.
설명
D3DDisassemble11Trace는 셰이더 추적의 단계를 안내하고 단계의 명령 인덱스를 기반으로 하는 각 단계에 대해 적절한 디스어셈블리를 출력합니다. 디스어셈블리는 추적의 레지스터 값 정보로 주석을 추가합니다. D3DDisassemble11Trace의 동작은 D3DDisassemble이 수행하는 컴파일된 셰이더의 정적 디스어셈블리 대신 셰이더 추적 정보를 기반으로 하는 실행 추적을 제공한다는 점에서 D3DDisassemble11Trace와 다릅니다.
요구 사항
요구 사항 | 값 |
---|---|
지원되는 최소 클라이언트 | Windows 8 [데스크톱 앱 | UWP 앱] |
지원되는 최소 서버 | Windows Server 2012 [데스크톱 앱 | UWP 앱] |
대상 플랫폼 | Windows |
헤더 | d3d11shadertracing.h |
DLL | D3D11SDKLayers.dll; D3D11_1SDKLayers.dll; D3D11_2SDKLayers.dll |