$ k; F% o0 Z' c, i 3 u$ H: L# o# w l1 I1 _7 L3 T4 J# Q
从以上两张图可以看出,场景中使用了大量的材质球和纹理帖图。我们看一下纹理总图。不过如果仔细观察就不难发现有一种类型的帖图纹理我反复使用了很多次。这就是MAYA的2D程序纹理:Ramp! b1 T" N5 B# O5 P/ i( L N* A
& S( l) J1 e3 ]& ^: D/ J( m+ e5 V. E2 u, B- }, L$ E
9 G) y, Z7 ]$ J( z6 [. ~& l 这个看似不太起眼的纹理在场景中的应用得十分广泛,可以说遍布了场景中的各个角落。下面举一个最简单的例子(如图):两个完全一样的多边形立方体,左边的使用了Maya默认的Lambert材质,右边的则在Lambert材质的基础上对Color属性帖了一个Ramp纹理(注意红框中的Ramp纹理参数设置)。我们会发现,右边加了Ramp纹理的立方体的质感变得强烈起来了。 , j- v) M1 K9 o& Z3 Y' O0 O9 d5 u " Z. J$ x! C! s; `, J) P, g 8 X: [& z" \4 G) B' `. a) T* O4 D5 W4 P0 @" J) J6 E, T8 ?
为了便于大家理解,我再从场景中提出其中一个尖顶的小屋来做为例子说明一下Ramp的用处。(如图),这个建筑非常具有典型性,因为它几乎每一个元素都使用到了Ramp这个纹理。我们可以看一下在同样光照的状态,使用了Ramp纹理(上图)和不使用Ramp纹理(下图)他们的对比渲染效果。图中以房体的材质为例,展示了Ramp的用处。如图所示,房体使用的是Layered Texture,也就是通过两层或两层以上的纹理的叠加来表现复杂的效果(叠加模式可以自选,这有些类似于PHOTOSHOP中图层之间的叠加模式)。相类似的,此建筑中每一个元素都是这样。- i/ I1 r8 l) b) n3 p
- e8 [: `. A/ } / n. o( O d; _: ]0 ~9 ~/ E# V2 h& W5 j0 m2 `' U+ \
同样的问题,场景中有些物品由于其形状的特殊性,用Ramp达不到很好的效果,所以我直接制作了专门的帖图,用帖图来代替Ramp模拟这种效果。(如图)所示* K. ^3 L3 P; Y6 W! i8 h) c
$ U) s. T, a% O/ r# M" Q& t6 K. N G& r& Y1 ?/ V* I
1 t3 A. [4 ?6 x3 Y' r 关于地面,最初本来打算使用多层程序纹理配合高密集的置换来制作,(如图)所示,就是我在开始时做的测试。效果是比较满意的, V5 B7 @) J6 u
p, s* j& g, u* n1 c1 u6 V5 n' {# a: ~% P8 F
. e. z E! j8 B2 ^2 A' G
但后来在实际使用时发现,由于场景中的地面面积非常大,如此高密集的置换所带来的计算量实在无法接受,而且经常出错。(maya渲染器的置换功能一直是被人抱怨的热点),最后只能放弃了全局置换而改为局部置换。(图)是最终的地面材质节点网和地面的顶视图渲染图。 2 ^2 G1 @& w2 ^0 z+ E% k$ q& h. |7 M" T! m5 I 2 }4 R' A' ]$ R6 ^* b * T: \( ?. u. _8 M3 V: j 只在近景需要更多细节表现的水塘处使用了置换。(如图)所示,因为水与地面的衔接处显得太光滑了,缺欠细节。而加了置换之后效果就不同。水塘变得更加真实可信。4 b: s% g, K O
+ Z6 z& p% t7 c& H/ u- y" ?: n d2 u% O" U: ^ ~
) B0 V1 e5 {1 @4 t0 A& e 除了水塘外,水面也做了比较细致的加工,因为是近景,所以要多花些心思。 主要给水面加了波纹和由罐子里流出的奶迹等细节~。 水面只是一个NURBS平面,波纹并不是置换或直接建模得来的,而是向水面材质的Bump属性添加帖图而得的,帖图是由一张水纹照片经过在PHOTOSHOP中去色变形得到。(如图)所示,图中是水面的材质节点网和用到的两张帖图。注意,节点网中的纯白色的纹理其实是一张比较混沌的位图,用来表现水中牛奶的混沌效果。由于我调高了它的亮度值,所以在节点视图中显示为了全白色)8 t5 C! V5 ]: C% M( m
/ y U z g7 N ( i6 P$ Y8 {. w' v& f , d% E3 P: }* h" G. z 水塘最终效果! 7 |( {7 h8 g4 p/ j& D* s- R) x9 y5 z) u 3 V. k( O" O; H) S- O- \4 o& z5 n$ y" r, M# m: w, g8 {" S: n2 h
石头的材质是场景中为数不多的完全由程序纹理组成的材质之一(图)。大家看一下它的节点网,完全由3D程序纹理生成。同时一个2D Ramp纹理将石头分成上下两种颜色(如果注意观察一下就会发现石头的上半部分要比下半部分颜色来得浅),这其实是模拟石头浸在水中时的效果。(观察"水塘最终效果"中的石头也可以发现这一点)' q) b7 }" J- A2 B7 Q8 B7 R
/ F/ i y3 { k& j9 L; x & z0 A7 S8 U6 y/ V$ H$ I7 ^- ? : _3 r, y: J! v. [# @ 本来想在网上找一些新疆传统花纹,可实在资料太少,Google搜了半天一无所获。于是我就自己制作了一些花纹,但总觉得不太地道,所以也没敢用得太多。(图)4 S3 s% ?9 `- d7 P! A7 T R' I/ t- u* C6 J
$ _5 M- Y6 u* w& |( w, ^/ W 9 ]- B9 K5 L0 \& d! ^ ^' ?- u, I: X6 S# T8 a8 H% i4 c; Q
角色方面,材质的设定也不是很复杂。以驴的身体材质为例。可能大家都会觉得驴子的身体有一种毛绒绒的感觉。这其实是使用了MAYA自4.5版后新加入的Ramp Shader材质,它可因灯光或摄影机角度的不同而使材质显现出不同的效果。(如图)所示,左侧为没有毛绒效果,右侧为有毛绒效果。大家仔细观察可以发现他们在参数设置上的差异造成的在实际效果上的不同点。当然,也可以自己手工连一个节点来实现类似的效果/ w6 M. [5 f' Y& \* G
2 h$ } b: ^$ D J+ L( l% D8 L ' G5 J& e: o5 ^/ I! ?
7 h- A+ [& B5 i! t7 m 同样使用这种方法的还有场景中竖立着的伞及其它一些物品及房屋等 : R9 s2 ~1 z8 H* r ) U! w% h3 O0 e/ V. h5 a" {) V7 i
. Q) m: E0 X' j/ _6 G 阿凡提的衣服及脸部手部都体现出一种布料的质地。在MAYA中主要通过2D Cloth这个程序纹理来模拟。$ ?* W! Z! Y" c- @" @
- k; k) n% ~# D- H. O & \! P' ~6 Q% H: g/ p& k6 R6 c3 b. A4 y5 x) n
是阿凡提脸部的材质节点网。其它衣服之类的材质与之类似。: T9 l% d3 P8 ~0 v5 b
4 c/ a: M2 b4 h8 ] 8 T" S. i, h/ g4 o. Z- f 4 Y) Q" M0 s" j* A 天空在一张现成的图片基础上加工得到,帖在一个环境球上* ~0 _$ Z/ z# H8 L' Y# s5 V
2 N; S3 ~6 [$ q% x) U # [; f+ \2 d9 E : r: f. C. p$ p3 v 屋顶烟囱冒出的烟雾使用了particleIllusion 3.0,它的2D粒子可以很方便的生成真实的烟雾效果。从中抓出几帧,到Photoshop里合成一下即可。 其实,加上烟雾也好,给水面加波纹也好,都是为了使场景"活"起来,不至于显得太死气沉沉的。! E' y) `# h- Y8 ^