zoukankan      html  css  js  c++  java
  • 关于Unity中水和雾的使用

    自己来做水和雾还是有点麻烦的,不过没关系,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.雾开启的时候,一般都要配置白色的天空盒,才不会看起来很突兀。

  • 相关阅读:
    交易是如何被创建和打包的7
    重回js--js中的块作用域
    重回js--立即执行函数
    解决json跨域
    h5开发安卓ios坑总结
    关于html中对换行的处理
    说说display-inline
    笔记--学习git命令(基本命令版)
    写在最开始
    替换多个文件中的部分内容Demo
  • 原文地址:https://www.cnblogs.com/HangZhe/p/7241444.html
Copyright © 2011-2022 走看看