水
自己来做水和雾还是有点麻烦的,不过没关系,Unity帮我们做好了很多可以用的。
1.Unity自己实现了水的特效,帮助我们解决游戏中水的问题
2.Unity的水集成在了Environment的环境资源包里面,导入的方法是:Assert---->Import---->Environent导入
需要正式版才能看到这个菜单,没有的话也没关系,我们可以使用网上别人导出的package
3.水分为Water与Water(Basic)两个文件夹,Basic效果要差,但是占用CPU比较低。两个文件夹中都有一个Prefabs预制体的文件夹,文件夹下面有两个为文件,对应DayTime和NightTime的水。
4.水是有Shader来实现的,所以要看一下水对应的Shader,可以自己调节参数。
水环境的实例
1.Assert---->Import Packages---->Cuotom Packages---->Environment.unitypackage,在E:电影Unity Video47
2.进入AssetsStandard AssetsEnvironmentWaterWaterPrefabs,把预制体WaterProDayTime拖进场景中,也可以选Basic里面的水的预制体
3.如果水的区域不够大的可以设置节点的scale
4.创建工程的文件目录,res、scenes、scripts,保存场景
5.其实在AssetsStandard AssetsEnvironmentWaterWaterMaterials,放着水的材质,这些材质的shader属性都是它自己写的shader,我们还可以在材质面板调整水的速度
6.最逼真的是AssetsStandard AssetsEnvironmentWaterWater4Prefabs里面,也就是Water下面的Water4水的预制体,它既有顶点的变化,也有像素着色的变化,而其他的水只是像素着色在变化,最差的是water(basic)下面的水,中等的是water下面的water。
雾
1.开启Unity的雾模式:Window---->Lighting,勾选住Fog
2.Fog的模式:Linear,Exponential,Exponential Squared;
Linear:雾从start开始,接近end越浓
Exponential:可配参数Density,雾的浓度,浓度越大雾越大
Exponential Squared可配参数Density,越大表示雾越浓
3.Fog Color雾的颜色,可以配置雾的颜色。
4.代码中的RenderSettings类是用来设置雾的属性的
fogMode:可以调整雾的模式,关闭雾fogMode=0
fogDensity:可以调整雾的浓度
start,end fogStartDistance fogEndDistance 线性模式的时候
雾的实例
1.Assert---->Import Packages---->Cuotom Packages---->motten.unitypackage,在E:电影Unity Video47
2.进入AssetsFbx,把山的预制体拖进场景
3.Window---->Lighting,勾选住Fog,配置Density雾的浓度
4.开启雾的时候,如果想看清物体,必须靠近才可以,浓度越高,就要靠的越近才可以看清
5.雾开启的时候,一般都要配置白色的天空盒,才不会看起来很突兀。