Ogre中级教程7翻译版(5)

2020-04-21 02:15

mSceneMgr->setSkyPlane(true, plane, \0.5, 150, 150);

这样看起来就对了。如果我们往上看,就能看见天空(真实情况也是这样),而不会滑稽地从别处探出来。不管你是否使用弯曲,这都能解决当你往地平线上看的时候出现的不正常现象。

还有一种办法能让雾效不涉及整个天空,但需要对材质脚本进行修改。这已不是本课的内容,为了今后参考,它就是材质里禁用雾效的那个参数。

黑暗中的雾

当你设置雾的时候,可能不想使用天空,因为雾已经浓到你无法看见天空了。上面讲的雾效的一些技巧在某些场景非常有用。不把雾设置成明亮的颜色,而是设成非常暗,看看有什么效果。(注意,我们把天空面设置成离摄像机只有10个单位距离,在设置雾之前):

[cpp] view plaincopy

Ogre::ColourValue fadeColour(0.1, 0.1, 0.1);

mWindow->getViewport(0)->setBackgroundColour(fadeColour); mSceneMgr->setFog(Ogre::FOG_LINEAR, fadeColour, 0.0, 10, 150);

Ogre::Plane plane; plane.d = 10;

plane.normal = Ogre::Vector3::NEGATIVE_UNIT_Y;

mSceneMgr->setSkyPlane(true, plane, \

0.5, 150, 150);

编译运行程序,不算太糟糕。当然,一旦你会使用光照,你就不必用这种技巧了。但这的确展示了雾效的灵活性,以及用这个引擎你能做一些有趣的事情。如果你正写一个第一人称游戏,使用黑色雾能够制造“失明”或“符咒”这样的特效。


Ogre中级教程7翻译版(5).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:溶剂罐区作业指导书

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: