纹理贴图原理与3dMax贴图技法 您所在的位置:网站首页 3dmax案例步骤 纹理贴图原理与3dMax贴图技法

纹理贴图原理与3dMax贴图技法

2024-04-21 15:19| 来源: 网络整理| 查看: 265

前序

这篇文章我将总结一下从《Real Time Rending》中学习到的纹理贴图原理,以及3dMax中关于模型UV展开,以及BitMap贴图参数调整的技法

文章主要分为Part1的理论篇Part2的软件实技篇,结合我自己的一些认识思考和重解释,将理论和应用联系起来,希望能对这方面的知识有一个系统的总结

如果你是做3D建模方面的,那么希望本文能够帮助你更加清楚在UV展开和贴图调整时你究竟在干什么,对于物体渲染你所做的贡献究竟是什么

如果你是做程序方面的,那么希望本文能够让你认识到就纹理贴图技术,模型师为你做了什么,以及在程序运行时你还需要做什么或者还可以控制什么

如果你想要了解3dMax的UV展开和贴图调整,那么希望Part2能帮到你

当然也希望我真的能总结的那么好吧...

欢迎各路神仙留言指正或是赐教一些我不知道的点

鄙人先谢为敬

Part1 --- 纹理贴图原理 (理论篇)1.1 纹理表现与纹理贴图---1.1.1 什么是纹理、纹理表现、纹理贴图

什么是所谓的纹理表现?对纹理表现狭义的理解是“把一张图片按一定方式贴在物体表面进行渲染”

而引用我建模老师的一句话“纹理表现就是物体的表面的某一属性表现出了各向异性”,即改变的不一定是漫反射的颜色,也可以是法线(产生凹凸效果)、高光、不透明度...等等其他属性

以图片像素灰度作为沿法线的位移量,影响着色计算,从而产生的凹凸效果

在《Real Time Rending》中,对纹理贴图的定义是“使用图像、函数或其他数据源来改变物体外观的技术

---1.1.2 为什么要使用纹理贴图技术

如果你了解渲染管线的流程,你就会知道如果没有纹理贴图技术,那么每个像素/片段的颜色,只能由顶点的颜色插值进行插值得到

然而实际情况是物体的顶点有限,然而形成的表面却占据了屏幕上很大一部分像素,如果像素颜色只能由顶点进行插值得到,那么...

然而我们却希望这样的一块表面上出现我们想要的图案,或者说漫反射颜色表现出各向异性

使用纹理贴图技术的目的就是在顶点有限的情况下,让物体的表面表现出无限的可能---1.1.3 纹理贴图技术概述

纹理贴图技术的几大要点是数据源、映射方法、应用方法

纹理贴图的核心思路就是通过建立一定的映射方法,将片段所对应的物体表面的某一属性和数据源的某一位置的数据对应起来,再通过一定的应用方法,利用从数据源中获取的数据来改变物体表面的某一属性值,从而影响当前片段或是其他片段的着色计算,以及对合并输出阶段的结果产生影响,使物体表面外观发生一定的变化

1.2 渲染管线对纹理贴图技术实现的方法(使用图片纹理、UV坐标)

图片纹理是下文中数据源的一种,而UV坐标是下文中描述图片纹理的纹理空间的一种方式

由于图片纹理经常作为数据源进行使用,因此规定了UV坐标作为模型的顶点信息的一部分,这也导致了需要由模型师进行UV展开来进行顶点UV坐标的分配

---1.2.1 渲染管线中纹理渲染的大致流程

首先通过一定的映射方法,为顶点分配UV坐标将UV坐标信息作为顶点信息的一部分

像素/片段元着色阶段,可通过对顶点中储存的UV坐标进行插值运算,得到当前片段对应的物体表面上的UV坐标

再利用得到的UV坐标访问/索引贴图纹理,从而得到对应的数据

根据不同标记的贴图使用不同的应用方法,将数据通过一定的方程函数进行处理,最终改变片段所对应的物体表面的原有的某个特定的属性的值

之后再照常进行像素/片段的着色计算,以及之后的融合/合并输出阶段

由于预先改变了物体表面的漫反射、法线、透明度等等属性从而对物体的表面外观产生了影响

例如改变了漫反射颜色,影响了片段元的颜色值,改变法线值影响了着色计算从而利用光照效果产生了凹凸,改变了透明度,从而对Alpha测试的结果产生了影响

---1.2.2 程序运行前和运行时的工作

从纹理渲染的流程我们就可以看出,由于UV坐标是作为顶点信息的一部分,或者说作为了资源信息的一部分

因而在程序运行之前,我们就需要确定顶点中储存的UV坐标

而在程序运行时,通过插值计算得到物体表面具体某一点的UV坐标,再进行之后的数据源访问和数据应用

这里程序运行前,确定顶点中UV坐标,就需要通过一定的映射方法并进行一定的调整,也就是本文 Part2 3dMax中UV展开所进行的工作,也就是应由建模者完成的工作

而程序运行时,主要的工作是对接不同的数据源和不同的属性,并在像素/片段元着色阶段,使用不同的应用方法改变物体表面的属性值(下文值变换函数的概念)

---1.2.3 UV坐标

由于纹理贴图中主要的数据源是图片,而图片可以被看作是一个储存了大量数据的数组,每个像素的颜色(RGB)值作为数据,根据像素位置组成了一个二维数组

UV坐标就是为索引图片的像素数据所建立的一种二维坐标

从图片正面左下角开始建立一个二维坐标系,横向为U,纵向为V

并且由于图片有不同的大小,为了统一不同图片的UV坐标信息,一张图片的UV坐标,UV的取值仅在0到1之间,即(0,0)对应图片的左下角,而(1,1)对应图片的右上角

有时候我们希望图片能够在二维中进行旋转,从而达到上下翻转或是动画的效果,因此我们在UV坐标的基础上还加入了一个W坐标,垂直于图片所在的二维平面

UV坐标就是下文中描述纹理空间的一种方法

1.3 纹理管线及相关概念

