李锦俊(mybios)的blog

游戏开发 C++ Cocos2d-x OpenGL DirectX 数学 计算机图形学 SQL Server

  C++博客 :: 首页 :: 联系 :: 聚合  :: 管理
  86 Posts :: 0 Stories :: 370 Comments :: 0 Trackbacks

公告

QQ:30743734
EMain:mybios@qq.com

常用链接

留言簿(16)

我参与的团队

最新随笔

搜索

  •  

积分与排名

  • 积分 - 367075
  • 排名 - 67

最新评论

阅读排行榜

评论排行榜

声明:此文章翻译自DirectX 9.0C OCT 2006 SDK的Direct3D For C++帮助文档的Enabling Direct3D Debug Information主题,前面部分有些没有翻译的。

在#include <D3D9.h>语句前面加上以下这条语句即可:

#define D3D_DEBUG_INFO

关闭调试时查看D3D Device对象的情况
D3D_DEBUG_INFO1[1].gif

开启调试时查看D3D对象的情况
D3D_DEBUG_INFO2[1].gif

 

为外部调试使用调用堆栈

当 Direct3D 调试模式开启之后,你可以在任何时候查看对象的调用堆栈。这会导致你的程序非常慢,但是可以使用此功能检查资源泄漏(内存泄漏的一种)。开启调用堆栈,设置这个注册表键值为1即可:

\\HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\Direct3D\\
D3D9Debugging\\EnableCreationStack

开启D3D调试模式,然后重建你的工程,系统将会给你访问这个附加的变量:
  LPCWSTR CreationCallStack;

这个变量存储着每次创建对象时的调用堆栈。这会导致你的程序非常慢,但是可以使用此功能检查资源泄漏。

 

posted on 2006-11-17 15:14 李锦俊(mybios) 阅读(3813) 评论(2)  编辑 收藏 引用 所属分类: Direct3D

Feedback

# re: 【原创翻译】开启Direct3D调试模式! 2006-11-17 21:24 hahayoule验证码
haha, kan bu dong ,kanbudong,   回复  更多评论
  

# re: 【原创翻译】开启Direct3D调试模式! 2006-11-17 21:26 hahayoule验证码
HAHA我捣乱@~@  回复  更多评论
  


只有注册用户登录后才能发表评论。
网站导航: 博客园   IT新闻   BlogJava   博问   Chat2DB   管理