[原][osg][OSGEARTH]OE的关闭打开自动计算裁剪面被OE的海洋ocean影响

在osgEarthUtil 下 Ocean.cpp 的  traverse函数中:

            // we don't want the ocean participating in the N/F calculation:
            osg::CullSettings::ComputeNearFarMode mode = cv->getComputeNearFarMode();
            cv->setComputeNearFarMode( osg::CullSettings::DO_NOT_COMPUTE_NEAR_FAR );

            // visit the ocean:
            osg::Group::traverse( nv );

            cv->setComputeNearFarMode( mode );

以上代码会导致,自定义设置裁剪面模式(是否开启自动裁剪) 不正确。

解决方案几种思路:

1.在外部设置是否自动计算远近裁剪面时候通知这里一下,

2.修改此处代码,从其他方式改变海洋的traverse

3.需要随意开启关闭OE远近裁剪面的工程里关闭海洋模块

猜你喜欢

转载自www.cnblogs.com/lyggqm/p/11428047.html
今日推荐