Quick Flow
text
1. HRESULT와 Debug Layer의 첫 error 확인
2. Present와 back-buffer RTV·viewport 확인
3. clear color가 보이는지 확인
4. depth/cull/blend를 known baseline으로 고정
5. draw count, topology, VB/IB/layout 확인
6. VS clip position을 단순 값으로 검증
7. PS를 상수색으로 바꿔 texture·lighting 분리여러 warning을 동시에 고치기보다 첫 error부터 처리합니다. 한 단계씩 known-good state로 줄여 어느 경계부터 출력이 사라지는지 찾습니다.
증상별 시작점
Clear도 보이지 않으면 swap chain, RTV, viewport, Present와 window size를 봅니다. Constant color triangle은 보이는데 texture만 검으면 SRV·sampler·UV·format·sRGB를 확인합니다. 일부 면만 사라지면 index range, winding, cull과 depth를 확인합니다.
RenderDoc 같은 frame capture를 사용하면 draw별 pipeline state와 resource 내용을 볼 수 있지만 Debug Layer의 API 계약 오류를 먼저 없애야 capture 해석도 명확해집니다.
자주 틀리는 점
- 모든 state를 disable한 뒤 원인을 찾았다고 끝내지 않습니다.
- NaN·Inf clip position과 zero-size viewport를 값 검사에서 빼지 않습니다.
DrawIndexed인자의 byte offset과 index count를 혼동하지 않습니다.- 이전 pass의 SRV·shader·constant buffer가 남은 상태를 기본값으로 믿지 않습니다.
참고 링크
2 sources