学习自:https://www.zhihu.com/question/25745472

贴图:不愿意做成 3d 的就用照片替代了一下,例如要做个门,为了省事用一张照片替代。

纹理:一张贴图产生无数张效果叫做纹理,比如墙纸有很多花,其实是一朵花阵列的,拉伸之类的形成了贴墙纸的效果,这就是纹理。

材质:反光,折射,透明度,自发光,这些都属于材料的光学特性和视觉特效被称为材质。比如贴图是不锈钢的,但是需要实时发反光线光是用贴图是解决不了的,就需要不锈钢材质才可以解决。

贴图是一张照片,用于替代模型。纹理是重复,阵列,缩放的贴图。材质是视觉层面的表现力。


1、纹理即“纹路”,每个物体表面上不同的样子,譬如说木头的木纹状。

2、贴图是图,最简单的形式是 ps 之类的软件做出来的一张图,这些图在 3D 中用来贴到物体的表面,用来表现物体的“纹理”。

3、材质主要是用来表现物体对光的交互(反射、折射等)性质的。譬如金属对光的反射和毛毯对光的反射性质完全不一样,那么对 3D 程序来说,这样的差别就通过材质这个属性来计算出不同的颜色。

上面是最简单的说法。对于 2 来说,在实际的 3D 程序中,贴图经过历史的演化,出现了很多的其他用作不同场合的种类,譬如有凹凸贴图用作计算物体表面的凹凸感,这个就不是严格意义上的纹理作用。对于3来说,程序员往往让“材质”这个东西包含贴图在内,也就是在程序里,材质就是(a)各种贴图和(b)物体对光的交互性质的集合。


整个 CG 领域中这三个概念都是差不多的,在一般的实践中,大致上的层级关系是:

材质 Material 包含贴图 Map,贴图包含纹理 Texture。

纹理是最基本的数据输入单位,游戏领域基本上都用的是位图。此外还有程序化生成的纹理 Procedural Texture。

贴图的英语 Map 其实包含了另一层含义就是“映射”。其功能就是把纹理通过 UV 坐标映射到 3D 物体表面。贴图包含了除了纹理以外其他很多信息,比方说 UV 坐标、贴图输入输出控制等等。

材质是一个数据集,主要功能就是给渲染器提供数据和光照算法。贴图就是其中数据的一部分,根据用途不同,贴图也会被分成不同的类型,比方说 Diffuse Map,Specular Map,Normal Map 和 Gloss Map 等等。另外一个重要部分就是光照模型 Shader ,用以实现不同的渲染效果。


贴图英文叫做 map,最有名的是 lighting map,即光照贴图,光照贴图是生成或者绘制出来,用于物体表面模拟光照效果的。

而纹理英文 texture,包括手绘,以及照片加工,过程生成三种方式产生, 并且在 opengl 术语中,显存中保存的图像数据,也称为纹理,显存中有多种纹理,包括深度 texture,颜色 texture, 法向量 texture。

而材质,英文名 material,在 ogre 中,会写一种材质文件,用于描述渲染一个对象采用哪些技术, 如何使用纹理等信息, 而在 3dmax,maya 等建模软件中,材质球也表示类似的意思,即描述如何渲染一个对象。

通过分析这些词的使用语境,来区分这些词,首先贴图和纹理的区别,例如分析常见的三种贴图 法向量贴图 normal map,反射贴图 reflection map,环境贴图等, 就指这些技术使用的纹理,以及对应的纹理坐标集。 因为 cube 环境贴图需要六张纹理,以及需要生成对应的纹理坐标。

而材质概念则包含这些贴图技术,以及shader渲染程序,因此属于更高的层次。


贴图是现象,纹理是特征,材质是性质。

比如说木头,贴图只有看着像木头,摸上去则是平面;纹理是看上去摸上去都像木头,但不一定真是木头;材质是不仅看和摸都像,还具有木头纤维各向异性之类的材料特征。


Unity 渲染主要是通过材质 (Materials),着色器(Shaders) 和纹理 (Textures) 来做的。贴图和纹理依附于材质存在,着色器使用一定算法确定纹理和贴图等信息对 Mesh 的渲染方式。贴图就是纹理,这两个词其实是指的同一个东西,属于翻译导致的歧义,texture 被翻译成了纹理和贴图。

  • 材质是对如何渲染一个对象的表面的定义,对包括用到哪些纹理和贴片信息,颜色色彩和深浅等等

  • 着色器是对于要渲染的每个像素点的着色的计算和算法,主要由一些小脚本组成

  • 纹理是一些位图


再啰嗦3句:
1 贴图 ~ 纹理 ~ Texture, 就是美术提供的 png 图片,我这里的 2D 游戏,用的就是这个,行内简称“换皮”

2 材质 ~ Material ~ shader,一般 Unity3D 软件自动生成,例如 TK2D 默认提供了很多,几乎不用考虑。

3 图集 ~ Atalas:独立一个 Texture (1个png) 在 CPU 下,会多 1 个 Draw Call,一般会把 n 个 png,打包为一个 png(例如 1024*1024),然后同步生成 UV 信息使用。

