屏蔽掉Ogre1.7版本以后的 LOGO和FPS数据显示

一、1.7版前的处理方法

屏蔽掉Ogre LOGO和FPS数据显示,网上搜索了一下,大多类似。

选取了一个最简单易懂的。

 在ExampleApplication.h中,找到showDebugOverlay(true)虚函数的应用
 为mFrameListener->showDebugOverlay(true);
 所以最直接的办法就是在实例文件中改为mFrameListener->showDebugOverlay(false);

上面转自:http://blog.sina.com.cn/s/blog_60ffc4670100mr6y.html

还有一个比较详细的,其实也和上面的类似,http://blog.csdn.net/yeazer0/article/details/4932437

 

我原来看见过类似的文章当时没有在意,只是知道这个函数。

最近我从头做一个Ogre的ATL控件,要从头设置Ogre渲染系统。

我直接官网上下载了最新的框架 BaseApplication类和 TutorialApplication类的。

然后,就一直出现LOGO和FPS数据的Overlay。

我尝试使用showDebugOverlay()函数,就是无法去掉。

我应用各种查找,就是没有找到 Core/DebugOverlay,也没有找到相应的脚本源。没有win版的。

应用如下代码,也找不到资源,返回为NULL。

Overlay* mDebugOverlay;
mDebugOverlay = OverlayManager::getSingleton().getByName("Core/DebugOverlay"); 

 

二、Ogre1.7以后,Logo 和FPS都是在sdktray中生成的

耽误时间有点长,我就搁置在一旁了,先做别的。今天我看关于Ogre的Blog有如下一篇文章。

SDKTRAY 初探 .http://blog.csdn.net/moonstrace/article/details/5399082

 

这篇文章的概况:

Ogre1.7以后,Ogre官方不再包含CEGUI的组件了。
Ogre Demo里面的GUI应用,都是一个叫“tray”系统提供的。
这个系统的主要代码在SdkTray.h文件之中。“tray”的系统多 用Overlay实现的。然后,具体讲了,Tray系统中的各个类和函数。

我下载的这个Ogre版本就是1.7.2的。我发现代码中控制LOGO和FPS显示的被个OgreBites::SdkTrayManager类的对象控制。

OgreBites::SdkTrayManager类 就是Tray系统中定义的。

LOGO和FPS的Overlay的create都是在这个类里面。有时间的时候可以仔细研究一下。

OgreBites::SdkTrayManager类 提供部分函数 如下:

void showLogo(TrayLocation trayLoc, int place = -1)
void hideLogo();

void showFrameStats(TrayLocation trayLoc, int place = -1)
void hideFrameStats();

void showAll();
void hideAll();

我直接在调用了hideAll()函数。

void BaseApplication::createFrameListener(void)
{
……
     mTrayMgr = new OgreBites::SdkTrayManager("InterfaceName", mWindow, mMouse, this);
    mTrayMgr->showFrameStats(OgreBites::TL_BOTTOMLEFT);
    mTrayMgr->showLogo(OgreBites::TL_BOTTOMRIGHT);
    mTrayMgr->hideCursor();
    mTrayMgr->hideAll();//这行是我添加的。

……
}


完事。LOGO和FPS都不显示了。大笑
 

 

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值