聲明:此文章翻譯自DirectX 9.0C OCT 2006 SDK的Direct3D For C++幫助文檔的Enabling Direct3D Debug Information主題,前面部分有些沒(méi)有翻譯的。
在#include <D3D9.h>語(yǔ)句前面加上以下這條語(yǔ)句即可:
#define D3D_DEBUG_INFO
關(guān)閉調(diào)試時(shí)查看D3D Device對(duì)象的情況
![D3D_DEBUG_INFO1[1].gif](/images/cppblog_com/mybios/ArticlePics/D3D_DEBUG_INFO1[1].gif)
開(kāi)啟調(diào)試時(shí)查看D3D對(duì)象的情況
?
為外部調(diào)試使用調(diào)用堆棧
當(dāng) Direct3D 調(diào)試模式開(kāi)啟之后,你可以在任何時(shí)候查看對(duì)象的調(diào)用堆棧。這會(huì)導(dǎo)致你的程序非常慢,但是可以使用此功能檢查資源泄漏(內(nèi)存泄漏的一種)。開(kāi)啟調(diào)用堆棧,設(shè)置這個(gè)注冊(cè)表鍵值為1即可:
\\HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\Direct3D\\
D3D9Debugging\\EnableCreationStack
開(kāi)啟D3D調(diào)試模式,然后重建你的工程,系統(tǒng)將會(huì)給你訪問(wèn)這個(gè)附加的變量:
? LPCWSTR CreationCallStack;
這個(gè)變量存儲(chǔ)著每次創(chuàng)建對(duì)象時(shí)的調(diào)用堆棧。這會(huì)導(dǎo)致你的程序非常慢,但是可以使用此功能檢查資源泄漏。
?