查看: 1754|回复: 9

osg水特效与十字树冲突

[复制链接]

该用户从未签到

发表于 2013-6-8 16:56:57 | 显示全部楼层 |阅读模式
无标题.png
我仿照array 的dreamisland写了个动态水面的特效在场景中,发现场景中的十字树或者单片树在某一个特定角度,会变成如图片中所示的那样,就是树的原本透明轮廓显现了出来,想请教下各位,帮忙看下,这是怎么造成的?如何解决?非常感谢!

该用户从未签到

发表于 2013-6-13 18:35:11 | 显示全部楼层
应该是透明排序的问题,树的透明排序应该位于水面之后。单纯从深度排序可能无法正确排列这两者(因为整个水面和树的大小差异过于明显),那么有必要自己手动设置RenderBinDetails来排列渲染的顺序

该用户从未签到

 楼主| 发表于 2013-6-14 09:48:28 | 显示全部楼层
array 发表于 2013-6-13 18:35
应该是透明排序的问题,树的透明排序应该位于水面之后。单纯从深度排序可能无法正确排列这两者(因为整个水 ...

好的,谢谢您,我去试试

该用户从未签到

发表于 2013-6-18 20:00:22 | 显示全部楼层
请问array 的dreamisland是开源的嘛?哪里能见到呀?

该用户从未签到

 楼主| 发表于 2013-6-19 09:05:16 | 显示全部楼层
素商 发表于 2013-6-18 20:00
请问array 的dreamisland是开源的嘛?哪里能见到呀?

在一个叫osgxi的工程里,网上可以下载

该用户从未签到

 楼主| 发表于 2013-6-19 11:37:36 | 显示全部楼层
array 发表于 2013-6-13 18:35
应该是透明排序的问题,树的透明排序应该位于水面之后。单纯从深度排序可能无法正确排列这两者(因为整个水 ...

另外还有个问题想请教下您,我正在研究您最新的osgRecipes里的osgeffectcompositor这个例子。按这个例子,您已经编写完成的EffectCompositor这个特效结点,用osgFX::EffectCompositor* compositor = osgFX::readEffectFile( effectFile ),并且把场景结点加在这个类下面,就可以添加到我自己的场景里去了。但是加进去后,发现场景帧数掉的厉害,原来20帧左右的场景只有3,4帧的样子。能否请您指点下,帧数下降的原因是什么?怎么能改进这个情况呢?非常感谢,麻烦了。

该用户从未签到

发表于 2013-6-19 22:12:16 | 显示全部楼层
您加载的是哪个effect,还有较差的显卡必然会在多次RTT的时候立即显出带宽严重不足的问题,因此也就毫无可能用上较为先进的延迟渲染技术

该用户从未签到

 楼主| 发表于 2013-6-20 08:35:02 | 显示全部楼层
array 发表于 2013-6-19 22:12
您加载的是哪个effect,还有较差的显卡必然会在多次RTT的时候立即显出带宽严重不足的问题,因此也就毫无可能 ...

我用的是colorgrading.xml,想实现场景的色彩调节。直接把所有场景加载到了effect的结点下。另外,我用的显卡是NVIDIA GeForce GT 630。测了下有效的内存带宽是28.8GB/s

该用户从未签到

发表于 2013-6-24 18:11:55 | 显示全部楼层
color grading已经是一个单通道的后处理效果了,本身只是多渲染了一次quad而已。。。我的测试都是可以保证在530上面跑满60fps的,所以我只能怀疑您的程序其它地方是否存在问题,或者您的显卡驱动急需更新了

该用户从未签到

 楼主| 发表于 2013-6-24 19:44:23 | 显示全部楼层
本帖最后由 dearpa 于 2013-6-24 19:53 编辑
array 发表于 2013-6-24 18:11
color grading已经是一个单通道的后处理效果了,本身只是多渲染了一次quad而已。。。我的测试都是可以保证在 ...


好的,那我再看一下我自己的程序吧,我的程序带的数据量比较大,一般大场景会有400万个面,帧数比不用color grading掉的很多。那我更新一下驱动试试,另外为了保证场景的清晰度,我把纹理大小改为2048*2048。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

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

联系我们

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