真实纹理制作[转帖]
真实的纹理
第一章 简介与总论
来源: CGClass
编译: ymqworks
简介
本文的目的不是教你某种特殊材质或贴图效果. 而是说明如何观察生活中的事物并将他们数字化. 世界上没有完全平铺重复的纹理. 我尽量避免使用程序产生的纹理贴图, 当然我并不掌握所有的3D的软件, 所以本文并不针对某个软件, 你需要理解后运用到你自己的工作中. 文中力求使用公认的术语, 以便你的理解.
为什么要避免使用程序产生的纹理贴图
我不赞成大量使用程序产生的纹理贴图(如smoke, noise, water等等). 诚然, 使用它们, 你可以在很短的时间内完成一定的纹理效果, 但是如果你需要创建可信的真实的贴图, 它们就显得过于单薄了. 对于初学者来说, 程序产生的纹理贴图非常好用, 不过要提升作品的品质, 你需要花点时间.
为什么? 你看, 世界上没有与世隔绝的事物--天气, 动物和人都会接触物体. 在制作纹理前, 你需要问自己一些问题: 这个物体是用来做什么的? 它在哪里被发现? 人们如何接触他? 纹理贴图可信的关键就是它们是否能清楚显示物体是如何与外部世界相互作用的.
例如, 孩子的玩具箱在翻盖处和把手处会被磨旧; 老式的旧电话机在拨号圆盘和听筒上会有指纹的痕迹; 电脑的鼠标会在按键上留下油迹. 我们需要的就是将这些习以为常的效果通过电脑重现. 而你需要做的就是绘制自己的纹理贴图.
当然也有例外. 例如在没有高级柔体动态引擎的情况下, 水面通常只能利用程序产生的noise(噪波)来制作和动画. 程序贴图还被广泛运用于皮肤, 衣服的凹凸纹理贴图(大面积一致的纹理). 但是不能局限在程序纹理的使用, 即使是皮肤在不同的区域也有微妙的变化, 如关节处的皱纹, 痣, 胎记. 而增加这些细节的方法就是使用自己绘制的图片. 所以除了完全统一的纹理外, 完美真实的纹理表面需要你自己绘制.
这里我并不否认程序纹理的使用, 而是请你暂时忘记它们的存在, 专心研究物体的表面. 当你完全理解了表面的属性, 那么再结合使用程序纹理. 无论何时, 程序纹理应当被巧妙和恰当的运用. 也就是说不能仅用程序纹理来完成作品, 在以后的章节里我将教你如何正确使用程序纹理.
观察真实生活中的表面
如果你想成为优秀的纹理艺术家, 首先应当学会如何观察周围事物的表面. 你需要看物体, 然后在心里将其表面的不同属性分离开. 如面对砖墙--仔细研究色彩的变化, 注意光是如何被其表面分化的, 体会每块砖上的磨痕, 凹凸和缝隙中的水泥. 甚至体会它的表面温度--那听起来很奇怪, 但如果你希望人们相信砖墙的存在, 那确实很重要. 人们看到你的图片应当联想到摸上去是什么感觉, 而温度就是非常重要的因素, 以后我将详细系统的介绍.
你必须牢记观察是为了将事物数码化. 当早晨驾车去上班的路上, 我经常注意路边的垃圾箱, 并且默想 "嗯, 那个垃圾箱有一张极好的diffusion(散射)纹理贴图", 或者看看破旧的卡车并想"多么酷的specularity(高光)贴图". 正因为我那样想, 当面对工作时, 我就可以凭借记忆和经验轻松的将它们画出来. 因为我知道金属看上去是什么样子的, 或如何制作卡车上生锈的斑纹, 或. . .
努力将你看到的表面分解成 Colour, Diffuse, Luminosity, Specularity, Glossiness, Reflection, Transparency, Refraction, Translucency和Bump各个纹理成分(属性). (某些表面区域还包含Displacement--影响几何体形状的凹凸贴图, 由于它从技术上说是几何体的属性, 所以本文不作讨论. ) 这些不同的表面属性都结合在软件的材质编辑器中(不过transparency和translucency是例外). 注意分析它们之间互相的影响--例如, 反光的透明玻璃杯磨损或脏的部分反光度和透明度都被削弱.
为了能正确的观察这些属性, 首先, 你需要理解这些属性.
真实世界的表面是脏的, 旧的. 新手的最大错误就是把所有的面都作的很干净.
真实世界表面的不同属性
我将尽量简要的解释这些属性, 以后章节将分别深入的介绍它们.
Colour(色彩)
所有的物体都有色彩. 这是表面的基本属性, 但是并不简单. 世界上没有色彩一成不变的物体. 任何物体的色彩在某个部分是不平衡的, 哪怕是微小的变化. 色彩纹理贴图是贴图的开始, 它给你物体的基本感觉. 将其他表面属性设为灰色, 那么色彩贴图就是决定物体色彩的唯一属性.
Diffuse(散射│过渡色)
MAX用户注意diffuse不是colour. Max的材质编辑器中Diffuse就是colour, 但是Diffuse和Colour实际上是不同的. 在Max的Raytrace材质中才有真正的diffusion, 在Lightwave, Maya和Softimage中diffusion是正确定义的. 它是真实表面的重要属性.
Diffusion就是物体表面散射的光. 它是物体散射光的度量. 实际上它决定了我们能够看到多少物体的色彩. 也就是光反射了物体上多少颜色. 这与表面色彩是不同的概念. 如果你将色彩变暗, 那仅仅是色彩变化, 而不是色彩深度的变化. 色彩深度是通过散射光来表现的. 观察人的皮肤你会发现其密度. 色彩不是连续不变的而是通过散射光产生细微的变化. 这些变化是无法通过色彩贴图本身来实现的, 它不能像散射贴图那样将表面的层次表现出来. 可见, 散射和色彩是相互联系的. 将色彩贴图变灰然后进行散射贴图调整是很好的方法.
Luminosity(发光)
这个属性决定物体是否自发光, 光有多强. 这通常用在霓虹灯, 灯泡, LED, 液晶显示等等. 发光贴图可以与支持radiosity(光能辐射的)渲染器结合, 这样发光值就能在渲染时作为光源处理.
Specularity(高光)
这个重要的表面属性经常被忽视. 我认为Colour和Specularity是表面的2大基本属性. 高光决定了物体有多耀眼以及光在表面的分布. 还记得我说过外界如何接触和影响物体吧, 你可以通过高光贴图来表现环境是如何在物体上留下印记的. 例如衣服上的污渍, 指纹, 湿漉漉的表面, 打蜡抛光等等, 都是高光贴图的用武之地. 高光通常与其他3个属性互相联系- 光泽度, 凹凸和反射.
高光与光泽度决定了物体表面高光点的范围. 高光与光泽度的值接近时会有较小的高光点, 看起来就像塑料; 而如果两者的值相差较大高光点就会扩散到较大区域, 看起来像金属.
凹凸与高光决定了物体的磨损度. 根据表面的不同调整高光的值. 例如木头, 磨平后会变得光滑发亮, 而金属磨旧后会变得毛糙. 还有表面的刮痕. 刮痕会累积灰尘和腐蚀, 所以会变得更毛糙.
反射和高光的关系是很明显的. 反光的物体被人接触后会留下指纹, 使这个区域反光能力下降. 又如冬夜汽车前玻璃有雾气, 被布擦拭后会留下痕迹. 被擦的区域反射能力会下降. 世界上没有100%反射光的物体, 因为任何时候都会有人接触它, 从而影响它的高光和它的反射度.
高光分两种:normal和anistropic. normal就是普通的平面高光, 而anistropic是有细微凹凸的表面高光.
Glossiness/Gloss(光泽)
光泽度就是光点在物体表面的扩散程度. 添加高光后, 你必须通过光泽度来改变高光的范围. 塑料的光泽度高, 而未处理的木头和工业金属的光泽度低, 甚至没有光泽度.
左图为高高光值, 低光泽度值,
右图为高高光值, 高光泽度.
Reflection(反射映象)
反射映象属性决定了物体的反光能力. 根据前文的介绍, 反射会因为被外界接触而改变. 通常这个属性被过分滥用--贴图的反射值往往过大, 而令物体不真实.
这并不是说不要反射--事实上几乎所有的事物都有反射. 反射也不能与辐射混淆. 辐射指物体对周围环境多次反射的光的跟踪体现. 这种效果不能用反射来表现. 反射的种类也是不同的--例如镜子的反射是完全清晰的镜像, 而铁, 塑料, 多数液体的反射是模糊的. 多数软件的反射属性中有模糊的选项. 经常有人把铝制水壶的反光做得非常强烈, 好像可以用来作镜子, 这是错误的.
Transparency and Refraction(透明与折射)
Transparency决定了物体"被看穿的程度"(Opacity决定物体的不透明程度. opaque为0%的物体会消失在场景中, 而100%transparency的物体将可以完全被看穿, 但是仍然可见). 显然, 如玻璃, 有机玻璃, 液体, 水晶等都有不同的透明度.
物体的透明度也是受高光度影响的, 例如表面上的指纹油污, 这些区域的透明度会大大降低. 多数透明物体都是折射光线的. 折射就是穿过透明物体的光线被扭曲. 例如, 玻璃杯里盛满水, 插入筷子, 透过水看到的筷子会扭曲. 不同物体有不同的折射率, 折射率表可以在物理书中找到, 也可以到Google.com输入"折射率表"搜索. 折射率越高, 光线被扭曲越多. 现实生活中的物体折射率不会超过2.0.
左球没有折射, 右球的折射率为1.175
Translucency(半透明)
不是所有软件都有这个属性. 半透明就是不完全透明. 例如窗帘, 虽然不透明但是当光线穿过它时,你可以看到它背后的影像. 事实上许多物体都有这个属性. 如皮肤, 在较强光线下你可以透过皮肤看到静脉血管.
Bump(凹凸)
凹凸你应该懂, 通过平面图的深淡来模拟物体表面的凹凸. 我需要强调的就是凹凸不会改变几何体本身. 凹凸贴图只能被用在小的细节上, 如刮痕, 小凹痕, 槽, 刻痕. 不要用凹凸贴图来代替建模. 当镜头靠近凹凸贴图的部分, 它会显得很平.
制作你自己的纹理贴图
贴图的大小是制作中的重要问题. 为了决定贴图的大小, 你需要知道最终你要渲染多大的图. 一般而言:
获得计算贴图在最终屏幕上的最大像素宽度, 然后乘以2. 以此作为最终的贴图尺寸, 最终渲染就不会模糊. 例如电视分辨率为720 X 576 像素(PAL D1), 所以如果你的物体要在镜头中特写, 你的贴图尺寸至少为1440像素. 我通常使用正方形的贴图(因为要用UV Unwrapping), 所以我的贴图至少为1440 x 1440像素, 72dpi(每英寸72像素). 因为显示器和电视机也是72dpi. 缺点是大的贴图会减慢渲染的速度, 但毕竟不是天壤之别. 如果你为IMAX(超大屏幕电影)创作作品, 你的电脑需要处理4000 x 4000像素的图片.
还没完!
这里罗列了继续深入前需要了解的基础知识. 接下来的几章我们将分别深入研究表面的这些属性.
--------------------------------------------------------------------------------
-- 作者:jzp
-- 发布时间:2003-2-26 5:47:11
--
真实的纹理
第二章 标准投影技术 VS 艰苦的UV展开
原著: Leigh van der Byl
编译: ymqworks
究竟什么是UV?
"UV"这里是指u,v纹理贴图坐标的简称(它和空间模型的X, Y, Z轴是类似的). 它定义了图片上每个点的位置的信息. 这些点与3D模型是相互联系的, 以决定表面纹理贴图的位置. 就好像虚拟的"创可贴", UV就是将图像上每一个点精确对应到模型物体的表面. 在点与点之间的间隙位置由软件进行图像光滑插值处理. 这就是所谓的UV贴图.
那么, 为什么用UV坐标而不是标准的投影坐标呢? 通常给物体纹理贴图最标准的方法就是以planar(平面),cylindrical(圆柱), spherical(球形),cubic(方盒)坐标方式投影贴图.
Planar projection(平面投影方式)是将图像沿x,y或z轴直接投影到物体. 这种方法使用于纸张, 布告, 书的封面等 - 也就是表面平整的物体. 平面投影的缺点是如果表面不平整, 或者物体边缘弯曲, 就会产生如图A的不理想接缝和变形. 避免这种情况需要创建带有alpha通道的图像, 来掩盖临近的平面投影接缝, 而这会是非常烦琐的工作. 所以不要对有较大厚度的物体和不平整的表面运用平面投影方式. 对于立方体可以在x, y方向分别进行平面投影, 但是要注意边缘接缝的融合. 或者采用无缝连续的纹理, 并使用cubic投影方式. 多数软件有图片自动缩放功能, 使图像与表面吻合. 显然, 如果你的图像与表面形状不同, 自动缩放就会改变图像的比例以吻合表面. 这通常会产生不理想的效果, 所以制作贴图前先测量你的物体尺寸.
图A - 平面投影方式
Cylindrical projection(圆柱投影方式)是将图像以围绕圆柱的方式投影到模型上. 这对于某种物体很适合--圆柱体. 除此以外别无他用. 制作圆柱投影方式的贴图时, 注意图片的左右两端可以无缝合拢, 如图B.
技巧提示: 要确定边界是否缝合可以用Photoshop的Offset(位移)滤镜(在菜单的Filters/Other/Offset), 位移图像一定的像素, 并打开Wrap Around选项. 如果有接缝就进行修改, 消除接缝后反向offset.
图B - 圆柱投影
Spherical projection(球形投影方式)是将图像沿指定轴从一个极点拉伸到另一个极点, 然后包裹在经纬线上. 就像是把展开的世界地图包裹到球体上制作成地球仪. 同样, 球形投影只能用在球体上. 同时用上文提到的Offset滤镜保证图像两端可以无缝连接. 另一个方法是使用photoshop的Polar Coordinates(极坐标变换)滤镜(在菜单Filters/Distort/Polar Coordinates)并设定为Rectangular to Polar. (注意只是检查图像. 不要保存!) 这样你就知道贴图是否适合球形. 用球形投影方式制作行星的纹理贴图时就可以用以上方法检查是否存在接缝.
Cubic projection(立方投影方式)就是将图像在一个立方体模型上每一个面分别贴. 类似于从六个方向进行平面投影. 再次强调, 注意边缘图像不要产生接缝, 除非你需要接缝. 立方投影较适合完全四方的模型物体, 如果是长方体, 会在较长的面上拉伸图像, 在较短的面压扁图像.
所以, 我们回到了主题, 为什么需要用UV贴图来代替这些贴图方式? 正如你所看到的, 投影方式是有局限性的. 无法胜任非常复杂的模型纹理贴图. 但奇怪的是这些投影经常被当做重要技术而被提到, 人们往往忽略了UV贴图方式. 这是因为纹理图像可以很精确的以标准投影方式贴在模型上, 在整个表面是连续的, 而UV贴图只在特定点有精确的值(通常是多边形的交界), 而在特定点之间是按照线性插值进行贴图的. (插值就是: 对组成连续序列的值, 估计中间值) -- 这里就是模型表面的色彩,色调值, 而插值色彩就成为了图像的一个部分, 它们是根据根据周围点的色彩估算出的色彩点. 当你对模型运用了UV坐标, 拖动这些点就会对整个图像进行拉伸变形.
UV UNWRAPPING(UV展开)
一旦完成模型(在贴图前完成模型是非常重要的. 确信模型已经100%完成, 否则不要运用UV展开贴图.), 你可以决定模型是否需要UV展开. 暂且假设需要UV展开. 那么就需要决定展开方式(展开是针对X, Y, Z信息转换成的平面UV而言的). 的确展开方式有许多种, 不过不要头痛, 世界正因为复杂而精彩.
以下是UV unwrapping的选项...
Planar(平面展开) 这里再次遇到了平面选项. 基本和上文描述的是一样的. 最终的UV坐标就是平面投影到表面上. 需要注意的是, UV一般是正方形的, 所以通常UV展开会被压扁. 只要调整UV展开点的位置而不是模型的结构就能改变贴图的布局. 我个人倾向使用平面展开, 因为这样产生的贴图便于工作.
Cylindrical(圆柱展开) 和前面所述的类似. 注意如果你的圆柱物体有顶部, 并且你希望将它也展开, 那么只能在X或Z轴展开, 沿Y轴展开会使顶部变成平面.
Spherical(球体展开) 同前. 你也许好奇, 既然UV展开方式和前述的投影方式一样, 为什么还要区别使用? 要知道UV背后的强大功能, 就是让我们可以集中关注模型的点进行修改, 而不会影响模型的形状.
Atlas (lightwave3D中的术语)这种方式可能在各种3D软件里的名称不同, 或许没有. 简单的说Atlas展开方式提供的UV样本将表面信息转换到UV贴图中, 产生的图像是垂直于表面法向的. 就好比将纸张揉成的团展开为原来的纸. 问题是Atlas展开后的结果通常非常混乱, 会产生分离的多边形, 如图C. 这类展开, 由于需要大量后续修改工作. 所以我个人尽量避免使用.
图C - Atlas展开. 在导出到Photoshop前需要大量修改工作!
我喜欢使用平面展开. 理由很明显, 例如角色的身体, 大量多边形需要被展开 (单单角色上半身就有11张不同的平面UV贴图), 由于每张图都是独立文件, 所以经常会看到不同的UV贴图结合处有接缝. 一种解决办法是将有接缝的贴图与不同的UV表面贴图进行blend混合. 还有一种简单的方法: 对于同一个面进行多重展开, 为所有不同UV贴图选择一个基本底色. 然后在绘制不同贴图时, 在接缝处不添加小细节, 这样当所有UV贴图相遇时, 只有基本底色显示, 接缝就消失了.
同样的方法适用于凹凸, 高光等贴图 - 避免细节切断多边形的边缘, 如果你不使用不同UV贴图时结果会很明显.
接着如何处理展开的UV图?
首先, 按需要修改UV展开图. 3D软件会有许多修改展开线框图的工具, 修改线框图不会影响模型. 通常需要对容易出现变形的部分进行修整, 使多边形互相连接贯通. 修改展开图直到确信自己可以在上面进行游刃有余的绘制纹理, 接着附上一张测试图像.
有2种选择... 第1种选择是你已经有了贴图用的图像. 在一个显示在UV视图. 以此图为UV图的背景, 拖动UV图上的点, 使它与纹理图像的相应位置吻合. 这种方法很奇怪, 我个人建议不采用.
第2种方法是将展开图导入Photoshop(或其他平面绘图软件). 可以利用一些Unwrap插件来获得展开图图像, 然后用Photoshop打开. 或者使用抓屏(在键盘上按下PrintScreen键), 进入Photoshop, 新建图像(图像尺寸默认为系统屏幕尺寸), 并Paste(粘贴). 再切割出正方的UV展开图(这是很关键的一步!) 现在准备绘图. 在第1章中提到过, 图像尺寸对于纹理贴图很重要. 回忆回忆: 为了决定贴图的尺寸, 你需要知道最终渲染的图像尺寸. 纹理贴图一般是最终图像中纹理出现的最大宽度的2倍. 以这个尺寸作为贴图的尺寸, 结果就不会产生模糊或像素化.
例如电视的最终分辨率为720 X 576像素(PAL D1), 那么如果你的贴图会充满整个画面, 那么宽度不应该小于1440像素. 采用正方贴图的尺寸就是至少1440 x 1440像素. 图像设为72 Dpi是安全的, 因为电视和显示器都是72dpi. 缺点是这样大的贴图会减慢渲染的速度. 所以如果你需要为IMAX渲染, 最好配置能处理4000 x 4000像素图像的计算机?
图象的真实性原则------无序的真实
怎样使得一幅CG照片般真实?可能有上千个元素可以增加图象的真实性,但总结起来有10条,我把它们称之为“照片真实3D的十大原理则。它们正是确保图象照片般真实的基本底线。
照片真实3D的十大原则:
1. 混乱和无序
2. 个性和期望
3. 可信度
4. 表面材质
5. 镜面反射
6. 污垢、灰尘和锈迹
7. 裂痕和刮擦
8. 斜角边缘
9. 物体材质深度
10. 散射率
你所要做的全部事就是把你的图象同这十条原则比较,如果满足其中的八项以上的话就可以把你的作品称之为照片真实3D。举个例子,一个刚出厂的崭新物品不需要第6和第7条原理,但仍旧要满足第8条原理。 在开始之前我们首先要了解图象背后的创作背景,这一点很重要,这有助于我们理解照片真实3D原理应用的理由和方式
Dwellers是一部目前Komodo Studios,一个位于南加州的动画工作室,正在制作中的一部3D动画影片。这是一部关于一名名叫Papagaio的老玩具工匠制造出具有感知思维能力的机器生物的故事。Papagaio在他的地下室里制造出了了第一个Dweller――Gizmo。我们长话短说:Papagaio用废品和新旧物品的零部件组装出了Gizmo。Dweller都是用现实世界的零件组装而成。这有助于建立它们的照片真实可信度,同样也有助于我们决定如何建模和确定表面属性,当然机械动态另当别论。
图1展示了Gizmo在Papagaio的工作台上初诞生时的情形。整个场景发生在午夜1点的地下室内。Papagaio不希望任何人发现Dweller的存在,所以他仅用一个工作灯照亮他的工作台。他刚给Gizmo加上线路版,也就是Gizmo的大脑。这个场景捕捉了Gizmo苏醒时的瞬间。
现在你对场景的故事背景有了大概的了解,那么就让我们来看一下那十个照片真实原则是怎样应用于这幅Dweller的图象。
图1 Gizmo诞生的瞬间
原则1:混乱和无序
本原则远比应用真实图象作为表面材质来得重要。你呈现一个场景的方式对照片真实有着巨大影响。例如,一张桌子和一些全部旋转90度和离开桌子距离完全相等的椅子看上去就会很数字化。即使材质相当真实,这个场景仍旧看上去象芭比的梦中小屋。所以为你的3D图象增加一些混乱和无序会给整个场景带来真实感。
混乱是现实最明显的痕迹。大部分3D图象的通病就是缺乏混乱:每一样东西都被整齐地安排放置。我不知道你的世界,但我所生活的世界完全处于混乱之中。看看你的家和办公室。你看到了什么?呵,如果如同我的工作室一样的话,那么你会看见成堆的参考资料、纸、磁碟、ZIP和许多小摆设,瞧,完全的混乱。
现实是纯粹的无序。无序并不意味着所有东西都被毫无头绪地安排。无序中也用秩序。无序意味着场景中的元素不能被精确地对齐。你可以通过把乳酪排放在搁板上来创造秩序,但无序又会使它们各个稍稍旋转不相同的角度,没有一块会中规中矩。现实中没有完全的统一,但因为某些理由,我们的3D上色图象公然藐视现实,一个个元素都整洁划一地安放着。事实上,原因很简单,3D程序提供我们数不清的用来工程规划的工具。我们是如此地沉浸在这种工程式的环境中,以至于我们感到连我们的思维都被迫变得线性。3D工程的僵化是一个很容易染上的毛病。你必需打破3D的工程式束缚,去体验创造性地舒展手脚的感觉。力图把打破物体对齐排列作为一种习惯。我并不是要完全打破,因为那样无序就太多了,只要稍稍偏离对齐即可。试试吧,你将会发现这会给你的3D场景带来大不一样的感觉。
现在让我们来看看混乱和无序的原则是怎样应用于图1的。仔细观察,你会发现那儿有着丰富的混乱。这是一个工作台,我从来没有见过一个整洁的工作台,特别是使用中的。那里有螺帽、螺钉和螺丝四下分散。但在整齐地排列于墙架上的工具中我们仍能找到秩序的存在。把秩序和混乱结合起来是不会错的。注意一下场景中的潜在无序:两个电池中的一个已经倒下,照相机的盒子稍稍离开了墙根,尖嘴钳打开着,红色的电线盘绕得并不整齐。最佳的无序应用当属那把正在烧焦桌子的电烙铁。当然我不是推荐你在工作台上做同样的事情。
原则2:个性和期望
个性同照片真实3D有什么关系?全都有关系!记住:人们创造了他们的环境。在这个世界上不存在能够躲过人类改造力的避难所。所以,几乎所有的3D场景都有着人类介入的元素。当然我们所谓的人类并非仅仅是我们,也可以是动物、异形甚至是昆虫。每一个生物都有通过它们的环境反映出来的截然个性。它们有处事的独特方法。它们都有着明确的方式来构筑自己的环境,无论是阴暗潮湿、整齐还是完全无序。你必需花一些时间来探究你场景中的生物。即使你的场景中没有角色出现,但它仍旧是某人某物创造的。你要了解它们的个性以恰当地构建一个照片真实的场景。
期望是照片真实的一大部分
在你探究你的场景创建者的个性同时考虑一下观看者的期望也很重要。对于每一件事每一个人我们都有我们的世俗观念。但世俗观念并非总是吹捧,它们可以提供最佳方针以供你创建你的场景。世俗观念并不能限制你的创造力,相反它们提供了你作为照片真实中必需认识的问题指南。例如,我们认为智能角色是整洁的,低智能的生物则是邋遢的,这可能在某些情况下并不对。但是我们创建一个由智能角色建造的场景时仍旧把目标放在整洁上,并期望以此获得观看者的认同。另一例子就是智能角色的外观。你如何创建一个科学家?好莱坞已经为我们定下了标准:我们都相信一个科学家必然皱皮、乏味的家伙,他带着眼镜穿着带护袋的外套。我们同时也程序化地相信一个肌肉发达的大块头既笨又脏。如果你期望场景的可信度那么你就不能逃脱世俗观念。否则的话即使你的图象完全真实,在观看者的脑海中总有一些疑问,因为他们有着自己的期望。经历了数百万年的进化斗争,我们每一个人都变得相似而同一――即使是3D艺术家。
让我们看看能不能从工作台的场景中提取出Papagaio的个性。看一下图1,马上你就会看到他整洁的一面,因为墙上整齐细致地摆放着工具。这告诉我们他注重他的工具和工作空间。你可以看到工具上时间留下的痕迹,但它们仍然完好。工作台表面很脏但没有很多例如油漆痕迹或是凿痕的破坏迹象。就是电线也整齐盘绕。这些都是他的个性的潜在表达。我们可以假定Papagio是一个相当智慧的人,他创造了能够感知思考的人工生命形式。所以,以世俗的观点来看,他是一个整洁的人。但因为他是一个发明家,当他工作时他的工作空间是杂乱的,但完成工作后他会马上清理。我们还可以假设他作为一名发明家,一定会有参考书堆放在工作台上,这说明了图象中书的由来。
你现在可以看到这个场景是如何基于Papagaio的个性来增加可信度的。在头脑中始终记住角色对于环境的影响是很重要的一点,同时这也很有趣。 观看者的期望进入观看者的头脑中去了解他们对于图象的期望也很重要。我们对于特定的场景和环境有着特定的期望。例如:我们希望一个工业工厂是灰暗和肮脏的;一个电影院满是爆米花和空杯子;太空船满是油腻;怪物是丑陋的和长着大牙;恐龙是泥土色的。
我们已用我们的经验对自然作出假设。媒体在定义我们的期望中扮演了一个主要角色。你上一次在媒体上看到一个一尘不染的工厂是几时?可能从来没有,但事实上很多的工厂是极为干净的。然而当我向你展示一幅一尘不染的工厂图象时,你会说这不象真的,因为一点儿也不脏。一个工厂怎么能毫不杂乱地运行呢?我们不能接受,因为媒体教我们这样的工厂是不存在的。
这里是我们自己建立的期望的又一个良好典型:如果我展示一幅色彩亮丽的恐龙图象,你会说这是人造的,尽管事实是恐龙确实绚丽多彩。因为它们的个头和皮肤材质,我们乐于将其同今天的巨兽――象比较。但这些是厚皮类动物――厚皮类没有彩色皮肤。但这种皮肤对于恐龙是毫无意义的,因为恐龙是类爬虫类,而爬虫类的色彩是很鲜艳的,特别是雄性。它们被媒体染上了潜在的色彩,因为我们并不期望它们是彩色的。这里提出了一个要点:你必需接受人们的期望,尽管这有可能是被误导的。
原则3:可信度
是什么使得3D场景可信?可能最重要的一个方面就是认同感。场景中的物体和表面必需是可被认同的,进而成为可信的。它们必需对于观看者时熟悉的。否则它们就没有决定场景照片真实的基础。
有两种可信度:模型和表面。你不必同时具有这两样来使得物体真实。例如:一艘未来太空船并非现实物体,但仍有我们期望的表面,这样物体就变得可信,反之亦然。如果你有一个照片真实的电脑屏幕模型,但涂着迷幻般的色彩,它看起来仍旧可信,因为这是一件我们熟悉的物品。
另一个可信表面的例子就是我们前面已有所提及的恐龙。一个彩色的恐龙不会是令人信服的,即使它有着完全符合生理学的模型,因为我们仅仅不接受色彩。另一方面,一个带有物理设计上小缺陷却是泥土色调的恐龙仍旧令人信服。在极少的情况下我们才会对恐龙的物理结构有所注意。暴龙就是一个我们所期待的恐龙物理结构的最佳典型。媒体已经告诉我们暴龙有着小小的前臂,任何对这种结构的偏离将会导致可信度的下降。我们不会卖一个有着大前臂的暴龙的帐,即使表面极为可信。
让我们看看图1,是什么使得图象可信?其实有很多东西。首先也是最重要的就是场景全部由真实世界的物体构成。大部分物体对于我们来说都是可认知的,特别是工具。它们为可信度垒起了坚实的基础。那本书也是可信度的一大要素,因为它很容易被接受为现实世界的物体。所有这些都为场景增加了可信度,特别是电池。看一下图2,它们是最能够被认同的物体(劲量电池)。象这种有助于场景全局的物体,也就是关键照片真实物体我们称之为物体锚定点。
让观看者认同你的图象为照片真实的最佳方法就是使用物体锚定点。一个物体锚定点就是一个有着无可置疑的照片真实属性的可认知物体。通常是一些简单的物品,有着真实世界的材质。它可以简单到使用扫描图象材质的盒子或是一本有着常见封面的书。 还有,一定要严格区分可认知照片真实物体和看上去真实物体。例如,一把椅子就不是一个物体锚定点,因为它不能被马上认知。我们知道这是一把椅子,但我们可能从来没有看见过场景中的这把特定的椅子。在它真实的同时,却不是可认知的真实。类似家具的物体不是好的物体锚定点,因为它们的风格多变。一个有效的物体锚定点必需给人细节上的熟悉感觉。它必需是我们日常生活中常见的物品。食品盒就是一个极佳的物体锚定点,特别当材质是从一个真实的盒子上扫描下来的时候。谁没有看见过一个麦片盒子?(在中国或许得换成方便面盒子)这个麦片盒子构筑了一个坚固的物体锚定点。
图2 劲量电池,很熟悉吧
将物体锚定点的材质定位于观看者期待的范围内的做法也是很重要的。这意味着物体的外貌不能太离谱,否则就失去了照片真实感。以麦片盒为例,生产商的名字在盒子顶上,其下是产品名,再往下是一幅麦片的图片。在边上是营养表,另一边是保质期、生产批号,底下则是食用方法。如果你大幅改动这些设计就会严重影响到物体的可信度。
另一个上佳的物体锚定点就是电池。所有的电池基本上都形状相同。因为它们是都是常见的物品,所以对观看者来说材质的设计就有着较大的弹性。图1就使用了很好地使用了电池来建立可信度。
仔细观察一下图2中的电池。物体的材质同现实物体匹配的如此之好,以至于你根本不能找出两者之间的区别。在图象中加入这样的一个物体能够起到一个增强观看者真实感的杠杆作用。局部的真实感会扩展到整体图象的真实感。这对于照片真实的场景大有益处,所以物体锚定点是每一个照片真实场景的关键部分。
虽然物体锚定点对于图象的可信度至关重要,但是它不一定就是场景的主焦点。图1中的电池只是一个很小的元素。而Gizmo机器人才是场景的主焦点。电池只是用来锚地图象的照片真实和为幻想机器人增加可信度。事实上图象中有着数个锚定点。书、相机盒子都是相当强的物体锚定点。书和物品的包装都是我们熟悉的东西,是用来充当锚定点的理想物体。这就牵涉到了可信度的另一个方面:物体熟悉度。
使用熟悉的物品使得幻想物体照片真实
熟悉物品在场景的照片真实中扮演着极为重要的角色。熟悉物体同锚定点有一点差异。锚定点是用来充当场景照片真实的基石,而熟悉物体则是使得幻想物体变得真实。举个例子,为了使一辆未来的飞行车看上去真实,我们为它加上熟悉的部件:车头灯、运转灯、方向灯、防撞栏、刮雨器和后视镜等等。这些都是用来增加可信度的熟悉物体。Gizmo也是一个集成了熟悉物体的幻想物体理想典型。
看一下图3,虽然Gizmo不是一个真实世界物体,它是由我们很熟悉的真实世界的零件组成。你可以马上认出它的右臂是瑞士军刀,还有它背上的喇叭也是相当熟悉的。如果你仔细观察就会发现它的足是电话听筒喇叭。当然,它的身体是一个油罐――罐子上写着呢。虽然Gizmo完全是相像的产物,但所有的这些现实物体使得它可信。
当你在构建你的幻想物体时,应该花一番心思考虑如何加入熟悉物体到你的物体中。总有这种情况:你的幻想物体太过复杂或是处于极为古老的环境,这时你应该把注意力集中在可信的表面上。
原则4:表面材质
所有真实世界的物体都有表面材质。在这里我们不要把这个“材质”同那个在3D领域那广泛使用的术语“材质”相混淆。材质并不是意味着物体的色调,而是我们所能感受到的表面属性。所有的物体包括平滑的物体都有一定形式的表面材质。
对于3D物体的表面材质来说一个常见的问题就是它们总是太为平滑。我们常常能够看到抛光的木质表面如同镜子般的平滑,这是不真实的。清漆会随着木质表面的纹理而产生相应的变化,所以涂有清漆的表面都会有一定的变化。想要获得完全平滑的清漆表面的唯一方法就是在木质表面涂上数层漆,然后打光最后一层。我们并不使用这种方法,除非为了一张木桌子你愿意抵押你的房子。
图3 由零件装配起来的Gizmo
可以假设这种木头是人造三夹板,但没有人愿意在他的场景中使用人造木头。你可以尝试不断地抛光木头,但这样效果并不好。木头有着天然的纹理,为了彻底去除表面材质,你必需抛光所有的木头,但这并非一个好的解决方法。记住:当你不能感觉到一种材质时并不意味着它就不存在。可能这种材质太为细微而不能感觉到,但是它肯定会在物体的镜面反射中表现出来,特别是动画物体。
另一个抛光木质表面的特性就是由清漆本身造成的微小凹凸。当清漆干燥时,在表面下有许多的微小气泡。你从任何距离都看不见这些气泡,但是如果你计划在一个清漆表面的桌子上对一个物体取近景的话,你必需加入清漆凹凸。再说一遍:你不会看到凹凸,但你会看到其对木头的镜面反射和反射率造成的视觉影响。
看一下图1,我们可以看到靠墙的扳手表面上有着一些轻微的凹凸贴图。工具主要是由铬合金制成。通常铬合金在常用表面上会变得粗糙一些。还有很多的铬合金的表面被赋予了一种不同的凹凸材质,这种材质常常用于在照片真实图象内出现的工具上。在灯颈上还有一个非常微小的凹凸贴图,这个材质在静帧内确实不明显,但当灯颈动画运动时就相当的显眼。它同时影响了镜面反射和反射率。当然在木头上也有微小的材质存在,你必需仔细看,在木头大纹理之间有一些细线,这就是我们所说的感觉不到但近看看得到的细微材质。这些材质在较远的取景内并非必需,但在近景就是重要的组成部分。
我知道我以上引为例子的木头并非唯一需要凹凸贴图的材质。事实上,你必需为你场景内所有的照片真实物体加上凹凸贴图。特别是象塑料、橡胶、金属、织物甚至纸张等表面。看看你桌子上的任何多媒体部件,你可以注意到塑料在表面有着一些轻微的粗糙。如果你不把这种材质集成到该物体的3D上色版本内的话,它就看上去不真实。即使平滑的塑料物体也有一些微小的表面扭曲,并且会影响到它们的镜面反射。镜面反射是表面真实的一个关键原素,同时它也是我们的第五个原则
原则5:镜面反射(Specularity)
简单地讲,镜面反射是光源在物体表面上的反射,这是人眼用来区别表面亮度和硬度的主要依据。镜面反射是3D照片真实的一个重要方面。我们必需使用镜面反射来摹仿真实世界的表面属性。没有镜面反射,物体就会看上去呆板、柔软和平整。可能这对于衣物相当适用,但在塑料和金属就行不通。镜面反射和表面材质共同协作来模拟真实世界的材质。举个例子:塑料有一个粗糙表面,当我们应用了镜面反射,它在凹凸贴图上加上了镜面高光,这意味着两件事:一是赋予表面凹凸以3D感觉,二是提供你物体硬度的视觉参考。
让我们以图1为例,注意在灯颈的每一个节段上的边缘都有着一个柔和的白色亮点。这种柔和的镜面高光在照片真实的物体上十分的常见。灯颈由镀铬铝制成,同所有的金属一样,它有一个较低的镜面反射水平。柔和的镜面高光有助于人眼将物体确认为金属。
在灯颈看到一个月牙钳的头部。你可以看到在其圆形部件的边缘有一些很微小的镜面高光。这个扳手有着比灯颈更为低的镜面反射水平,因为它们的金属材质不同。扳手由铬合金制成,镜面水平较低并且表面较为粗糙。较低的镜面水平将高光沿着物体表面沿展开,并同时被粗糙的表面柔化。
看看灯颈左侧的扳手它也是由铬合金制成,所以镜面高光沿着表面展开。整个扳手的头部都被柔和高光覆盖,因为这是一个同光源平行的平整表面。这就是一个表面材质用来维护物体表面属性的实例。没有表面材质,表面将会被高光完全覆盖,掩盖了表面属性。高光被表面材质打破,使得物体表面的完整性予以保留。
当镜面反射对于模拟许多真实世界表面极为重要时,有可能会出现我们不希望物体的某个部分出现高光。例如:金属的腐蚀部分。腐蚀金属表面通常没有镜面高光。但是你还是得使金属除腐蚀区域外的其它部分出现镜面高光。我们可以使用镜面反射贴图(Specularity Map,一种用来决定镜面反射水平的α通道贴图――云之君)达到目的。但是有时腐蚀部分仍会由于潮湿或是水迹而出现高光。所以合理地使用镜面反射对环境认同有着重要的作用。前面我们提到了腐蚀,那么现在让我们看看原则6:
原则6:污垢、灰尘和锈迹
污垢、灰尘和锈迹是物体表面一个很重要的方面,用通常的词汇来讲就是“老化”。现实中很少有完全清洁的表面,看看你的周围,几乎所有的物体都覆盖着灰尘。如果家里有个小孩的话,那么墙壁上就会有手印,地毯上会有污迹。我敢打赌在你桌面上的玻璃肯定有划痕,在墙角有蜘蛛网。如果你有黄铜、铜或银制品,那么它们很可能已经失去了光泽。我从来没有看到过一个屏幕上没有一层灰尘的电视机,显象管的静电是灰尘的最爱。在电视机开着的时候你看不见,但是关了的时候就很明显。
这并不是我们懒惰不打扫我们的屋子,这只是现实世界生活的一个方面。灰尘到处都有,我们无法逃脱,除非我们住在一个塑料泡泡内。可是每一个3D场景看起来都像清洁先生光顾后的一瞬间的精确捕捉。清洁无污的场景并不自然,它可能看起来很棒,但却不真实。所以给你的场景加上老化(Aging,一般指物体经使用后留下的痕迹,包括自然和人为的――云之君)是十分重要的。老化的程度取决于场景的背景情况。如果你是创建一个工厂的场景,那么场景内的每一个物体都要蒙上一层灰尘;如果是医院手术室,那么你可以通过建造一个无污的场景来达到目的。你考虑物体表面时必需把环境包括进去。
让我们再看看图1中的工作台,并且注意一下在哪里加上了老化。还记得我们讨论过的Papagaio的个性吗?他是一个聪明的发明家,这使得他有一种带有杂乱倾向的整洁。他的个性在场景表面上体现出来。注意工作台上覆盖着烧灼的痕迹和污迹。即使清洁有如Papagaio,完全不弄脏工作台仍是不可能的事。注意:工作台上并没有较大的污点,只是一些小的痕迹,这是Papagaio个性的反映。
看一下图5,这是Gizmo油罐身体的近景,你会注意到罐子的顶部覆盖着灰尘和铁锈。这是场景中一个十分重要的元素。这说明了场景中的其它部分上灰尘的来历。我们假设Papagaio专注于Gizmo的工作有一段时间了,所以灰尘和铁锈被他的手一点点摩擦下来。而这些东西可能会转移到他所用的工具上。看一下图1就会发现一些蛛丝马迹。有没有看到在电烙铁的把手上有Papagaio手的摩擦后留下的痕迹?在那里我们可以看到他留下的铁锈和灰尘的痕迹。
让我们再探索一下场景,看看能否再发现Papagaio的脏手留下的痕迹。看一下图6,这是他的参考书的近景。注意封面上的污痕,这是老化的一个信号,同时也是场景可信度的一个组成部分。一本不染一尘的书放在脏乱的工作台上将会有如鸡群中的鹤一般醒目。
记住Papagaio是用手传播灰尘的,所以场景中有另一个物体需要特殊的老化处理。看一下图7,这是照相机盒子的近景。因为盒子是开着的,所以我们必需假设Papagaio使用过它。所以它必需有脏脏的指印。如果你仔细看,将会在盒子的右侧的打开处有一对指印,在他打开盒子时握着的另一边也有一对指印。这些只是小小的细节,但是它们为照片真实增加了巨大的份量。正是这种细节上的分外注重使得场景照片般的真实。仔细观察图1,你会在所有的工具上发现Papagaio的脏手印和灰尘。
正如你所看到的,老化是照片真实3D的一个关键部分。在你为你的场景增加老化时,先花一些时间考虑一下增加什么样的老化,它是从哪里来的,是怎样传播的。这可能看上去是一个大工作,但却十分有趣。你有多少可以搞乱而不收拾的机会?如果你象我,那可就机会不多啦。
原则7:裂痕和刮擦
一个无裂痕的表面能给人以人造物体的感觉。即使全新的物体也有一些微小的裂痕。计算机图形可以使我们轻而易举地创建完美的物体。而问题就在于现实是不完美的。给你的物体加上一些磨损和破缺是很重要的。我看过不计其数的3D木头桌子,但没有一张在其表面有凹陷。所有的木头物体,除非是新的,都有某种形式的裂痕。事实上即使新的木质物品仍有可能出现裂痕,因为搬运工为你搬运东西时并不是完全心甘情愿的。
在你为物体加上裂痕之前你必需研究一下场景的本质,在决定何时加入裂纹时要首考虑下列问题:
1. 物体的材质是怎样的?这是最为重要的问题。物体的材质对裂纹的类型有着极大的影响。木头是最可能出现裂纹的材质。塑料和纸通常有着小小的凹陷。金属常常有着小的裂痕。硬质金属,例如钢,还会有散开的裂纹,而软的金属,如铝、铜和黄铜,则有着轻微的凹陷。那些有着凹陷的物体常常接受锤击。在工业主题的场景内我们常常可以看到收锤击而出现凹陷的金属。另一个主要的材质类型就是织物。织物通常有着撕裂的口子,还会有多节的线头。在你使用这些类型的材质之前花些时间考虑一下这些因素。
2. 物体是怎样被使用的?大部分物体在同一部位被拿取,所以我们必需决定物体使用的频度以精确应用裂痕。像生活用品、工具、体育设备、娱乐物品和衣物是经常被拿取的物品。这些物品可能有裂痕。我看过很多穿牛仔裤的3D角色,但是我却没有看到过在膝盖上有磨损的区域。如果是经常使用的物品就一定会有裂痕,即使是微小的。在你为物体决定表面之前请花一些时间在物体的使用情况上。
图5 Gizmo的身体
图7 照相机盒子上的脏手印
3. 谁使用物品?这是一个3D艺术家们很少考虑的问题。其实将物体的使用者的性格考虑进去是很重要的。如果这个人是一个机车修理工的话,那么工具可能有很多的裂痕。它们在车库内被扔掷、敲打和猛击。如果是外科医生的设备,那么它们就很少会有裂痕。如果是小孩子的玩具,那么凹陷就必不可少。在你为物体加上老化之前考虑一下使用角色的性格。
4. 物体的位置在哪里?物体的放置位置决定了裂纹的数量和表面老化。例如:如果你把物品束之高阁,那么它可能少有裂纹。如果触手可及,那么就会有轻微的裂纹,如果小孩子拿得到的话,那么做好最坏的打算吧。这些是明显的例子,让我们再来看看一些不明显的例子:假设你把你的车停在一个有立柱支撑的车棚,当你倒车时是不是会经常刮擦到立柱?好,你是一个优秀的驾驶员,那么那些在停车场刮花你的车门的家伙呢?明白了没有?在你考虑老化的时候必需要有创造性,这样你的场景才会变得真实。
现在让我们看一下图5中的瑞士军刀。我们知道Gizmo是Papagaio用废弃物品拼装而成,我们假设这把刀是Papagaio在街边的小摊上买来的。它可能是从某人的口袋中掉出来的。这就给了我们启示:大部分的损坏是因为它作为遗失物而来的。我们也知道塑料很容易出现凹陷。还有一个问题是是谁使用这把刀的?我们可以认为在它出现在Papagaio的面前之前肯定已经被小摊的主人使用过一段时间,这也可以使得刀上出现更多的裂痕。看看图中的刀是不是伤痕累累?
正如大家所看到的,考虑物体的老化是颇费周折的,但对于最终的照片真实图象是完全值得的。还有,记住不要过分的增加物体的老化,这样反而破坏真实感。好了到目前为止我们了解所有关于陈列和表面的原则,下面让我们看一下建模的原则。
原则8:斜角边缘
几乎所有3D物体都易于丢失的特性的是什么?斜角边缘!在3D模型中很少看到斜角边缘,而现实世界的物体几乎都有斜角边缘。在现实世界中为了安全起见各种锐利的边缘都被削去了,在3D世界中使用斜角边缘则有两个原因:一是为了完美的摹仿真实世界,二是出于镜面反射的原因。正如我们前面讨论的一样,镜面反射是光源在物体表面反射的结果。这就意味着在斜角边缘就会有微小的高光,这些高光在物体动画运动时特别的显眼。我们习惯于在现实世界中在斜角边缘看到高光,没有了这个要素,3D物体看起来就像是人造的。
看看图4。你会看到几个螺帽,这是斜角边缘的简单而有效的运用。在其外边缘可以看到斜角,注意观察靠近光源的斜角边缘上的高光。这些是明显的高光,再让我们看看不明显的斜角边缘。看一下刻刀刀刃,在边缘可以看到一条很细的高光线。甚至在把手也可以看到。这使得刻刀看上去精确而真实。
很多的斜角边缘都是相当的细微,但我们决不能忽视它们。因为一旦出现反常的高光,我们的视线就马上会被吸引住,因而破坏整体效果。斜角边缘是很重要的,但是并非对于所有的物体都是必需的。一般来讲工业产品特别是金属、塑料和木头材质的产品适用斜角边缘。现在我们要探讨一下物体材质深度。
原则9:物体材质深度
对于大部分3D物体的抱怨是缺乏材质深度。我们不是指缺乏Z轴上的深度(第三维的深度,此Z同Z―Buffer中的Z同意――译者)。我是指物体的物理材质深度。我见过无数材质如同纸一般单薄的3D物体。这个物体主要见于3D角色的衣物,这些衣物像纸一样悬挂在角色身上。所有的物体的材质都有深度。很少有物体的材质如同一个单一的多边形一样薄,当然纸例外。
图4 细微的斜角也是相当重要的
看一下图7。这时一个物体材质深度的典型例子。注意照相机盒子标签有厚度。仔细观察你还可以发现盒子的材质并非占完全主导,这使得我们还可以看到纸板的材质。这对于照片真实的一个盒子来说至关重要,你既要使人看得到盒子上的图案,也要使人看得出纸板的材质――真实世界的盒子图案是印刷在纸板上的,而不是做成纸板的一部分。如果你忘记了材质的深度关系,它就会看起来象假的。
看看盒子的另一边,你可以看到盒子的折叠边缘。我们看到太多的3D盒子仅仅是使用扫描图象加上一个立方体。这显然看起来不真实,使盒子失去了照片可信度。对于3D的工业产品来说,它们需要材质深度和生产的痕迹来使人信服。同样斜角边缘也用于现实高光。一个锐利边缘的立方体完全不真实。
总之材质深度对模型的真实度有着深刻的影响。加上材质深度相对简单,但必需事先考虑。好了,现在让我们在来看看最后一个原则:射线追踪
原则10:散射率
射线追踪是本文十个原则中最为重要的一个,它被置于文末是因为当前的3D程序少有渲染散射灯光的能力。什么是散射率?散射率被定义为单位时间内离开单位表面的光线数量。不要管那么多的佶屈聱牙的科学定义,简单地说就是分布于物体之间的间接灯光,大部分的真实物体都反射灯光。(作者所指的概念类同于我们熟悉的射线追踪,我再解释一下:当光射入物体表面时,一部分被吸收,一部分则被反射。如果物体的表面是相当平整的,例如镜子,那么大部分的反射光线会沿同一方向反射,这就是镜面反射;如果表面粗糙,例如绝大部分的物体,反射光线就会朝各个方向反射开来,即所谓的漫反射。现实世界的绝大部分物体都是受到漫反射而照亮的。由于反射光线被反射后在新的表面又会发生反射,所以3D计算时是从光源开始追踪每一条光线的行径,故称射线追踪。射线追踪计算量极大,当前的3D软件能够进行严格意义上的射线追踪计算的很少。)
你可能会惊讶屋子中的大部分物体都是由间接光源照亮的,并非直接光源。设想一下在一间无窗的屋子中放置一张桌子,桌子上方悬挂一个吊灯,那么我们能不能看到桌子的腿呢?能!因为光线被桌子反射到屋顶,再由屋顶到墙,到地板,最后照亮桌子的腿。这就是散射现象。现在在3D软件中建立一个同样的场景,看看能不能看到桌子的腿?很不幸,不能!场景中的物体不反射灯光。这就是为什么散射率对于照片真实的场景极为重要。
现在你知道了散射率的概念和其重要性。但很不幸的是3D场景总是缺乏反射光源。这同艺术家们无关,这是3D软件的限制。散射率是最为复杂的光源方程,这里还有你的耐心和上色时间的问题。所幸的是现在很多的3D程序提出了散射率解决方案,但在真正的散射上色被应用之前我们能干什么呢?模拟效果啦!
好了,照片真实的十大原则都齐了。接下来就是你自己的事了。Wish you enjoy it!
感谢wlong3d的蓝野提供!
以上是制作照片级CG图象的要点,另外补充一点就是:对于光线的运用一定要好。光线运用好了,有序的CG也可以达到照片级效果。我目前正在和网上的朋友合作完成这样的课题,使用MAX的扫描线模拟一个车站里的全局照明和光能传递制作出照片级显示效果。一方面可以让大家知道模拟光能传递和全局照明在实际场景中的运用(看见有些朋友使用上百盏灯完成一个封闭空间内两个小球的光能传递,这样实在是没有实际意义),一方面让大家了解运用贴图的重要性
maya材质参数
maya材质参数
物质的一些物理特性:
金属 颜色RGB 色彩亮度 光亮度 慢射 镜面 光泽度 反射 BMP(分形噪声)单位:英寸 凹凸%
铝箔 180,180,180 有 0 32 90 中 65 .0002,.00002,.0002 8
铝箔(钝) 180,180,180 有 0 50 45 低 35 .0002,.00002,.0002 15
铝 220,223,227 有 0 35 25 低 40 .0002,.00002,.0002 15
磨亮的铝 220,223,227 有 0 35 65 中 50 .0002,.00002,.0002 12
黄铜 191,173,111 有 0 40 40 中 40 .0002,.00002,.0002 20
磨亮的黄铜 191,173,111 有 0 40 65 中 50 .0002,.00002,.0002 10
镀铬合金 150,150,150 无 0 40 40 低 25 .0002,.00002,.0002 35
镀铬合金2 220,230,240 有 0 25 30 低 50 .0002,.00002,.0002 20
镀铬铝 220,230,240 有 0 15 60 中 65 .0002,.00002,.0002 15
镀铬塑料 220,230,240 有 0 15 60 低 50 .0002,.00002,.0002 15
镀铬钢
220,230,240 有 0 15 60 中 70 .0002,.00002,.0002 5
纯铬 220,230,240 有 0 15 60 低 85 .0002,.00002,.0002 5
铜 186,110,64 有 0 45 50 中 40 .0002,.00002,.0002 10
18K金 234,199,135 有 0 45 50 中 65 .0002,.00002,.0002 10
24K金 218,178,115 有 0 35 50 中 65 .0002,.00002,.0002 10
未精练的金 255,180,66 有 0 35 50 中 45 .0002,.00002,.0002 25
黄金 242,192,86 有 0 45 50 中 65 .0002,.00002,.0002 10
石墨 87,33,77 无 0 42 90 中 15 .0001,.0001,.0001 10
铁 118,119,120 有 0 35 50 低 25 .0002,.00002,.0002 20
铅锡锑合金 250,250,250 有 0 30 40 低 15 .0002,.00002,.0002 10
银 233,233,216 有 0 15 90 中 45 .0002,.00002,.0002 15
钠 250,250,250 有 0 50 90 低 25 .0002,.00002,.0002 10
废白铁罐 229,223,206 有 0 30 40 低 45 .0002,.00002,.0002 30
不锈钢 128,128,126 有 0 40 50 中 35 .0002,.00002,.0002 20
磨亮的不锈钢 220,220,220 有 0 35 50 低 25 .0002,.00002,.0002 35
锡 220,223,227 有 0 50 90 低 35 .0001,.0001,.0001 20
透明材质的折射率
材质 折射率
真空 10000
空气 10003
液态二氧化碳 12000
冰 13090
水 13333
丙酮 13600
乙醇 13600
糖溶液(30%) 13800
酒精 13900
萤石 14340
融化的石英 14600
Calspar2 14860
糖溶液(80%) 14900
玻璃 15000
玻璃,锌冠 15170
玻璃,冠 15200
氯化钠 15300
氯化钠(食盐)1 15440
聚苯乙烯 15500
石英2 15530
绿宝石 15700
轻火石玻璃 15750
青金石,杂青金石 16100
黄玉 16100
二硫化碳 16300
石英1 16440
氯化钠(食盐)2 16440
重火石玻璃 16500
Calspar2 16600
二碘甲烷 17400
红宝石 17700
蓝宝石 17700
超重火石玻璃 18900
水晶 20000
钻石 24170
氧化铬
27050
非晶质硒 22920
碘晶体 33400
以K为单位的光色度对照表
光源 K
烛焰 1500
家用白灯
2500-3000
60瓦的充气钨丝灯 2800
100瓦的钨丝灯 2950
1000瓦的钨丝灯 3000
500瓦的投影灯 2865
500瓦钨丝灯 3175
3200K的泛光灯 3200
琥珀闪光信号灯 3200
R32反射镜泛光灯 3200
锆制的浓弧光灯 3200
1号,2号,4号泛光灯,反射镜泛光灯 3400
暖色的白荧光灯 3500
切碎箔片,清晰闪光灯信号 3800
冷色的白荧光灯 4500
白昼的泛光灯 4800
白焰碳弧灯
5000
M2B闪光信号灯 5100
正午的日光 5400
高强度的太阳弧光灯 5550
夏季的直射太阳光 5800
早上10点到下午3点的直射太阳光 6000
蓝闪光信号灯 6000
白昼的荧光灯 6500
正午晴空的太阳光 6500
阴天的光线 6800-7000
高速电子闪光管 7000
来自灰蒙天空的光线 7500-8400
来自晴空蓝天的光线 10000-20000
在水域上空的晴朗蓝天 20000-27000