纹理管线是描述实现纹理贴图技术的全部流程的一套模型(包括程序运行前的UV坐标确定以及渲染管线的工作)

---1.3.1 纹理管线的相关要素

这里我们展开一下之前提到的 数据源、映射方法、应用方法的概念到纹理管线中

------1.3.1.1 数据源

数据源主要有两种形式图片素材(图片贴图纹理)或是函数(程序贴图纹理/过程纹理),数据源作为纹理贴图的资源数据集,并通过一定的索引方式来得到对应的数据

这里图片素材需要模型师在建模时进行准备和绑定,图片贴图纹理就需要使用UV坐标进行索引

而函数则是让程序员(技术美术)建立出特定的方程,通过提供输入参数,得到对应的输出参数,这里建立函数作为数据源尽量也使用UV坐标作为输入参数,利用已有的UV坐标这套模型就不需要自行解决物体表面的输入参数分配问题,但自行新的建立表面的参数分配机制也不失为一种实现特殊效果的方式

---------1.3.1.1.1 不同数据源的转换与结合

我们可以把过程纹理转换为图片纹理,即素材准备时,通过遍历输入参数将输出参数合成为一张纹理(渲染到纹理),比如常见的噪波图,就是遍历噪波函数得到的纹理

我们也可以对图片纹理转换为函数的方式储存或者用一定量函数解析来替代图片纹理,即使用一定的图片压缩机制,从而降低图片纹理存储时的空间占用

我们也可以组合图片纹理和程序纹理生成新的纹理,比如下面提到的渐变贴图

就《Real Time Rending》中提到的,GPU正朝着更便宜的计算,更高昂的存储方向发展

更多的使用过程纹理,以及对图片纹理使用更优质的压缩机制应该会成为大势所趋

------1.3.1.2 映射方法

映射方法就是完成从物体顶点到数据源索引使用参数的转换过程

或者说根据物体的顶点坐标,以及数据源索引过程中使用的参数模型,通过一定的映射,为每个顶点分配不同的索引输入参数作为顶点信息的一部分

---------1.3.1.2.1 顶点的坐标空间

物体的顶点坐标可以位于不同的坐标空间中,最主要的是物体坐标世界坐标

如果顶点使用物体坐标,参与到映射方法中,那么物体移动旋转时,物体表面的贴图也会跟随物体一起移动旋转,或者说物体表面的纹理表现结果不会由于物体在世界坐标下的刚体变换而发生改变,纹理表现结果以物体本身为参照是固定的

顶点使用世界坐标,参与到映射方法中,物体表面的纹理表现,就像是从世界中投影下的一样,当物体在世界中进行移动旋转时,物体表面的纹理表现结果会因为顶点的世界坐标改变而发生变化

---------1.3.1.2.2 参数空间

我们使用投影方程完成从顶点坐标到参数空间坐标的转换

参数空间是我们对顶点坐标的一种重解释,或者说建立了一种新的坐标描述模型,参数空间决定了我们为顶点分配数据源索引输入参数(UV坐标)时所使用的逻辑

例如我们要进行平面投影,那么参数空间就是物体顶点沿一定法线被投影到某一平面上后的平面(x,y)坐标

而我们要进行柱面投影,那么参数空间就是顶点到柱底平面的高度h,顶点到柱面轴心的距离r,以及顶点与柱面轴心的垂直连线和柱面0度线沿柱面正延伸方向形成的夹角θ,所组成的(h,r,θ)坐标

对于立方体投影则是通过顶点相对投影立方体中心的(x,y,z)坐标中,由绝对值最大的一个坐标和其正负确定的使用立方体的那个表面的参数,以及另外两个坐标除绝对值最大的坐标再加1并除2映射到[0,1],得到的对应表面UV坐标

---------1.3.1.2.3 投影方程、初相位、单位参数空间大小、参数空间姿态

投影方程的作用就是将物体的顶点坐标转换到参数空间坐标

因此投影方程和参数空间是相互绑定的,建立了怎样的参数空间,就应使用怎样的投影方程

初相位这个概念则是投影方程在投影时,对于所有顶点坐标的运算结果的一个偏移量,或者说是参数空间对应的“标准虚拟体”的位置

不同的投影方程初相位会有不同的表现

比如使用平面投影,不同的初相位就是平面上确定原点的位置时的不同

使用柱面投影,初相位就是柱面在物体坐标下,轴心的位置确定,柱面底的高度确定,柱面的方位

使用立方体投影时,初相位就是物体坐标系下,立方体中心坐标

单位参数空间大小是不同参数空间,对于参数空间原点的一个“标准虚拟体”的大小,被投影到单位参数空间内的顶点,其UV值一定在[0,1]之间,而投影到单位参数空间外的顶点,其UV值则由其超出某一坐标的距离和标准虚拟体的大小产生的比例距离决定,且必定在[0,1]范围之外

不同的参数空间其“标准虚拟体”会是不同的形状,平面投影,标准虚拟体是一个长方形,柱面投影中是一个圆柱,立方体投影中是一个立方体

参数空间姿态,参数空间姿态指参数空间的“标准虚拟体”相对顶点坐标所在坐标系下的方位描述

经过3dMax的封装,模型师可以直接对标准虚拟体(图中黄线组成的圆柱体)进行调整,从而影响到初相位、单位参数空间大小,参数空间姿态

投影方程与参数空间相互绑定,决定了我们分配数据源索引输入参数的方式,而初相位,单位参数空间的大小和姿态则决定了在同种分配方式下,顶点最终分配到的参数结果

---------1.3.1.2.4 纹理空间

纹理空间就是我们管理数据源所建立的一种索引模式

纹理空间的坐标就是索引数据源数据使用到的输入参数

UV坐标是描述纹理空间的一种方式,而如果使用过程纹理,纹理空间就是那个过程函数,而纹理空间坐标就是过程函数使用的输入参数

立方体纹理(Cube Map)也是一种描述纹理空间的方式,立方体纹理是一种3D纹理,通过表面下标号和对应的表面UV值进行索引

