goldenmantis 发表于 2003-4-1 21:28:00

[原创]3dsmax制作海面的教程


这个是本人打算写的一本关于材质的书(如果那本书真的能写完的话)里的一节,本人保留版权,未经本人许可,不得转载。制作逼真的海面效果

制作逼真的海面效果
[此贴子已经被作者于2003-4-1 21:45:37编辑过]

goldenmantis 发表于 2003-4-1 21:53:00

data/attachment/forum/uploadImages/20034121462796206.jpg<br>这一节是介绍如何制作逼真的海面效果。
第一步,当然是创建海平面,我们都知道地球是圆的,对于陆地,由于有高低起伏的存在,不需要考虑这点,可是海面也是球面的一部分,这里就存在一个我们到底实需要把海平面制作成平面还是球面的一部分的问题,这取决于摄像机所在的高度。
以下为计算过程,不喜欢计算可以略过。

首先,我们可以算一下摄像机所能看见的海面的范围,地球半径为R,摄像机高度为h,这里我们摄像机高度h肯定远远小于地球半径R,由立体几何可以得出,摄像机所能看见的海面最远距离 L 满足: L2≈Rh而这时海面最远处与水平面夹角α,满足h:L=sin(α)如果夹角α小于摄像机的最小分辨角为α(取决于分辨率,通常为0.1度左右),则可以认为摄像机无法分辨海面的曲率,是个平面。我们可以算得,当满足h < Rsin2(α)时,可以认为摄像机中的海面是个平面。

不过一般情况下,以20米为分界,摄像机低于20米就认为肯定不需要把海面做成球面。
看完了一堆讨厌的计算,终于回到正题了,创建海面。
对于平面的海面,一般创建一个平板(plane)就行,大小就由L=h/sin(α)决定,如果最小分辨角为0.1度,则平板的宽度就应为摄像机高度600倍左右。
如果想要有高一些的浪,那么可以加一个噪波(Noise)的空间扭曲。不过这时对海面的模型的精度就会有一定的要求。可能需要海面的分段很高才能有令人满意的波浪。如果你创建海面的时候掌握一些技巧,那么就可以节约很多的面。
第二步,为海面创建一个合适的天空,在后面你会看到,合适的环境是相当重要的。
这里我们用的是最简单的环境贴图,用一个渐变色条(Gradient Ramp)做的天空。首先在某个材质球的反射通道里加一个渐变色条(Gradient Ramp)贴图。

uploadImages/2003412148189263.gif<br><br>

一个太阳是必需的,一定要用平行光(Direct Light),当然也包括阳光(Sun Light)和室外光(Day Light),至于设置就按照正常的室外场景设置。

调整好之后把贴图拉到环境贴图里面,记得选关联复制,这样我们以后可以直接在材质编辑器里面调整。贴图方式用球状环境(Spherical Enviroment),注意它有的时候会自己变化。渲染一下看看效果,已经达到我们需要的效果了,那么,进行下一步。


data/attachment/forum/uploadImages/2003412150324125.jpg<br>

goldenmantis 发表于 2003-4-1 21:57:00

第三步,海面的材质。由于是光滑的水面,那么费涅尔反射(Fresnel Reflection)肯定是不可缺少的了,但是如果不是特殊情况的话,不需要用光线追踪,只需要让它反射环境贴图就可以了。
我们需要用凸凹贴图来表现海面上细微的波浪,这层细微的波浪会影响到高光和反射,但是注意,海面的漫反射不是表面的,而是在海水一定深度造成的,所以不受这层细微的波浪影响,那么我们就需要用一个复合材质(Composite Material)来表现。
首先,创建一个复合材质(Composite Material),
它的基本材质用来表现海面的漫反射,用标准材质(standard)就可以,漫反射色(Diffuse)用深蓝色(R:43,G:60,B:111),由于高光由另一层材质表现,所以这一层材质没有高光,反光度(Specular Level)为0。
它的第一层材质(Mat.1)用来表现海面的高光,也用标准材质(standard), 参数如图
uploadImages/20034121542593469.gif<br><br>
uploadImages/20034121554032133.gif<br><br>

最后再检查一遍,看有没有遗漏没有的话就可以渲染了
http://www.snren.com/uploadImages/20034121462796206.jpg
怎么样?不错吧?
只要你动动脑筋,就可以做的更好。

data/attachment/forum/uploadImages/20034121573321006.jpg<br>

michele 发表于 2003-4-1 21:59:00

辛苦了。。。

跳鼠 发表于 2003-4-3 12:20:00

不信

goldenmantis 发表于 2003-4-3 22:50:00

不信?

不信什么?

酱暴 发表于 2003-4-4 00:23:00

无话可说

goldenmantis 发表于 2003-4-4 11:34:00



我就怕这个

是好是坏说一声啊

无话可说就是不好不坏?

一笑而过 发表于 2003-4-5 15:13:00

很好啊!
好!

小桥 发表于 2003-4-5 16:35:00

当然是好了,如果能把模型发上来就更好了,要求是不是有点过分:)
页: [1] 2 3
查看完整版本: [原创]3dsmax制作海面的教程

室内设计工具箱