查看: 2148|回复: 1
打印 上一主题 下一主题

Ogre的调试问题

[复制链接]

17

主题

0

听众

277

积分

设计实习生

Rank: 2

纳金币
114
精华
0

最佳新人

跳转到指定楼层
楼主
发表于 2013-9-19 08:44:24 |只看该作者 |倒序浏览
pstatus"> 本帖最后由 茵为你值得 于 2013-9-19 09:46 编辑

关于Ogre的调试问题
1、 如果要启动debug模式,务必使用文件:resources_d.cfg
2、 运行如果出现错误,务必查看文件:Ogre.log
3、 Ogre.log文件存储了程序运行时的信息,方便调试
4、 如果出现以下错误:
可能原因:resources_d.cfg或者resources.cfg的某一项XXX不支持(自动设置),或是在源程序的m_pRoot->loadPlugin("XXX")处进行了加载(手动设置)。通过查看Ogre.log文件确定错误原因,然后在配置文件中 或者 源程序中注释掉这个设置。一般是不支持D3D
5、  在debug模式容易出现以下错误:
这个问题主要是因为多次加载了Plugin产生的,最可能的情况是既自动加载又手动加载导致了两次加载。当然,同样可以通过查看Ogre.log得知错误处,但是比较麻烦。比较幸运的是,可以点击“忽略”,接着运行。
6、 new Ogre::Root()默认的是newOgre::Root("plugins.cfg","ogre.cfg");,而使用debug模式时,却需要plugins_d.cfg。所以在加载plugins时,最好别使用默认参数设置。
方法有二:
(1)       使用自动加载:
#if defined(_DEGUG) || defined(DEBUG)//这是自动
  m_pRoot = new Ogre::Root("plugins_d.cfg","ogre.cfg");
#else
  m_pRoot = new Ogre::Root("plugins.cfg","ogre.cfg");
#endif
(2)       使用手动加载:
#if defined(_DEGUG) || defined(DEBUG)
//m_pRoot->loadPlugin("RenderSystem_Direct3D9_d");
m_pRoot->loadPlugin("RenderSystem_GL_d");
m_pRoot->loadPlugin("Plugin_ParticleFX_d");
m_pRoot->loadPlugin("Plugin_OctreeSceneManager_d"); // Load octree
#else
//m_pRoot->loadPlugin("RenderSystem_Direct3D9");
m_pRoot->loadPlugin("RenderSystem_GL");
m_pRoot->loadPlugin("Plugin_ParticleFX");
m_pRoot->loadPlugin("Plugin_OctreeSceneManager");// Load octree
#endif
由于手动设置 和 自动设置 不能同时使用(即不能设置两次),所以推荐使用自动设置。若使用手动设置,将可能只能使用release版(因为默认参数将使用plugins.cfg文件,当然如果非要这样,则可以更改plugins.cfg文件的内容和plugins_d.cfg一样)。
7、  关于resources.cfg和resources_d.cfg文件。
这两个文件的内容是一样的。
分享到: QQ好友和群QQ好友和群 腾讯微博腾讯微博 腾讯朋友腾讯朋友 微信微信
转播转播0 分享淘帖0 收藏收藏0 支持支持0 反对反对0
习惯是一种可怕的东西。
回复

使用道具 举报

10

主题

0

听众

551

积分

初级设计师

Rank: 3Rank: 3

纳金币
586
精华
0

最佳新人 活跃会员 热心会员 灌水之王 突出贡献

沙发
发表于 2015-2-8 18:05:21 |只看该作者
不错啊,谢谢分享!
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

手机版|纳金网 ( 闽ICP备2021016425号-2/3

GMT+8, 2024-11-11 11:31 , Processed in 0.097412 second(s), 27 queries .

Powered by Discuz!-创意设计 X2.5

© 2008-2019 Narkii Inc.

回顶部