纹理空间的描述要适应数据源的组成结构

---------1.3.1.2.5 映射函数、寻址模式

我们通过映射函数将参数空间的坐标变换到纹理空间中,从而完成对索引输入参数的分配

然而对于索引输入参数,有时会有一定的限制要求,在使用UV坐标时就要求UV坐标必须在[0,1]之间(使用过程纹理可能没有限制)

映射函数的一大作用就是根据索引输入参数的限制要求,将不符合限制要求的纹理空间坐标映射回符合要求的区间内,称之为寻址模式

在使用UV坐标描述纹理空间时,寻址模式主要有重复寻址、镜像寻址、夹取寻址、边框寻址,效果依次如下,就不展开赘述了

------1.3.1.3 应用方法

应用方法主要包括应用目标值变换函数两大要素

应用方法由技术美术编写的shader决定,

应用目标是对于不同的贴图类型,索引到的数据需要应用到不同的表面属性,因此对于贴图需要做好类型的管理,将其对应到正确的应用目标上

值变换函数通常是在像素/片段元着色阶段,根据数据源中索引到的数据,将数据应用到物体表面属性变换中

---1.3.2 纹理管线的工作流程

1.选定描述顶点坐标的坐标系,在需要渲染时获取顶点的对应坐标

2.建立特定的参数空间(索引输入参数分配方式),通过投影函数将顶点坐标投影到参数空间

3.通过映射函数参数空间的坐标映射到纹理空间中,对于不符合限制要求的纹理空间坐标按照一定的寻址模式映射至符合要求的范围

4.通过顶点的索引输入参数插值,得到像素/片段元对应的物体表面的索引输入参数,在数据源中利用索引参数索引到对应数据

5.通过值变换函数将数据应用到特定的表面属性参数变换

一般情况下(使用图片贴图纹理,UV坐标纹理空间描述)

模型师需要完成的工作是对应纹理管线中的1到3步骤

技术美术需要完成/可以控制的是纹理管线中的4到5步骤,并且主要在像素/片段元着色阶段完成

Part 1.5 纹理贴图技术工作分配

本着肯定要有隐藏章节的精神,这个章节我们来呈上启下的总结一下,就纹理贴图术,2D/3D美术和技术美术在不同情况下各自需要完成的部分工作

1.在使用图片贴图纹理和UV坐标描述纹理空间时

2D美术需要完成部分数据源的准备工作(主要是漫反射贴图准备),即图片纹理的准备工作并交付3D美术/模型师进行使用

3D美术需要完成部分数据源的准备工作(法线雕刻与法线贴图的导出),以及对接2D美术准备好的漫反射贴图,对模型进行UV展开,分配好顶点中的UV坐标信息(上文中1.3.1.2映射方法的对应工作)

一句话就是“将贴图贴对位置”

还有就是模型师一定要命名好材质及贴图!!!不要使用默认命名的材质和贴图进行导出以免在后期使用中出现重名的麻烦,贴图命名中一定要加入该贴图的类型说明(DiffuseMap、NormalMap)帮助技术美术进行贴图的管理

技术美术需要管理好获取到的贴图文件,以及编写特定的插值方法和值变换函数更好的应用贴图中的数据(上文1.3.1.3 应用方法的对应工作)

2.使用过程纹理时

首先是数据源的准备上,既可以由模型师使用建模软件提供的一些过程纹理并将其导出为图片纹理,也可以由技术美术建立函数在程序运行时运算或是运行前渲染到纹理

使用3dMax提供的噪波纹理

其次是纹理空间的描述,如果由技术美术建立函数,可以沿用图片纹理中的UV坐标作为函数的参数输入,技术美术也可以建立其他的纹理空间描述模式以达到特定的效果

如果沿用图片纹理中的UV坐标作为纹理空间描述,仍需要建模师进行UV展开,分配顶点的UV坐标信息。如果使用的过程纹理由技术美术建立函数实现,那么模型师一定要与技术美术及策划商定,模型表面的过程纹理的疏密关系,过程纹理的连续/断开位置

在调整UV时可以使用替代纹理对疏密关系,纹理连续/断开进行检查

使用棋盘格纹理,检查疏密关系,壶盖与壶身的纹理连续/断开效果Part2 --- 3dMax中的UV展开及贴图参数设置技法(实际应用篇)2.0 一些基础知识

---2.0.0 我们为什么要进行贴图调整

前文中已经提到了,由于UV坐标信息需要作为顶点信息的一部分,就像顶点的位置法线方向一样,作为资源信息储存在顶点中,因而UV坐标的调整需要由建模者来完成

其次是在进行纹理表现时,由于我们建立的物体本身顶点中并没有默认UV坐标,或是原有的UV坐标不满意,需要进行手动调整,使得图片纹理能够更好的适配在物体表面上

进行过UV展开调整后,表面纹理能够正确的适配总之我们是要“把图片贴对位置”“再调整一下图片本身”从而“更好的表现物体外观”

---2.0.1 在3dMax中引入贴图

按“M”打开材质编辑器,在漫反射,高光颜色的右侧我们可以看到这样的灰色按钮,当这个属性有贴图时按钮中会显示M而标准的贴图引入操作是在材质编辑器--贴图一栏点击右侧按钮,在这里我们可以看到当前材质能够使用纹理贴图技术的所有属性点击按钮后选择位图(BitMap)我们可以在本地寻找一张图片作为贴图,Max并不会复制贴图到工程中而是引用它的路径,因此我们应做好资源管理通过材质/贴图导航器可以更好的管理多维子材质和材质中的贴图记得点击在视口中显示明暗处理材质,否则我们只能在渲染时看到纹理表现2.1 UVW展开修改器

UVW展开修改器是我们进行UV展开是主要使用的修改器

UVW展开修改器主要作用于物体表面的多边形面,并为组成多边形面的顶点分配UV坐标,因此应针对已经被转换为可编辑多边形/可编辑网格的物体使用(一般多为可编辑多边形,由于可编辑网格中会强制分割出三角面)

