第二章:3ds max材质和贴图
关于材质和贴图,我们在DirectX中也介绍过。在3ds max中也是通过材质和贴图来表现物体模型的表面纹理。在3ds max中物体模型的材质主要包括颜色,透明度,高光等等,其中贴图用于替换颜色部分,以增强物体表面的真实特征,贴图就是材质的一个属性而已。在工具栏中点击“材质编辑器”(快捷键M)就能打开材质编辑界面:
大家可以看到,每个材质都是以一个球体的方式呈现,因此3ds max中的材质也称之为“材质球”。每一个材质球就代表一个材质,可以为模型赋予多个材质球。在每个材质球下面都有一个“Blinn 基本参数”,我们可以看到,他们主要是环境光,漫反射,高光反射,自发光以及不透明度,这跟我们之前通过DirectX去创建一个材质的数据结构是一致的。我们之前也讲过,物体的漫反射就是物体的颜色。在3ds max中,如果需要使用贴图来代表物体的颜色话,只需要在漫反射后面的空白按钮选择一张“BitMap”(位图)贴图即可。BitMap”贴图就是一张四边形贴图图片而已。我们之前直接将一张图片拖拽到模型上面,本质就是将这张贴图赋予材质的漫反射颜色属性上面。
3ds max的材质编辑器主要有两种,一种就是上图中默认的“精简材质编辑器”,另一种就是“Slate材质编辑器”。两种形式的编辑器可以通过材质编辑器菜单栏“模式”来回切换。精简材质编辑器对于初学者来说,操作比较简单且易懂。Slate材质编辑器虽然复杂一些,但是它根据线框的方式来呈现不同的材质,不论是显示还是操作,也都比较方便和实用的。关于材质编辑器的更多参数的意义,我们不在详细介绍,这里主要介绍贴图。
贴图主要用于表现物体模型的表面纹理,位图(BitMap)是最常用的贴图类型。
创建一个BitMap贴图如下,首先点击漫反射后面的空白按钮,
在弹出的列表中,双击选择位图,
然后选择本地电脑上一张图片,接下来就是位图编辑界面,在“位图:”的位置,我们可以看到图片的地址,如果想要更换一张图片,也是在这个位置进行操作。请注意,此时的操作界面是位图的操作界面,不是材质的操作界面,如果想要返回材质编辑器的界面,需要点击“转到父对象”,就能返回材质编辑器了。
返回到材质编辑器后,我们看到漫反射后面的按钮变成了“M”,表示我们的贴图对象。
如果想要再次回到贴图编辑界面,点击“M”按钮即可。创建贴图材质之后,可以直接拖动材质到模型上进行赋予,也可以选择材质和模型后点击“将材质指定给选定对象”。此时模型并不会立即显示贴图,而是需要在材质编辑中点击“视口中显示明暗处理材质”才行。我们重新回到贴图的编辑页面,默认情况下,我们的贴图材质赋予立方体的话,贴图会完整的铺在立方体的每一个面上:
如果我们调整偏移下方的UV值,就会发现贴图位置移动,本质是调整其UV坐标。默认瓷砖下方的数值都是1.0,也就是一个平面显示一张完整贴图,如果我们调整其数值,能够达到多张贴图平铺的效果。需要注意的是,当设置的数值为奇数的时候,平铺后的贴图在平面上才能完整显示。例如我们设置3,这样在平面上就会显示3X3个贴图:
其实这种效果,在我们DirectX中的“寻址模式”中提到过!角度就是控制图片的旋转,通常更改W数值,例如我们改为30,如下图:
关于位图的其他参数,我们不在介绍。贴图的操作中,我们经常使用的是“UVW 贴图”修改器
贴图作用于模型的表面,本质就是UV坐标,但是我们不可能逐一的一个点一个点的去设置这个UV坐标,我们需要可视化的操作工具帮助我们完成这项工作。“UVW 贴图”修改器可以控制贴图的覆盖方式、方向、大小等等。首先,我们介绍贴图的覆盖方式,在上图中我们可以看到贴图:平面,柱形,球形,收缩包裹,长方体,面等等。
平面:从对象上的一个平面投影贴图,在某种程度上类似于投影幻灯片。在需要贴图对象的一侧时,会使用平面投影。它还用于倾斜地在多个侧面贴图,以及用于贴图对称对象的两个侧面。
柱形:从圆柱体投影贴图,使用它包裹对象。位图接合处的缝是可见的,除非使用无缝贴图。圆柱形投影用于基本形状为圆柱形的对象。
封口:对圆柱体封口应用平面贴图坐标。
球形:通过从球体投影贴图来包围对象。在球体顶部和底部,位图边与球体两极交汇处会看到缝和贴图奇点。球形投影用于基本形状为球形的对象。
收缩包裹:使用球形贴图,但是它会截去贴图的各个角,然后在一个单独极点将它们全部结合在一起,仅创建一个奇点。收缩包裹贴图用于隐藏贴图奇点。
长方体:从长方体的六个侧面投影贴图。每个侧面投影为一个平面贴图,且表面上的效果取决于曲面法线。从其法线几乎与其每个面的法线平行的最接近长方体的表面贴图每个面。
面:对对象的每个面应用贴图副本。使用完整矩形贴图来贴图共享隐藏边的成对面。使用贴图的矩形部分贴图不带隐藏边的单个面。
XYZ 到 UVW:将 3D 程序坐标贴图到 UVW 坐标。这会将程序纹理贴到表面。如果表面被拉伸,3D 程序贴图也被拉伸。
在我们之前的立方体案例中,我们将贴图赋予立方体的时候,默认使用“长方体”的覆盖方式,也就是将贴图平铺在立方体的6个面上,每个面上是一张完整的贴图。
我们可以从上面两个图片中看到两种覆盖方式的不同。
“UVW 贴图”修改器使用场景:首先模型是一个基本几何体的形状(立方体,球形或圆柱体等等),其次我们有做好的纹理贴图(木质纹理贴图,草地纹理贴图,石头纹理贴图等等)。我们就可以使用“UVW 贴图”修改器可视化的调整纹理在模型上面的表现效果了。接下来,我们介绍长度,宽度和高度的参数说明,该参数用于指定“UVW 贴图”gizmo 的尺寸。“高度”尺寸对于平面 gizmo 不适用。当我们试图去修改长度,宽度和高度的数值时候,我们就会发现它的效果,同时会在立方体的外围生成一个立方体线框。如下图:
同时,如果我们展开“UVW 贴图”修改器的加号,就能看到下面的“Gizmo”子按钮,点击“Gizmo”的话,我们发现在立方体线框中间出现轴心坐标系,同时自动选中移动工具。如果我们移动x/y/z轴向的话,就会发现贴图也在移动。其实,我们还可以旋转和缩放。
Gizmo其实就是一个变换控制器,我们可以通过长度,宽度和高度的参数指定它的尺寸,同时还可以通过x/y/z三个轴向进行移动,旋转和缩放操作。这种可视化的操作方式可以帮助我们对一些简单的几何模型进行纹理映射,也就是纹理坐标的指定。当然,复杂的人物模型不能按照这种方式来操作了,它需要另一个修改器“UVW 展开”。
备注:材质编辑器中的材质球可以删除,但不影响物体的材质显示。也就是说,材质的删除并不是真正的删除。我们可以使用“从对象拾取材质”滴管工具来重新获取模型身上的材质。
UV贴图路径问题:菜单“参考”->“资源追踪”,也可以使用快捷键Shift + T,在“资源追踪”的弹窗中可以看到场景中所有的贴图列表,选择一个贴图,右击选择“设置路径…”,在“指定资源路径”的弹框中,可以修改新路径和贴图名称。
备注:这是我们游戏开发系列教程的第三个课程,这个课程主要讲解3ds max建模的基础知识。学习目标主要通过3ds max的操作来加深对游戏基础知识的了解。如果有兴趣的同学,可以通过其他方式来学习3ds max的专业知识。本课程中如果有一些错误的地方,请大家留言指正,感激不尽!
第二章:3ds max材质和贴图相关推荐
- 第二章 3ds Max物体的操作及选择
系列文章 3DSMAX学习 第一章 3ds Max基础界面和操作 第二章 3ds Max物体的操作及选择 文章目录 目录 系列文章 3DSMAX学习 文章目录 一.3ds Max物体操作 ...
- 第一章 3ds Max基础界面和操作
文章目录 目录 文章目录 一.前言 1. Autodesk 3ds Max简介 2. 3d Max中文版启动 二.认识3ds Max界面 1. 3ds Max主界面 2. 视图的认识与切换 3. 视图 ...
- 3ds Max导出带贴图的obj模型
先找一块大理石地板的贴图 接着在3ds Max中画一个最简单的立方体,要薄一点像地板 点击菜单栏中的渲染,选择精简材质编辑器 在材质编辑器面板里随便点一个球,然后按照下图所示的1和2步骤分别点击漫反射 ...
- 3ds Max 材质贴图
综合案例-桌边一角 主要知识点 步骤讲解 效果图: 素材: 主要知识点 遮罩贴图.多维子对象.混合贴图.渐变坡度.平铺贴图.噪波贴图.双面材质.顶底材质. 步骤讲解 一.台球材质贴图分别有三种方法:混 ...
- WEB前台架构教程(原创)第二章(第一节PS切图规划)
转自:http://hi.baidu.com/phpidea/blog/item/9666a754d8d05259574e0013.html 我在第一章介绍了页面设计要关注的几个点,重点位置突出.分栏 ...
- 3d max材质添加透明贴图异常
从网上找的模型,在使用3dmax在给模型上眼睛贴图的时候,发现透明图片显示异常,如下: 解决方法如下: 在ps中打开透明贴图 添加一个图层 选中图层1,点击魔棒工具,选中透明区域 选下背景色,再切到图 ...
- 3ds max材质编辑器加载不了、不显示vray
"渲染设置"--"公用"选项框--最下面的"指定渲染器"--产品级选择"V-Ray Adv 3.60.03"(版本可能不 ...
- 3ds max材质库操作
新建材质库 单击"按名称搜索-"左边的三角形图标按钮,选"新材质库-",输入材质库文件名,点击"保存". 新建的材质库将在材质/贴图浏览 ...
- 3ds Max 实验十三 贴图
最新文章
- 苹果官方Instruments工具之Automation的介绍
- SHELL中的IF判断 ​
- kubectl apply -f_广州车展捷豹路虎参展阵容 全新F-PACE 路虎卫士90
- huffman算法c语言实验报告,huffman二叉树实验报告--数据结构(c语言).doc
- 阿里云ECS修复ubuntu 16.04漏洞过程
- WSS(Windows Storage Server)2008R2使用指南(三)配置及使用篇
- java 缓冲流 刷新_java – 缓冲和刷新Apache Beam流数据
- C语言随笔小算法:取出一个任意整数的每一位数值
- 《C语言程序设计:问题与求解方法》——2.15节算术表达式
- matter协议的关键特性
- 什么是转义字符?转义字符有哪些?为什么使用转义字符?
- luogu P4556 [Vani有约会]雨天的尾巴
- BottomNavigationView--基本使用总结
- matlab改变图像像素吗,在图像中随机更改像素值程序——matlab
- pandas中pd.groupby()的用法
- 走近科学:揭秘在线DDoS攻击平台
- 三步走,教你高效管理好团队
- ubuntu下安装杀毒软件Antivir
- 【AJAX是什么】【AJAX的基本使用】
- 【总结】本地springboot连接腾讯云Redis