<aside> 💡
ShadowMap 을 구현하는 과정에서 초기에는 shadowMap과 관련된 상수버퍼를 전역으로 하나만 두고, 여러 게임오브젝트들이 그 때 그 때 하나의 상수버퍼에 대해서 값을 바꿔가면서 사용하고자 하였다.
DX 11 이었다면 Immediate Context 이므로 GPU 에게 보낸 해당 명령어가 바로바로 수행되기 때문에 문제가 없을 것이다.
그러나 DX 12 는
오히려 Execute CommnadLists 로 바로 보낸다면, CPU에서 다른 GameObject가 해당 상수버퍼를 덮어씌우게 될 것이고, 만약 GPU 수행중에 CPU가 해당 값을 수정해버린다면 GPU Crash가 날 것이다.
현재는 GameObject 마다 Execute CommandLists 를 하지는 않았으므로 GPU Crash 문제는 발생하지 않았다.
<aside> 💡