UVW展开修改器只能利用物体现有的多边形,边线,不能自行创建/修改物体的结构布线,即UVW展开修改器只改变顶点中的UV坐标,而不改变物体的结构

---2.1.1 面片展开法(拆片展开法)

我们可以将物体上需要使用连续纹理的一部分使用面片展开法

首先为物体添加UVW展开修改器,并进入到多边形子层级

打开UV编辑器,拾取到我们需要调整的图片纹理

通常我们可以在这里看到物体材质中使用的贴图并选中,如果无法找到可点击拾取纹理进行本地查找

我们选中物体上需要使用连续纹理的一部分多边形,通过投影选面板指定一种投影方式(即上文中的一种参数空间),调整投影方式与选中多边形面的法线方向适配(即上文中调整参数空间的方位),再次点击亮起的投影方式按钮,完成对选中多边形面的参数空间类型的指定

投影方式的指定主要是为选中的平面指定一种参数空间,并调整法线方向大致适配即可

其余的参数空间初相和参数空间的大小、方位我们可以在UV编辑器中对选中的平面进行移动、旋转适配贴图上的纹理位置来完成调整

UV编辑器中显示的多表现和物体表面的多边形一一对应,UV编辑器中的多边形就是物体表面的多边形被转换到纹理空间后的放置表现

点击右下角的仅显示选中多边形忽略其他多边形干扰,点击左上角的万象模式可以更方便的进行调整,UV编辑器中的旋转会受到角度捕捉的影响我们应保证所有多边形面都按照一定的方式进行了投影(参数空间的指定)。注意!一旦我们添加了UVW展开,物体的所有顶点都会参与到展开中,即使我们不对某一部分多边形进行编辑,多边形依然有默认的展开方式

