드디어 아기다리고 어기다리던 Box 예제를 제대로 출력을 했습니다.

ExcuteCommandList에서 문제가 있어 이를 호출하는 Draw쪽 함수만 계속 보고 있었는데,
우연히 이 링크에서 해답을 찾을 수 있었습니다.

 

https://stackoverflow.com/questions/38888268/updating-a-vertex-buffer-causes-a-debug-layer-error

 

Updating a vertex buffer causes a debug layer error

I updated my Windows 10 to version 1607 which includes additional D3D debug layer checking. My vertex buffer updating code worked without warnings/errors before the update, but now I'm getting an e...

stackoverflow.com

저와 동일한 문제는 아니나,

해답 부분을 읽다가 d3dUtill 예제 코드로의 링크를 타고 들어가 봤더니 CreateDefaultBuffer 부분이 나왔습니다.

이 부분을 찾아보니 구현이 덜되어 있었습니다.

누락된 부분도 있고, 안 된 부분도 있었던 것입니다.

이 부분을 채우자 정상 작동을 하게 되었습니다.

 

이제 남은건 화면 출력을 예제 프로젝트의 프레임에 나오도록 하고, 버튼 클릭으로 변경 할 수 있게 하는 것입니다.

그리고 코드 리뷰를 진행 하면 됩니다.

원래 계획대로라면 말이죠.

 

하지만 개발을 하면서 느낀 점이 있는데, 순정 개발을 해야 하는가? 입니다.

좀 더 적어보자면 예시 코드들은 MS에서 제공하는 DirectX의 기능들을 확장한 확장 라이브러리들을 사용합니다.

물론 이것들이 어떠한 오버헤드를 야기하는 것은 아니고,
이론적으로 요구되지만 기능이 따로 구현되지 않는 것들을 제공합니다. 

즉, 사용성이 매우 올라간다는 것이죠.

 

처음의 저는 그래도 공부하는 것이기에 구조나 흐름 파악이 가능하도록 이러한 것들을 배제하고 개발 했으나,

실제 개발해보니 사용을 권장해야 할 정도로 너무 불편했습니다.

그래서 프레임을 옮겨놓고 나면 d3dUtill이나 d3dx12 같은 확장 코드를 적용하고자 합니다.

물론 이렇게 된다면 책에 있는 코드를 그대로 타이핑 하는것과 큰 차이가 없을 것입니다.

하지만 그렇기에 비교해서 공부하기에는 더 좋다고 생각합니다.

'내용정리 > DirectX12' 카테고리의 다른 글

10. Box Example 1  (0) 2020.09.04
20.08.25 개발일지  (0) 2020.08.25
20.08.18 개발일지  (0) 2020.08.18
20.08.14 일지  (0) 2020.08.14
20.08.07 개발일지  (0) 2020.08.07

+ Recent posts