查看: 1869|回复: 5

Switch下子节点数量与cull和draw速度的关系?

[复制链接]

该用户从未签到

发表于 2009-10-10 20:40:50 | 显示全部楼层 |阅读模式
本帖最后由 ghczhaolei 于 2009-10-10 20:43 编辑

今天我发现:
当switch下只有一个子节点A时,CUll的时间为13ms,Draw的时间为23ms,帧频率为26左右;
若将A分成八块,将每一块分别作为switch的一个节点(共有8个子节点),这样Cull的时间就变成了15ms左右,Draw时间变为25ms左右,帧频率为24左右。

对同样的数据,进行多次分割,随着分割次数增加,swith下的字节点数目也逐渐增加,但swith中顶点的数量没有增加多少(大概2%),但帧频率却明显减少了,这种情况如何避免呢?

如有描述不清请提醒,谢谢。

该用户从未签到

 楼主| 发表于 2009-10-11 18:56:27 | 显示全部楼层
就没人知道为什么吗?

该用户从未签到

发表于 2009-10-11 23:14:45 | 显示全部楼层
您关注的并非重点,Switch节点本身并不涉及场景绘制,关键是您的叶节点Geode都作了什么

该用户从未签到

 楼主| 发表于 2009-10-12 12:19:44 | 显示全部楼层
本帖最后由 ghczhaolei 于 2009-10-12 12:36 编辑

3# array  
谢谢array的关注,我的switch下的的每一个节点是个组节点,组节点中又有一个组节点,这个组节点下就是叶节点了,这些叶节点也没什么特殊。每个Geode都由几个Drawables组成,我把Geode和Drawbable的结构,分别截图了您看看有没有异常
Geode的截图

Drawable的截图
Geode.jpg
Drawable.jpg

该用户从未签到

发表于 2009-10-12 13:05:19 | 显示全部楼层
这并不能说明什么。Switch下的节点数越多,也就是要绘制的内容越多,速度当然越慢了

该用户从未签到

 楼主| 发表于 2009-10-12 16:51:06 | 显示全部楼层
5# array

这样说的最好的办法只能是合并叶节点了,这个量太大了。谢谢array
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

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

联系我们

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