Unity脚本特效插件,让你的天空与众不同
随着硬件水平的飞速发展,玩家们对于游戏画面及氛围的要求也越来越高。如何在游戏中实现逼真的3A级天空氛围也是游戏开发中的难题,今天就为大家分享Asset Store资源商店中几款天空特效插件,能够适用于不同的平台,并能去帮助大家提高开发效率。
Enviro – Sky and Weather
Enviro是用于在Unity中动态实现3A级天空及天气氛围的插件,支持在运行时调整天空设置并保存,可以根据系统时间或自动更新时间来实现真实世界的日夜循环。Enviro拥有高效高质量的天空盒着色器,并提供大量属性对天空效果进行调整与自定义,可以基于太阳高度模拟真实世界的光照,还支持季节变换。Enviro支持桌面、主机、移动及VR平台。
Enviro除了支持设置天气相关的特效外,还提供了非常实用的功能模块,包括用于游戏逻辑的事件系统,支持按不同时区设置天气,可以模拟轨道卫星、植被生长等,还提供基于物理的着色器模拟动态雨雪效果。
使用Enviro的步骤非常简单,只需将Enviro - Dynamic Enviroment -> Prefab文件夹下的EnviroSky 1.9预制件拖拽到场景中,然后在EnviroSky脚本中指定“Player Object”与“Payer Camera”对象,或者勾选“AssignInRuntime”后指定标签,在运行时自动绑定这两个对象即可。
另外需要注意,使用Enviro需禁用场景中的其它方向光,并尽量使用线性颜色空间来实现更佳的视觉效果,Enviro默认采用自定义层30及31用于渲染云层及卫星。在同一项目中,支持桌面与支持移动平台的着色器不可以共用。
下载地址:https://www.assetstore.unity3d.com/en/#!/content/33963
Weather Maker
Weather Maker可用于在Unity中实现各种3A级天气效果、体积雾、体积光以及天空特效。可以轻松模拟雨、雪、冰雹及雨夹雪等天气,并且支持其与场景的碰撞检测。还能模拟风来作用于场景的粒子特效与树木等。Weather Maker支持2D及3D模式,可用于移动平台与VR平台。
Weather Maker中的体积雾是全屏特效,可在低端设备上运行,仅需一个Draw Call,并且仍能保持高质量的雾效。体积光支持点光源、方向光及聚光灯,主方向光(太阳)还带有可选的体积阴影。
使用Weather Maker需要先导入Unity自带的Environment标准资源包以及后处理资源包,这些资源均可在Asset Store资源商店免费下载。然后只需将Weather Maker ->Prefab -> Prefab文件夹下的WeatherMakerPrefab预制件拖拽到场景,在Weather Maker Script脚本中调整相机、太阳、月光、云层、雨、雪等天气现象的属性与行为等。Weather Maker提供了GUI面板以便在运行时调整天气属性。
所有属性调整确认后,可以禁用场景中的ConfigurationCanvas来隐藏GUI面板。
下载地址:https://www.assetstore.unity3d.com/en/#!/content/60955
Azure[Sky] Dynamic Skybox
Azure[Sky] Dynamic Skybox是一款基于物理着色的动态天空模拟系统,可以非常方便地在Unity中实现基于真实时间的天空循环。它支持阳光散射、模拟真实雾效散射与云层,可以自定义时间与日期系统,并基于真实时间、日期及地理位置来放置太阳与月亮的位置。
Azure[Sky] Dynamic Skybox同时支持前向渲染及延迟渲染,支持线性及Gamma颜色空间。该插件简单易用,并为用户预留了足够的控制来调整天空属性,以实现符合项目独特需求的效果。使用该插件只需将Azure[Sky]Controller预制件加入场景,然后确保场景中不存在其它方向光,插件会自动替换Unity默认的天空盒材质。
为了实现更佳效果,可以调整一些设置,例如在Quality Setings下禁用Anti Aliasing以免使用顶点着色模式及前向渲染的天空网格出现瑕疵,另外添加两个自定义层分别用于渲染月亮与天空。并在Azure[Sky]Controller预制件中设置好新增的层。
所有设置均可在编辑器或运行时完成,还可直接更改插件代码来满足项目的特定需求。
下载地址:https://www.assetstore.unity3d.com/en/#!/content/36050
结语
天空与大气氛围对于一些3A级的游戏来说非常重要,希望这些特效插件可以帮助开发者及美术朋友们轻松调整出适用于自己项目的天空场景。