查看: 1868|回复: 4

加载文字后,浏览速度变慢?

[复制链接]

该用户从未签到

发表于 2009-9-29 09:10:11 | 显示全部楼层 |阅读模式
在项目开发过程中,碰到了以下情况,盼望大家指点:

按照下面的结构,生成了6000个MatrixTransform后加载到Group里面:
Group --> MatrixTransform -->LOD-->geode --> text
其中有关Text节点的设置为
text->setAxisAlignment( osgText::Text::SCREEN );
text->setCharacterSizeMode(osgText::TextBase::SCREEN_COORDS);
这样文字就不随着放大缩小而改变了。
结果发现浏览速度变得很慢,原来fps为60的,现在只有30了。

后将geode替换成为一个模型的Node(osg::ReadNodeFile)发现浏览速度很快,维持在60左右,推断是否是因为文字的包围盒每次描画时都要计算的原因?

因为是OSG新手,面对这样的问题,不知道怎么解决了,还请各位指点一二?

该用户从未签到

 楼主| 发表于 2009-9-29 12:46:23 | 显示全部楼层
呵呵,自己做了一下尝试,发现主要是以下两句代码引起速度比较慢
pText->setCharacterSizeMode(osgText::TextBase::SCREEN_COORDS);
pText->setAxisAlignment( osgText::Text::SCREEN );

尝试加了下面的代码,发现速度很快
pText->setInitialBound(osg::BoundingBox(0.0,0.0,0.0,10.0,10.0,0.0));

所以就先用这个方法解决了,具体原因和结果还不是很明白。

该用户从未签到

发表于 2009-9-29 13:50:26 | 显示全部楼层
应该是别的地方存在问题,不过凭现有的信息我无法深入去判断了

该用户从未签到

 楼主| 发表于 2009-9-29 17:49:09 | 显示全部楼层
呵呵,谢谢管理员关注!
管理员加5000多个文字显示的时候,如果设置了
pText->setCharacterSizeMode(osgText::TextBase::SCREEN_COORDS);
pText->setAxisAlignment( osgText::Text::SCREEN );

速度很快么?

该用户从未签到

发表于 2009-9-29 22:53:02 | 显示全部楼层
我们系统的标注信息都是用这种方法设置的,印象中没出过太大的问题
您需要登录后才可以回帖 登录 | 注册

本版积分规则

OSG中国官方论坛-有您OSG在中国才更好

网站简介:osgChina是国内首个三维相关技术开源社区,旨在为国内更多的技术开发人员提供最前沿的技术资讯,为更多的三维从业者提供一个学习、交流的技术平台。

联系我们

  • 工作时间:09:00--18:00
  • 反馈邮箱:1315785073@qq.com
快速回复 返回顶部 返回列表