Unity3D Water真实水的设定技巧

Unity3D Water真实水的设定技巧

unity3D更多资源教程免费下载,群193521697 邀请码:10026.(有问题找管理员)

Water 真实水的设定技巧。现实生活中水是由氢与氧构成的。然而在Unity里头, 水又是由哪些东西构成的呢?

有很多不同的水类型您可以创建, 或是直接使用prefab. 为了要展现最新的水特效与脚本, 我将专注于Water4ExampleSimple assets这个场景资产, 基本上它内含几个3D meshes, 用来表现您水面效果。

WaterTile script

Water shader

一个空物件, 用来表示水放置的位置, 并带有:

一个水脚本 把颜色法线贴图与主要参数暴露出来

一个反射脚本

一个lighting脚本 用在高光特效

一个displacement脚本

最简单的方法是把把prefab拖到场景里面 指定您的cutom mesh

Assets > Import Package > Water (pro only)

在project window里头开启Standard Assets > Water(Pro only)资料夹,开启Water4资料夹,把Water4Example(Simple) Prefab拖曳到场景里面,选取其中一个tile meshes 到mesh component>点击右边的target icon 选取您的mesh (这个mesh必须要在你专案里面),如果你的mesh角度不对的话, 旋转Water4ExampleSimpleparent node 90度角,藉由移动parent node来移动您的mesh,移除第二的tile mesh。

设置

一旦你设定好mesh, 你就可以开始调整参数了,选取Water4ExampleSimplenode, 在inspector检视参数。

Water Base


Unity3D Water真实水的设定技巧

这个脚本的功能是用来启动或是关闭即时的平面反射效果(planar reflections),  这个是根据parent mesh的高度来计算的, 所以child meshes的自身Y轴位移应该是0, 这个参数也可以让你启动skybox来源的反射效果。

高光照明

你可以调整高光强度, 或是用拖曳的方式改变高光的来源. 这个来源可以是来自你的directional light或是场景中任何的物件, 不一定要是光源。

Gerstner(孤立波)Displace

这个参数你可以设定根据孤立波产生的演算法产生波浪效果。

水效果的小技巧

水会吸收红光, 然後反射出更多绿色与蓝色的光线. 而天空会让水呈现蓝色, 因此:最好不要直接把水表面的颜色设定为蓝色, 相反地, 你可以在水表面用绿色, 而水下面采用蓝色. 这样就能做出池塘感觉的幻觉了。而蓝色的颜色越深, 看起来水就越深. 你可以在水底部使用较深的颜色, 让refraction颜色更深。


Unity3D Water真实水的设定技巧

在tile上使用蓝色与绿色, 对比使用灰色与粉红色。细微的特效, 比较能做出写实的幻觉.。

法线的滚动率(Scrolling speed of normals )

Reflection

Refraction

Fresnel 与Normal strengths

Displacement

介绍一个实用的技巧: 把参数设为0, 然後慢慢增加数值, 直到调整到你想要的效果。

如果你的模型是凸面的(例如瀑布边缘), 在曲线的地方多加一点面数, 让水看起来有自然的弯曲效果。