我要发帖 回复

高级会员

57

主题

1103

积分

0

专家分

杰出贡献鼓励

兴趣点(最多三项):

VegaPrime
军事仿真
定位与追踪

私信
发表时间 : 2007-12-8 17:31:23 | 浏览 : 1560    评论 : 5
不知大家是否使用过vpLightLobe?
我的一程序中在车上设置两个大灯(vpLightLobe),vpLightLobeControl::instance()->setEnable(false)即相当于关闭所有vpLightLobe,反之就是打开所有vpLightLobe(见vpLightLobeControl.h说明)。
当在仿真循环前就vpLightLobeControl::instance()->setEnable(false),我的程序能稳定在25帧左右,而运行过程中如果vpLightLobeControl::instance()->setEnable(true),则帧率降到10帧左右,如果再vpLightLobeControl::instance()->setEnable(false),帧率并不提升上去,一直在10帧左右了,为什么会这样? 好郁闷。在不使用vpLightLobe功能下的25帧左右能满足仿真要求,可是只有true即使再false回去(视景里其它对象并不改变),帧率并不回升,难道是vpLightLobe的bug?

最近VR访客

yanfengflying 评论于2007-12-8 18:08:09

回复 # 的帖子

您好,能否发给基础的vp+mfc的基础程序,我正在学习中,可不知如何下手!谢谢了!!
yanfengflying 评论于2007-12-8 18:08:52

您好

您好,能否发给基础的vp+mfc程序,我正在学习中,可不知如何下手!谢谢了!!
机器余专家组 认证企业会员 评论于2007-12-8 22:27:59
谢谢....
superdemo 评论于2007-12-18 18:42:53
自己解决!
把vpLightLobe的setIsectEnable设置为false,帧率就回来了。
看看setIsectEnable的解释:
/**
     * Set the state of isectors for this light lobe.  Setting the isectors
     * for a light lobe to inactive can save compute resources at the expense
     * of not recalculating the intersection of the light cone with the scene.
     * If a light is not moving around in an area where the surface that the
     * beam intersects will change height or orientation, it may be prudent to
     * disable isectors and let it assume that the position and orientation of
     * the intersecting surface is static.  Note that it is OK to move the
     * light source itself, and change its orientation, and the light will
     * still be projected correctly as long as the projection surface maintains
     * the same height and orientation.
     */
stephencc 评论于2009-12-18 23:38:51
superdemo 果然神人也

手机版|VR开发网 统计 津ICP备18009691号
网安备12019202000257

GMT+8, 2021-10-29 04:36 AM

返回顶部