美术 2.4 uv原理基础
uv原理基础
uv是什么?
uv就是一张二维图像,uv映射就是将二维图像投影到三维模型的表面以进行纹理映射的3D建模过程。命名为uv的原因是因为x,y,z被3D用了,为了和3D区分开来所以使用uv。
U代表水平方向,V代表垂直方向,所以U和V就代表了2D纹理的轴,而X,Y,Z则用于表示三维模型空间中3D对象的轴。UV的范围都是[0,1]
uv展开
绘制模型表面的细节是在模型上绘制的,在导出时要变成2D的UV贴图。利用工具,可以将模型表面细节变成2D图片,即UV贴图。而这个利用工具将模型表面细节变成UV贴图的过程就叫做UV展开。
球体的uv
动物的uv
武器的uv
人物的uv
家具的uv
uv壳 分别用平面,球体,立方体投射在模型上
uv的拉伸和打直
uv的拉伸和打直能够节省空间。
网游使用的贴图尺寸比较小,需要做UV的拉伸和打直,尽量最大化合理利用空间。
次时代使用的贴图尺寸比较大,可以适当的拉伸和打直UV。
uv规范和要求
- 扩边值(溢边值):512-2个像素、1024-4个像素、2048-6至8像素(减少溢色的可能,这个要求会根据不同的项目会有不同的要求规范)
- uv该打直的必须得打直(这个概念在场景贴图绘制中尤为重要)
- uv之间一定要有间隔,间隔像素为4-8个之间(这个要求会根据不同的项目会有不同的要求规范)
- uv除非在能够很大程度上提升利用率的情况下,不允许uv倒着放的情况
- 同材质uv要尽量的放在相邻位置
- 相邻uv断开一定要放相邻的位置,并且焊接接线要保持一致
- 通道光影uv不允许翻转,叠放。但是在一定程度上允许拉伸
利用棋盘格来分析UV拆分质量与UV缩放
- 模型导出会有几套UV?
如果在3d模型中只做了一套uv,将模型导入Unity的时候,在导入设置中勾选Generate Lightmap UVs,unity会自动为我们生成用于光照贴图的uv1,和用于动态光照的uv2。
比如Unity自带的物体box,sphere就自带两套uv。第一套是正常的,比如方块可以每个面是同一个uv。但是第二套需要烘焙光照信息,所以默认是全展开,纹理看出来要小些、也有一些材质会用到第四套UV,比如Unity的speedtree。
- 模型多uv有什么作用?
做很多效果时,使用多UV可以避免使用多材质,或者多贴图,性能更好。
而额外的uv可以代替很多mask贴图实现的效果。
- 如何自己在模型中添加第二套UV
3DMax和Maya等软件都能对模型加多套uv。注意:模型在fbx文件格式中里可以保留多套uv,但是在obj文件格式里只能保留默认的第一套。另外Unity里现在貌似最多支持四套。
展UV软件-unfold3D RizomUV
- 视图操作-3D视图
Alt+左键:旋转
Alt+中键:移动
Alt+右键:平滑缩放
- 视图操作-UV视图
Alt+中键:移动
Alt+右键:平滑缩放
- 视图操作-视图切换
E:单独显示3D/UV视图(把鼠标指针放在3D/UV视图上可以选择视图,然后按E可以单独显示3D/UV视图)
Ctrl+E:切换视图(单独显示3D/UV视图后,按Ctrl+E切换视图,再按E可以切换到默认状态,同时显示3D/UV视图)
- 选择
F1~F3:选择点、线、面
F4:选择整块UV
F5:编辑工具(Tab键可以临时打开显示变换模式操纵框)
Ctrl+左键:加选
Ctrl+Shift+左键:减选
Q:选择工具
- UV操作
C:切割UV
W:缝合UV
U:松弛、展开UV
Space/D+左键:缩放UV(D键只能对整块UV操作)
Space/D+中键:移动UV
Space/D+右键:旋转UV
- 显示
F:最大化显示选择对象
A:显示全部对象
参考链接