




下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、图文详解 Unity3D 中 Material 的 Tiling 和 Offset 是怎么回事阅读目录 (Content)Tiling 和 Offset 概述 3DS 格式解析 Offset 是什么意思 Tiling 是什么意思总结图文详解 Unity3D 中 Material 的 Tiling 和 Offset 是怎么回事 回到顶部 (go to top)Tiling 和 Offset 概述 Tiling 表示 UV 坐标的缩放倍数, Offset 表示 UV 坐标的起始 位置。这样说当然是隔靴搔痒。下面用 *.3ds 文件作为模型, 介绍 Tiling 和 Offset 到底是怎么 回事。
2、回到顶部 (go to top)3DS 格式解析比如我有这样一个 tank_player.3ds模型。右侧的select处的图 片就是贴图。*.3ds文件最基本的内容包括顶点列表Vertices、贴图坐标列表UVs、面列表Faces其中Vertices和UVs的数目相等。 下面就是用文本描述的 tank_player.3ds 文件的内容,这是一 个树结构,用先序遍历即可将其改写为二进制的 3ds 文件。 这个 XML 结构就是从二进制的 tank_player.3ds 分析来的。1 <_MainChunk Length=8386>2 <_CVersion Length=10&
3、gt;3</_CVersion>3 <_3DEditorChunk Length=8370>4 <_ObjectBlock Length=8364>5 <StringLength=16>Tank_PlayerMesh</String>6 <_TriangularMesh Length=8342>7 <_VerticesList Length=3776>8 <numVertsLength=2>314</numVerts>9 <Vector X=0.7707 Y=52.527Z=104
4、.4209 Length=12 />10 <Vector X=6.2672 Y=58.6059 Z=104.4909 Length=12 />11 12 <Vector X=-0.4168 Y=65.2885 Z=104.4949 Length=12 />13 </_VerticesList>14 <_MappingCoordinatesList Length=2520>15 <TexCoordCount Length=2>314</TexCoordCount>16<TexCoord u=0.7052 v=0.
5、9314Length=8 />17 <TexCoord u=0.7434 v=0.9053Length=8 />18 19 <TexCoord u=0.7701 v=0.9442Length=8 />20 </_MappingCoordinatesList>21 <_FacesDescription Length=2040>22 <numIndicesLength=2>254</numIndices>23 <triIndex v1=0 v2=1 v3=2 Length=8/>24 <triIndex
6、 v1=0 v2=2 v3=3 Length=8/>25 26 <triIndex v1=4 v2=5 v3=6 Length=8/>27 </_FacesDescription>28 </_TriangularMesh>29 </_ObjectBlock>30 </_3DEditorChunk>31 </_MainChunk> 这里面的 _VerticesList 是顶点坐标列表, 每个 Vector 都是 3D 模型中的一个顶点; _MappingCoordinatesList 是贴图坐标列 表 UVs ,每个
7、TexCoord 都是在贴图上的一个坐标点。 FacesDescription 则是面列表, 由于 Vertices 和 UVs 的数目相 等,每个 triIndex 都用索引指定了 3 个 vertex 和 3 个 UV 。3 个 vertex 就在 3D 世界画了一个三角形,这些三角形就组成 了上图所示的坦克模型。 3 个 UV 则在贴图上画了一个三角 形。贴图是这样的:而 UVs 在贴图上画出的三角形则如下图所示。可以看到是完全对应的。 一个 triIndex 指定了 3D 模型的一个 三角形平面A,也指定了贴图上的一个三角形平面B,把B贴到 A 上,就是我们看到的 3D 模型了。这么半
8、天都在讲解 3DS 文件格式, 是为了方便下面开始说明 Tiling 和 Offset 的用法。回到顶部 (go to top)Offset 是什么意思 为了简单,我们看下面这个模型。它就是 4 个三角形拼接成 的一个正方形。此模型的 UVs 画出来是这样的:此模型的贴图如下。Offset 这个概念就从这个贴图上开始说。 如下图所示,贴图左下角为原点 (0, 0),右上角为 (1, 1) ,画直 角坐标系,横轴为X方向的Offset,纵轴为丫方向的Offset。Offset 的作用,就是决定 UVs 在贴图上的起始位置。 下图所示,是 Offset 在 X 和 丫 轴都为 0 时的样子。 UV
9、s 坐 标框住了贴图下半块左边的那一部分,那么这部分贴图就会 被贴在模型上。所以你会看到这样的结果。现在我把 丫 轴的 Offset 设置为 0.5。意思是 UVs 的左下角变 成了(0, 0.5)。那么 UVs 在贴图上的贴合情形就如下图所示了,此时 UVs 框住了贴图上半边左侧的那块(红色的半圆) 。可以想象现在的模型是什么样子了吧? 回到顶部 (go to top)Tiling 是什么意思说完 Offset ,Tiling 就好理解了。 Offset 控制了 UVs 的起始位 置,Tiling则控制了 UVs的缩放比例。默认(1, 1)的缩放比例 就是原始比例。现在我把 Y 轴的 Tiling 改为 2。那么 UVs 与贴图的贴合情况就成了这样:贴图还是那个贴图, UVs 的纵坐标则都乘以 2 了。所以最后
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 客服培训班管理制度
- 宰杀厂刀具管理制度
- 家庭公司化管理制度
- 库房虫鼠害管理制度
- 引流产药物管理制度
- 影像科感染管理制度
- 德鲁克时间管理制度
- 快递员薪酬管理制度
- 快餐店卫生管理制度
- 总公司印鉴管理制度
- 浙江省温州市名校2025届七下数学期末考试试题含解析
- 《铁路旅客运输组织(活页式)》课件 7.3 旅客伤害应急处置
- 公司合同月结协议书
- 2025年海绵项目评估报告
- 农村生活污水治理专项施工方案
- GB/T 45545-2025厨房家具配合尺寸
- 临床血标本采集错误事件的根因分析
- 夫妻承诺书合同协议
- 云南2024年云南省社会科学院中国(昆明)南亚东南亚研究院招聘高层次人才笔试历年参考题库附带答案详解
- 2024北京西城区四年级(下)期末英语试题及答案
- DB36T-高速公路智慧服务区信息化管理平台技术规范 第1部分:数字基础设施
评论
0/150
提交评论