在osgearth项目开发的过程中,为了实现逼真的三维场景可视化效果,需要对模型进行雾化处理,从而实现雾的自然天气情况模拟。在这过程中,利用OSG的osg::Fog类实现雾的效果,实现的效果如图1所示。
实现osgearth三维仿真场景模型雾的效果的添加关键代码如下:
fog->setMode(osg::Fog::LINEAR);
fog->setStart(500.0f);
fog->setEnd(2500.0f);
fog->setColor(osg::Vec4(0.5f,0.5f,0.5f,1.0f));
model->getOrCreateStateSet()->setAttributeAndModes(fog.get());