我已經環顧四周,並沒有發現一個答案的所有呼叫轉移到設備上下文導致訪問衝突(DX 11),這是問題的代碼行:d3d-> GetImmediateContext() - > IASetVertexBuffers(0,1,& vertexBuffer,& stride,0);調用IASetVertexBuffers使得
無在參數傳遞的是NULL(00000000)(設備上下文也是不爲空),但我仍然可以對設備上下文每個函數調用訪問衝突錯誤。異常消息我得到的是「在2D Platformer.exe異常在0x00007FFDFD6CC796(d3d11.dll)拋出:0000005:訪問衝突讀取位置0x0000000000000000。」同樣奇怪的是,它這下一次我呼籲設備上下文的任何方法,如果我不設置頂點緩衝呢(當然什麼也不繪製),那麼有沒有崩潰,我可以叫我什麼都想要。
任何人都經歷了類似的問題或有沒有人有什麼可能會造成這個問題有何建議?
(如果你需要任何澄清,只是要求)
記住''IASetVertexBuffers''取指針數組以''ID3D11Buffer'',不是指針到一個。這使得使用有時會有點混亂。 –
謝謝,早些時候我確實遇到了問題 – JustinWeq