之后在UV编辑器中进行多边形与图片纹理的位置适配操作(见2.1.3

在使用面片展开法时,我们每一次选中并指定参数空间的多边形会尽可能的被连成一片进行展开(除非它们本身在物体表面不连续),而不同次选中展开的多边形之间一定会被拆分开形成UV接缝

---2.1.2 部分展开法

我们在使用UVW编辑器时,需要拾取一张纹理,并对所有多边形做出调整

但在我们建模的过程中,一种情况是我们通过多维子材质,在同一个多边形内部指定了多张贴图,贴在了不同的多边形面片上

由于UVW编辑器需要一次性对所有多边形进行调整(即使不调整,多边形上的顶点UV信息也会由于我们添加UVW修改器产生变化)而我们在调整时一些使用了不同贴图的多边形就需要我们反复切换UV编辑器中的贴图拾取,并且使用不同贴图的多边形可能在适配中在UV编辑器中发生重叠,影响调整,一些多边形并不使用贴图,但也会在UV编辑器中被显示,产生干扰

此时我们可以采用部分展开法,对使用同一张纹理的每一组多边形进行依次的UV展开

我们选中使用了同一张纹理的多边形,之后添加UVW展开修改器此时UVW修改器只针对我们选中的多边形添加,不会影响到我们未选中多边形顶点中的UV坐标适配完一组多边形后,将UVW展开修改器塌陷即可,塌陷只是不能再进行修改,顶点中的UV坐标并不会消失,塌陷前请确认无误,塌陷后重新添加UVW修改器无法返回到我们之前已调整好的状态---2.1.3 自动展平贴图

我们可以利用UV编辑器的展平贴图命令实现快速的贴图展开

自动展平贴图对于棱角分明的物体十分好用,一些需要特别分割的部分我们可以加入材质ID分割,有时自动展平可能拆的过于细碎,此时需要我们手动对一些需要连续但被拆碎的面进行选中,指定参数空间将其组合,或是不使用自动展平UV进行手动拆分

进入多边形子层级,选中一定的多边形,点击贴图-->展平贴图

展平贴图命令作用于选中的所有多边形,不选中任何多边形进行展平命令将针对所有多边形同样间距也是分割不连续多边形的最小阈值规格化集群会对展开后的多边形进行紧缩规格化命令,使其按一定的比列规格排列在标准图片内部允许旋转集群会使得展开后的部分多边形进行镜像翻转,根据情况可选择是否启用,也可手动进行后续翻转调整填充孔洞+规格化排列会导致一些面片塞在能塞的缝隙里,充分利用空间按材质ID勾选会加入按照多边形材质ID的不同进行分割,图中选中多边形ID为2,其余均为1,导致被分割了出来---2.1.4 UVW编辑器贴图适配操作

如果我们先有贴图,再按照贴图的纹理结构进行建模,就需要在UV编辑器中进行贴图的适配操作

------2.1.4.1 对应关系与调整原则

UV编辑器中显示的多表现和物体表面的多边形一一对应,UV编辑器中的多边形就是物体表面的多边形被转换到纹理空间后的放置表现

3D空间中对应多边形上出现纹理信息,就是我们在UV编辑器中看到的多边形覆盖的部分纹理(如果多边形不在标准单位图片内部,则根据其位置和寻址模式找到对应的纹理)我们调整UV编辑器中的面片去适配图片纹理,就是设定参数空间的初相,大小,方位的一个过程,不过3dMax通过UV编辑器的封装,让我们可以直观的看到纹理适配效果的表现

我们在UV编辑器或是视图中选定多边形表面时,对应的表面会一同亮起

通常情况下,我们的调整原则是将所有的多边形都放置到标准单位图片位置内部,这样顶点中的UV坐标才能保证在[0,1]之间不会出现越界问题

一些利用越界和寻址模式实现的重复效果,我们通常使用BitMap参数调整来实现,在UV编辑器中我们应将多边形放入到标准单位图片的位置内,以免UV坐标越界而出现无法预计的贴图纹理适配情况

标准图片规格会根据你选取的纹理而发生变化,你在UV编辑器中看到的会是图片本身的宽高比,但实际UV坐标会自行映射到[0,1]之间

------2.1.4.2 两种快速选择操作

利用左下角的按UV元素切换选择,我们可以在选中一个多边形/边/顶点时快速选中所有与它连续的对象

对于需要一起进行适配操作但不连续的部分,我们可以使用打组命令

我们也可以在选中部分多边形/边线/顶点时,点击打组按钮,这样下次我们选中组内的其中一个对象,点击选定组按钮就可以快速选中之前设置的所有组对象

------2.1.4.3 移动/旋转/缩放/万象

左上角的移动旋转缩放按钮可切换控制状态,右上角的快速90度旋转按钮可快速旋转面片我们通常使用万象控制,在图片轴心处拖动即可调整位置,棱边中点处拖动即可旋转,角点处拖动即可缩放角度捕捉会影响到UV编辑器中的手动旋转效果通过万象大致将位置放置完成后,我还需要进入到顶点子层级,对每个点进行精确的适配调整

------2.1.4.4 镜像翻转

有时我们会看到纹理中像文字,图标一类产生了翻转此时我们需要通过镜像多边形(三维空间的180度旋转)才能完成适配在万象命令的右侧是镜像翻转(三维空间180度旋转)命令,可对选中的多边形进行翻转---2.1.5 UVW编辑器贴图模板导出

我们可以先建立模型,对多边形进行UV展开,之后将多边形按一定的规格在标准单位图片内部进行排列

之后导出UV模板,在PS GIMP一类图像处理软件中,以模板作为参考进行贴图的绘制

我们再将绘制好的贴图在3dMax中进行引入即可

------2.1.5.1 使用自动排列命令排列UV模板

UV编辑器为我们提供了快速自动排列多边形到标准图片内部的一些命令

首先选中我们需要进行快速排列的多边形,不选则任何多边形视为全选

一些命令中可以加入重缩放在排列的同时,将多边形缩放到与原比例(在物体表面上的多边形比例)相同,通常启用重缩放命令保证多边形的比例与物体表面相同,方便贴图绘制

旋转(2维空间内旋转,不造成翻转)的启用于否会决定在自动排列时能否适当旋转当前的多边形以获得更好的排列效果,根据情况选择是否启用旋转命令

填充会控制多边形之间的间距大小

紧缩在一起命令会对选中的多边形进行排列,在不改变其大小的前提下,尽可能使得多边形能够排列进标准多边形内部紧缩规格化会在紧缩的基础上按当前UV编辑器中的多边形大小比例进行统一缩放,使得多边形排列在标准图片内部重缩放元素会按照选中多边形的平均大小重所缩放多边形到相同大小

重缩放+紧缩在一起可以让元素缩放到平均大小(缩放后多边形大小比例与在物体表面上的大小比例一致)之后再紧缩排列

原状态重缩放+紧缩

重缩放+紧缩规格化 会将所有元素缩放到同一大小(缩放后多边形大小比例与在物体表面上的大小比例一致)并保证能够排列在标准单位图片内部

原状态重缩放+紧缩规格化

也可以手动设置自定义紧缩方法(不常用)

------2.1.5.2 手动排列UV模板

事实上我们经常使用自动排列+手动排列的方式,导出便于绘制的UV模板

进入顶点子层级,点击移动命令,视图设置显示栅格取消显示贴图,点击右下角的移动捕捉按钮,对多边形进行手动排列

手动排列整齐后再全选进行移动和缩放,将多边形放入标准单位图片内部

------2.1.5.3 人脸UV模板调整

人脸UV模板需要对面部使用松弛命令,尽量让嘴唇,眼睛能够使用更大的绘制空间进行绘制,避免空间不足导致产生锯齿,或是无法进行精细的绘制

人脸UV通常会使用剥方法(见下)完成UV展开

在UV编辑器中我们可以通过枢轴来调整展开面片的拉伸形态

选中剥离下的需要调整的多边形,点击剥模式,切换到顶点子层级通常我们关闭自动锁定移动顶点,开启时我们如果选中并移动了一个顶点,该顶点立刻成为一个枢轴每一片面片最少拥有两个固定枢轴我们选中一个顶点点击固定选定对象可以让其成为一个枢轴,旁边的取消固定对象可删除枢轴合理添加枢轴进行移动拉伸面片,尽可能使面部占有更多的空间,物体表面对称分布的多边形使其展开后的面片也尽可能对称,必要时可使用栅格+捕捉进行调整通过棋盘格纹理检查,我们法线面部的纹理分布不是很均匀我们通过添加枢轴进行拉伸结合松弛命令,将面部的纹理分布尽量均匀化松弛时我们可以启用保持边界点固定使我们调整好的枢轴点不被移动,但如果是对称面片,请保证枢轴的添加和位置也是左右对称的

------2.1.5.4 导出UV模板的设置

------2.1.5.4.1 导出检查

首先我们应保证导出的UV模板没有错误的重叠和翻转,以免在贴图绘制以及之后的使用中带来麻烦

可以通过选择-->选择反转多边形/选择重叠多边形 进行检查

对错误反转的多边形使用镜像命令,多边形有错误的重叠部分需要,进行移动重新排列,但有时为了贴图绘制方便或是一些特使需要,我们可能会刻意翻转多边形,重叠部分或全部多边形

------2.1.5.4.2 导出设置

首先保证所有多边形排列在标准单位图片内部,且没有错误的重叠和翻转

工具--渲染UVW模板由于多边形可能存在拉伸,为保证贴图绘制时与原物体表面的多边形比例一致,我们需要点击猜测纵横比,之后再渲染UV模板渲染完成后点击保存按钮,通常保存为BMP格式---2.1.6 UV接缝与接缝缝合

展开UV的过程中,多边形会被我们按照一定的方式分开

多边形若在原物体表面是连续的(有公用边),而在UV展开时被拆分,则它们的公用边就称之为UV接缝

我们可以在边线子层级选中一条边线(红色),原本物体上与它形成公用边的边线也会亮起(蓝色)

有时我们按照一顶的方式拆分多边形后,如果需要在多边形的相接处表现一定的纹理,为了方便绘制,此时我们就需要进行UV接缝的缝合

我们进入到边线子层级,在物体上选择需要进行缝合的边线,UV编辑器中的边线会同时被选中,从而确认我们需要缝合的边如果边线不平行我们需要通过旋转尽可能使得边线平行之后我们点击缝合到目标、缝合到平均值、缝合到源,都可以完成缝合

但缝合命令可能导致多边形被扭曲,因此我们可以使用栅格+捕捉,先将需要缝合的边对齐,之后再进行缝合

显示栅格,进入顶点子层级,使用移动命令并开启捕捉,将需要缝合的边进行对齐之后再进行缝合或者我们可以使用自定义缝合工具选择对齐群集,进行缝合时会尽可能保证多边形不被扭曲完成缝合如果边线本身不规则,缝合无法避免边线扭曲,我们可以在缝合后选中多边形,使用重新塑造元素--放松直到展平命令,降低扭曲程度尽可能恢复到原状态---2.1.7 剥方法

在选定参数空间进行投影时,难免会出现多边形在投影后发生扭曲(法线方向不一致),导致我们尽管在UV编辑器中进行了适配,但纹理表现产生扭曲

剥方法会尽可能的保证多边形按照原法线方向的平面进行投影,尽可能的将多边形展开成平面,在转换到参数空间后不会发生多边形的扭曲

------2.1.7.1 编辑UV接缝

在视图中我们可以看到这些绿色的UV接缝,在UV展开的过程中会以他们为分界来分割多边形

或者说物UV接缝就是在拆分体表面时“被剪开的边

我们可以通过手动编辑UV接缝,并按照UV接缝进行展开拆分出多边形,称之为剥方法,使用剥方法就类似于剥皮的一个过程

对所有多边形都使用与其平行的平面作为参数空间,在UV接缝处进行分割,非UV接缝处将多边形进行缝合,从而将一组多边形展开为二维面,就像从表面剥离下来的一样,再将展开的二维面转换到纹理空间

首先在UVW展开多边形子层级选中所有多边形,选择平面投影之后关闭,去除原有的所有UV接缝打开编辑接缝模式,选择边线编辑预设接缝蓝色边线表示作为预设接缝但还未进行展开,按Alt再选择可以去除错误选定的预设接缝使用点对点模式可快速进行预设接缝编辑,点击一条边线作为预设接缝,再点击与之前边线连续的延伸边线上的某一边,中间连续的边线将一并作为预设接缝

通过编辑预设接缝,在进行剥命令时,多边形就会按照接缝尽可能的进行展开铺平

------2.1.7.2 快速剥命令

---------2.1.7.2.1 接缝快剥

---------2.1.7.2.1.1 预设接缝快剥

我们可以编辑好预设接缝,之后对选中的多边形按编辑的预设接缝进行剥离,尽可能的将多边形展开铺平

对于没有选中的多边形也会执行剥命令,剥命令一定作用于所有多边形,可以利用这一点通过选中部分多边形来制造UV接缝关闭默认打开的忽略背面,选中需要进行剥离的多边形

我们点击快速剥,将利用我们已经编辑好的预设接缝,尽可能的展开多边形并铺平,如果快速剥的效果不正确(一些多边形参数空间方位不对导致多边形没有正确的进行投影)可以选中不正确投影的多边形点击重置剥来解决

选中多边形和未选中的多边形内部将以预设接缝为UV接缝,对多边形进行展开,选中和未选中多边形相交的地方会自然形成接缝

---------2.1.7.2.1.1 剥模式快剥

用平面投影先去除所有UV接缝,之后去除所以预设UV接缝我们进入剥模式,此时编辑接缝会立即生效,编辑接缝的同时打开UV编辑器可动态查看实时的剥离效果当右侧效果我们比较满意时,关闭剥模式即可

---------2.1.7.2.2 投影快剥

选中一部分我们需要进行剥离的多边形,之后我们指定一种投影方式(选择参数空间)

除平面投影外不同的投影方式都有自己独特的接缝

我们可以选择一种比较符合选中多边形排列的投影方式,并在此基础上再进行额外的UV接缝编辑并使用剥命令

与只使用投影命令不同,投影命令可能产生多边形在投影过程中的扭曲,导致纹理表现出现无法适配的扭曲

剥命令会尽可能的保证多边形被平行的投影进参数空间,不发生扭曲

选择投影命令时多边形内部也会出现特有的UV接缝我们可以利用投影产生的UV接缝,在需要的地方还可以手动添加一些接缝之后我们点击快速剥命令,或启用剥模式动态编辑接缝查看剥离效果对比仅使用投影,明显快剥的结果多边形球面上的多边形没有被扭曲,每个多边形都使用了与其平行的平面参数空间进行投影,而仅使用柱面投影,球面上的多边形被转化为了柱面上的长方形,在投影的过程中产生了扭曲

------2.1.7.3 毛皮命令

一个比较古老的剥离命令,当前快剥已经足够强大了,毛皮命令作为最早的剥离命令已经很少使用了

毛皮命令就是按照预设UV接缝,模拟真实的“手撕剥皮”的过程

毛皮命令只作用于选中的多边形

毛皮命令要求选中的多边形内部预设接缝必须连续,否则只作用于最长的预设接缝,而对其他预设接缝使用快剥

我们首先编辑好预设接缝我们选中需要进行毛皮剥离的多边形,之后点击毛皮点击开始毛皮,在牵拉不动或相持时点击停止之后点击松弛,在松弛停止变换时停止,提交即可一些投影不对的多边形可以用重置剥来纠正

---2.1.8 材质分割技巧

在UVW展开修改器下没有了多边形中的环形线性选择,元素选择,点边面的选择转换,选择多边形只能框选,有些不方便

但UVW展开修改器中有按材质ID选择

我们可以利用可编辑多边形中的一些快速选择方法,并将需要进行连续展开的多边形按材质ID进行分割

可编辑多边形中的环形线性选择/扩大选择,点线面选择转化十分方便

之后在UVW展开修改器中使用可编辑多边形分割好的材质ID进行快速选择

注意UVW展开修改器是不可预知命令,如果在可编辑多边形中修改了物体拓扑结构可能导致UVW展开修改器原有的UV展开修改出错

尽量不要反复在UVW展开和可编辑多边形之间进行来回切换

从UVW展开修改器切换回可编辑多边形时的提醒

如果我们选择了可编辑多边形子层级下的某一个子对象(尤其是在选择了一个多边形面的时候),此时选中UVW展开修改器返回UVW展开修改,会导致UVW展开修改器进入到该子对象的堆栈中,而不是可编辑多边形的堆栈,此时就是前面所说的部分展开的情况,UVW展开修改器将只能作用于选中的多边形而不是整个物体

正确的折返步骤是先点击可编辑多边形返回到顶层,之后再点击UVW展开修改器---2.1.9 贴图通道贴图中的贴图通道必须和UVW展开或是UVW贴图命令的贴图通道对应,才会使UV展开影响到该图片纹理在物体表面上的表现效果

我们可以利用多维子材质,在同一个物体上使用不同的贴图,利用贴图通道进行区分,并对不同的贴图使用UVW展开或是UVW贴图,对物体表面进行不同的UV展开进行适配

贴图通道相当于让顶点拥有了多套UV信息,根据材质中贴图的通道标号只取顶点中对应标号的那一套UV坐标来进行纹理贴图

如果有多套UV调整命令(UVW展开、UVW贴图)使用了同一通道标号,物体顶点最终的那以套标号的UV由栈顶的那个UV调整命令决定

但请只使用贴图通道1,因为其他贴图通道的贴图在物体导出并导入到Unity中时无法被正确的识别

因此通常我们使用材质ID区分贴图,并使用部分展开法进行每组多边形的贴图适配调整

---2.1.10 其他使用技巧

1.好用的冻结

对于适配调整完毕的一组多边形,我们可以使用冻结来阻止意外的选中2.2 UVW贴图修改器

有时我们并不需要对图片贴图进行“精细的调整”,UVW展开修改器固然强大,但有时我们只是“想把一张图片贴在物体表面就好”,对于顶点中的UV我们并不需要进行太过精细的编辑

在我们并不使用这种模板化的贴图

模板化的贴图就需要通过UV编辑器进行精细的调整才能完成适配

而只关心如何将一张完整图片的贴在物体表面并产生一定的效果时

此时使用UVW贴图修改器进行快速的UV展开是一个不错的选择

---2.2.1 UVW贴图修改器的作用及原理

UVW贴图修改器的作用就是为整个物体/对象指定一种参数空间(UVW展开修改器则可以对不同的多边形使用不同的参数空间),通过对参数空间的标准虚拟体进行一定的调整,从而达到适配贴图纹理的作用

在UVW贴图修改器中我们可以看到许多可用的参数空间

UVW贴图修改器的参数空间将针对整个物体上的所有多边形一同指定,并且只能通过调整虚拟体来进行贴图的适配,不能精确的编辑每个顶点的UV坐标

---2.2.2 使用UVW贴图修改器进行快速UV展开

UVW贴图修改器可用搭配部分展开使用,我们可用选中一部分多边形对其添加UVW贴图修改器,或是对整个物体添加

添加UVW贴图修改器后我们先选取一个合适的参数空间之后我们可以用下方的适配按钮来对标准虚拟体进行调整

我们可以通过下面这组参数来快速设置图片的重复和翻转

这里就相当于是对标准虚拟体的一个倒数缩放比,或者说让标准虚拟体对应到UVW从0开始到x(图中的数值设定)的区间内,点击翻转可以产生UVW方向上的镜像我们也可以进入到UVW贴图修改器的Gizmo子层级,通过移动/旋转/缩放,直接对标准虚拟体进行调整选择面是对每一个多边形都使用与其平行的平面参数空间投影,并将整张贴图贴在每一个面上2.3 BitMap参数调整

我们可以通过BitMap的参数调整来改变这张图片本身,BitMap参数调整相当于一个图像处理的过程,但功能比较有限,一些复制的图像处理还是要借助像PS GIMP这样的图像处理软件

越界寻址模式被放在BitMap参数中(并且它也经常和纹理绑定在一起,至少Unity中也是在图片属性中设置寻址模式)

0.一些注意事项注意我们对图片参数进行一定的调整后,有时需要通过渲染图来确认最终结果,视图中的显示已无法反应最终结果

显示最终结果(在物体表上的纹理表现)或是查看标准单位图片的设置双击材质调出缩略图窗口

1.寻址模式调整瓷砖即启用重复寻址,镜像则是镜像寻址,寻址模式可针对U或V的一个方向进行单独设置2.图片重复次数与偏移通过瓷砖中的值设置结合勾选瓷砖和镜像,可设置图片的重复效果,通过偏移可对图片在纹理空间的位置进行位移3.应用级别百分比图片纹理会按照百分比进行属性变换的应用,一些具有原色的贴图位置会按百分比混合原有延伸和图片颜色注意,使用漫反射贴图的图片,原色设置必须为255纯白,Max中100%应用会导致漫反射颜色无论如何设置都不会被表现,但在导出FBX后,导入到像Unity这样的不是AutoDesk的平台,模型的颜色会按照贴图和原色进行1:1混合,导致图片纹理原有的颜色被改变4.其他UV方式对象XYZ平面即使用物体的惯性坐标系的XYZ平面作为参数空间分配顶点UV,此时不接受其他UV调整命令产生的顶点UV信息世界XYZ平面,顶点将使用世界坐标投影到参数空间,物体表面的纹理效果会因为顶点的世界坐标改变(物体移动旋转缩放)而发生改变世界XYZ平面不启用真实世界比例,按百分比进行偏移和重复指定使用真实世界比例按照工程中对应的长度单位指定大小和偏移5.模糊与锐化坐标模糊值必须大于0相当于是一个高斯模糊,右侧偏移模糊大于0是涂抹模糊小于0是锐化效果6.旋转让贴图在纹理空间(UVW三维空间)中进行一定的旋转(之后在正交投影到二维)可通过点击旋转调出旋转窗口,通过鼠标拖拽实现控制,圆形外部环向拖拽是W方向,圆形内部横向是V方向,纵向是W方向

注意高维空间的旋转在投影至低维后表现为缩放效果,沿UV方向的旋转就会产生类似缩放的效果

7.噪波是否对图片启用噪波处理,数量(噪波程度),级别(噪波复杂度),大小(振幅),相位,是否应用动画8.位图位置指定位图路径,如果修改了路径可由此手动寻找贴图,贴图的参数设置维持原有9.裁剪/收缩放置图像一般不直接进行参数设置,点击查看图像调出裁剪窗口,拖拽裁剪框完成裁剪选择放置图像,将图像收缩在选区10.输出

输出设置可以对图片的一些通用属性进行调整

反转:补色反转

输出量:饱和度

RGB偏移:灰度

RGB级别:明暗亮度

启用颜色贴图可使用下方的曲线编辑器对图片的色彩曲线进行控制,下方的灰度条带显示了色彩曲线输出的当前图片全灰度色彩偏移情况11.动画时间控制

我们可以使用一段视频作为贴图,时间卷展设置可以设置视频纹理的一些播放参数

2.4 3dMax内置贴图

Max为我们提供了一些有用的内置的贴图,并且这些贴图更像是模板一样,我们可以“进行一些模板化的编辑”,贴图嵌套就是利用内置贴图的技法

---2.4.1 几种常用的内置贴图

之前提到的棋盘格贴图

内置的木纹大理石贴图

渐变与渐变坡度贴图

---2.4.2 贴图嵌套的概念

像棋盘格/渐变/渐变坡度,它们其实提供了一个模板位置

我们可以将它们的颜色所在的模板位置替换为我们想要的一张贴图

一般在使用了嵌套贴图后,视图将无法反应最终效果,需要通过渲染来进行确认

类似这样的贴图设置可将贴图设置在颜色模板上通过贴图的嵌套产生的效果,可通过材质贴图导航器查看一个材质的贴图嵌套关系

嵌套贴图各层可以指定不同的贴图通道,贴图通道的应用只对该层有效

各层也可以只使用一个贴图通道

---2.4.3 渐变贴图

渐变贴图可以形成前中末三次颜色的转折变化,并且可以调整中间颜色的转折位置,颜色可以用图片替换模板位置

可以使用其他图片替换颜色的模板位置渐变类型可选择线性或径向渐变贴图拥有独有的噪波运算器,可进行更加复杂的噪波效果

---2.4.4 渐变坡度贴图

渐变坡度贴图是渐变贴图的一个升级版

注意使用UV/VW或是W轴的旋转来改变贴图朝向通过在条带上点击我们可以创建出新的控制点右键控制点我们可以进行控制点的删除/复制/粘贴,属性编辑我们可以精确调整控制点的位置,控制点的颜色,或是用贴图替换控制点处的颜色模板位置也可以通过将控制点拖拽出条带来进行删除通过渐变坡度贴图我们可以实现更为复杂的颜色转折变化渐变坡度贴图拥有更加丰富的渐变类型和插值方法可供选择2.5 视口绘制

视口绘制可以在三维物体上进行一定的纹理绘制效果,但绘制功能比较有限,通常只作为对PS GIMP进行贴图绘制的提示

我们渲染除了UV模板,需要到PS GIMP中进行贴图绘制

然而有一个问题,在PS GIMP中绘制时,我们并不能即时的查看UV模板上多边形与实际物体上多边形的对应关系

在Max中你可以通过选定了进行查看,然而使用PS GIMP的画师并不能查看到对应关系

我们不能指望画师能够通过UV模板想象出三维物体的具体形态,并将纹理绘制到正确的位置上,事实上我们应该给画师一点提示

首先我们先将UV展开为需要的效果,并进行UV模板的导出调整

渲染出确定的UV模板

之后在渲染UV模板时记录图片纵横比,此时通常直接使用1024*1024或其他 2^{n} 为编程的正方形贴图

先对物体赋予一个材质点击工具-视口画布点击绘制,会询问绘制出贴图的目标属性,我们选择漫反射颜色之后需要创建纹理,注意纹理规格应与UV模板的规格一致设置绘制出的纹理保存位置,注意贴图通道要与UV展开的贴图通道一致开始绘制后,在点击绘制按钮,结束绘制前,不要进行任何其他操作,否则Max可能崩溃绘制按钮亮起代表正在进行绘制,点击按钮结束绘制前,不要进行绘制以外的其他操作我们添加新层,打开2D视图(三维视图中绘制经常出错,我们一般在2D视图中绘制)并对照三维视图在新层上完成绘制添加了新层后结束绘制时会弹出保存纹理层的选项如果使PS可以选下面的另存为PSD并在材质中替换纹理,如果不使用PS点另存为PSD文件即可如果点即另存为PSD并替换纹理,刚才绘制的文件会保存为PSD文件,并将纹理数据源替换为该PSD文件,我们使用PS打开该PSD文件,根据绘制的提示在PS中进行纹理绘制并保存即可

不使用PS则可以保存PSD文件用其他图像处理软件打开,根据绘制提示完成纹理绘制,之后将图像导出,在3dMax中引入即可

我们在GIMP中导入渲染出的UV模板,再导入绘制的纹理位置提示,使用GIMP就可以进行纹理的绘制了

没错我就是要用GIMP这么优秀的图像处理软件

PS吃相是真难看...

/*

终于把坑填完了...

收藏不点赞就是白嫖,这种行为必须杜绝

顺带点个关注不迷路嘛\(@^0^@)/

欢迎各路神仙留言指正或是赐教一些我不知道的点

鄙人先谢为敬

这里是Randy

一位学土木的游戏程序员想成为全栈独立游戏制作者

2019/08/15

13:38

*/



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有