【技术美术】贴图、纹理、材质的区别相关推荐

  1. 纹理、贴图、材质的区别

    这三个在图形学里实际上是差不多的概念,区别在于:材质 > 贴图 > 纹理 纹理(texture):位图,像素矩阵. 贴图(map):把纹理映射到3D物体表面.有时候合称纹理贴图,这时指的是 ...

  2. 【技术美术图形部分】2.2 模型与材质基础

    记录之前膜拜一下这节课的大佬,才大三,我一个研二菜狗留下不学无术的泪水! May佬提到,这次课程安排的目的是给美术同学一个缓冲的空间,我的话在写这篇学习笔记就尽量加入一些自己的理解. 友情提示!才发现 ...

  3. 【技术美术图形部分】纹理基础1.0-纹理管线

    目录 1 纹理三大问 1.1 What--针对物体表面属性进行"建模" 纹理 Texture 纹理值 Texture Value 纹素 Texels 1.2 Why--降低建模工作 ...

  4. 【技术美术美术部分】AO贴图的烘焙及应用

    写在前面 计划完整学习AO相关,先从最直观的美术角度看看AO贴图如何烘焙及应用的,我觉得能更好的帮助我学习和理解,因此美术向的学习排在了图形学算法学习的前面.文中图片都是直接截图别人视频的内容,如有侵 ...

  5. 从0开始的技术美术之路(七)模型与材质基础

    本篇参考B站视频 "技术美术百人计划"·霜狼_may : <Shader入门精要>·冯乐乐女神著: 本篇主要用于自我复习,如有疑问或发现有什么错误,请多指教~ 本篇内容 ...

  6. 从0开始的技术美术之路(十二)Bump Mapping(凹凸贴图映射技术)

    本篇参考B站视频 "技术美术百人计划"·霜狼_may : 视差云的实现 https://zhuanlan.zhihu.com/p/83355147 PBR白皮书https://zh ...

  7. 【技术美术图形部分】AO理论及优化 AO贴图如何参与渲染

    写在前面 昨天从美术的角度出发,对AO贴图参与到次世代建模流程中的过程进行了学习.今天从图形学角度学习环境光遮蔽. 封面图截取自实时渲染GI|Ambient Occlusion:AO.SSAO.HBA ...

  8. 技术美术知识学习3600:纹理压缩

    学习教程来自:[技术美术百人计划]图形 3.6 纹理压缩--包体瘦身术 笔记总结 什么是纹理压缩 纹理压缩是为了解决内存.带宽问题,专门在计算机图形渲染系统中存储纹理而使用的图像压缩技术 为什么要纹理 ...

  9. 技术美术百人计划学习笔记(五)纹理

    视频链接:[技术美术百人计划]图形 1.3 纹理的秘密 思维导图:  纹理:一种容器,除了包含具体储存的信息,还包含纹理采样的一些设置  二维纹理:宽+高+想要储存的信息(比如RGBA值/高度/纹 ...

最新文章

  1. PatBlt - [Daliy APIs]
  2. 编码互换变量c语言,【剑仙教程】TC。字符 和字符编码 互换。
  3. (十二)java版电子商务spring cloud分布式微服务- Spring 4.2.2以上版本和swagger集成方案和踩过的坑...
  4. Linux环境下启动Tomcat太慢
  5. 多媒体技术创新开启“科技+文化”新“视”界
  6. mapPartition方法与map方法的区别(转载)
  7. c位边上还有什么位_【一点资讯】那些有趣而搞笑的GIF动画:为让出c位,站边上拍照还是谦虚礼貌的 www.yidianzixun.com...
  8. Java多线程系列(九):CountDownLatch、Semaphore等4大并发工具类详解
  9. DevOps实践-从0到1搭建敏捷团队的持续集成环境
  10. jquery时期到计时插件
  11. SPA(单页面应用)和MPA(多页面应用)
  12. linux实用的日志分析脚本
  13. Tricks(二十七)—— 如何在不使用 np.argsort 的情况下获得排序后元素的下标
  14. c语言文本编辑器源代码_程序员专属的10个免费编程文本编辑器,哪个是你的最爱?...
  15. shader之——shadowGun代码分析
  16. C#处理JSON格式数据
  17. 利用Matlab实现单像空间后方交会
  18. Vue 前端框架接入QQ在线客服
  19. 全面 一文理解微服务高可用的常用手段
  20. Java 优惠券最优使用实现

热门文章

  1. 【zz】P2P技术简介—by红瞳
  2. 唐毅:带领和数集团,做好科技成果与创新需求的“摆渡人”
  3. 【IMRaD】如何“科学地”写一篇科学研究论文
  4. java多个IO流性能PK——MappedByteBuffer问鼎
  5. 怎么对阿里iconfont两个项目中的字体图标合并
  6. msvcp120.dll一键修复工具,msvcp120.dll文件修复之后还会丢失吗?
  7. doe五步法_minitab中实验设计(doe).pdf
  8. 中国人工智能芯片行业经营效益及投资价值评估报告(2022-2027年)
  9. shell win7 乱码问题
  10. 2021阿里云ecs云服务器年终钜惠:1核/2G/50G/1Mbps/65元/年,3年180元,续费3.5折