紫外线展开
如果您已使用ModelBuilder在2D素材的顶部添加新对象(例如,在建筑物中添加了新窗口或在街道旁添加了额外的垃圾箱),则无法将2D素材投影到这些对象上,因为它们是从未出现在原始镜头中。相反,您需要从其他位置提供纹理并将其映射到3D对象的表面上。
一个额外的多维数据集已添加到 现场。它不能使用 原始素材。 |
在这里,立方体已经 单独纹理。 |
要将纹理图像映射到3D对象的表面,首先需要通过称为UV解包的过程将3D对象展平到2D空间中。这将为对象中的每个顶点生成UV坐标,从而使您可以将3D对象表面上的点映射到纹理图像中的像素。
将3D立方体展平为2D空间。 |
在编辑多维数据集的同时预览纹理图像 紫外线坐标。 |
小费: UV只是2D坐标,告诉3D应用程序如何将纹理应用于模型。之所以选择字母U和V,是因为X,Y和Z已经用于表示3D空间中对象的轴。U坐标表示2D纹理的水平轴,V坐标表示垂直轴。
快速开始
UV展开的过程大致如下:
1. | 定义在何处切割模型以将其展平到2D空间。看到在模型上创建接缝。 |
2. | 解开模型并预览结果。看到解开模型并预览其UV。 |
3. | 根据需要编辑生成的UV。看到编辑UV。 |
4. | 将纹理应用于模型。看到应用纹理。 |
在模型上创建接缝
要准备模型以进行UV展开,需要标记一些接缝。接缝告诉ModelBuilder允许在哪里切割模型以将其展平到2D空间。
小费: 如果没有足够的接缝标记,则展开的效果会很差,因为许多重叠的面以及拉伸和变形。另一方面,太多的接缝会导致难以对物体进行纹理化,因为接缝中的间隙很容易在纹理化的物体上变得明显。如果可能的话,最好将接缝隐藏在看不见的区域。
创建接缝
1. | 如果您使用同一ModelBuilder节点创建了多个对象,请单击在节点属性中隐藏所有其他对象,除了要为其生成UV的对象。 |
2. | 在ModelBuilder工具栏中,单击激活紫外线模式。 |
3. | 重复以下一项或多项操作,直到形成良好的接缝为止: |
• 要将边缘标记为接缝,请在“查看器”上单击鼠标右键,然后选择edge selection。在模型上选择一条边,单击鼠标右键,然后选择mark as seam。
• 要将边缘环标记为接缝,请在Viewer上单击鼠标右键,然后选择edge loop selection。在模型上选择一条边环,单击鼠标右键,然后选择mark as seam。
• 要将面部周围的所有边缘标记为接缝,请在“查看器”上单击鼠标右键,然后选择face selection。在模型上选择一个面,单击鼠标右键,然后选择mark as seam。
小费: 您也可以选择一个面环并将其周围的所有边缘标记为接缝。为此,请在模型上至少选择两个面,右键单击并选择select face loop。然后,再次在查看器上单击鼠标右键,然后选择mark as seams。
• 要从接缝集中删除边缘,边缘环或面,请在“查看器”中将其选中,右键单击并选择unmark as seam。
• 要清除所有接缝,请在对象上单击鼠标右键,然后选择clear all seams。
在Viewer中,任何标记为接缝的边缘均以红色显示。
4. | 继续解开模型并预览其UV下面。 |
小费: 为建筑物(或任何其他大致立方体或圆柱形的物体)创建一组好的接缝的最简单方法是:1)选择顶面并将其标记为接缝,2)选择底面并将其标记为接缝,以及3 )沿模型侧面选择将顶部连接到底部的边,并将其标记为接缝。
解开模型并预览其UV
对接缝设置满意后,就可以拆开模型了。
展开模型并预览其UV
1. | 右键单击查看器,然后选择object selection。 |
2. | 右键单击您的模型,然后选择unwrap。 |
“查看器”窗口周围会出现一个彩色边框,指示操作正在进行中。
3. | 按Return完成包装。 |
ModelBuilder会为模型上的每个顶点生成UV值。解开的模型将显示在Viewer左上方的UV预览窗口中。
4. | 要将2D纹理图像显示为UV预览窗口中的背景,请将图像连接到ModelBuilder的tex输入并确保Preview ModelBuilder属性(或在Viewer顶部)中的下拉菜单设置为tex input。也要看tex在3D查看器中的模型上输入,设置display到textured要么textured+wireframe在ModelBuilder属性中。 |
5. | 要放大或缩小UV预览窗口,请按Ctrl/Cmd+Alt并拖动。 |
6. | 要平移UV预览窗口,请按Ctrl/Cmd并拖动。 |
7. | 要更改UV预览窗口的大小,请单击并拖动其右下角。 |
8. | 要隐藏UV预览窗口,请禁用uv window在查看器顶部。 |
9. | 继续编辑UV下面。 |
小费: 如果对生成的UV不满意,可以右键单击模型并选择clear existing uvs。如有必要,您也可以更改接缝并再次展开模型。每次执行此操作时,ModelBuilder都会用新生成的UV替换您拥有的UV。
编辑UV
您可以调整“查看器”顶部的控件,或在UV预览窗口中手动编辑UV。
1. | 调整查看器顶部的以下控件: |
• iterations -解包器应用其有关如何将UV坐标移向正确位置的规则的次数。这为您带来了速度与质量之间的权衡:迭代次数越多,结果越好,但解包花费的时间更长。请注意,结果只能改善到一定程度,而该点取决于模型的复杂性。
• threshold -解包器在达到最大数量之前停止iterations如果发现迭代之间的改进可以忽略不计。的threshold控制告诉它多少变化可以忽略不计。如果迭代之间的变化量低于阈值,则解包器将停止。这是权衡质量以提高速度的另一种方法。如果需要更高质量的结果,通常使用此方法: iterations但展开器在达到最大值之前就停止了,您可以降低阈值以使其继续运行。
• separation -解包中每个补丁之间保留的像素数。如果补丁之间没有足够的像素,则在使用纹理时,相邻补丁可能会渗色。较高的值表示间距更广的色块,但纹理图像中的浪费空间也更多。
在编辑这些控件时,“ UV预览”窗口将更新,以允许您查看更改的效果。
2. | 如有必要,还可以在UV预览窗口中手动编辑UV: |
• 要编辑单个顶点,请将其拖动到新位置。
• 要一起编辑多个顶点,请选择它们,然后使用出现的转换插孔平移,旋转或缩放选择。转换插孔与其他地方使用的插孔相同Nuke,因此所有控件的工作方式相同。例如,您可以单击并拖动手柄以从中心向外扩展,或者Ctrl/Cmd+单击并拖动以从另一边向外缩放。
3. | 继续应用纹理。 |
应用纹理
此时,可能是您场景中仍然有几个对象要将相机镜头投影到该对象上(请参见将纹理投影到形状上),但有一个对象需要不同的纹理。有两种方法可以做到这一点:
• 您可以将模型导出为单独的几何节点,并使用ApplyMaterial节点对其进行纹理化。如果完成并锁定了几何图形,这可能是一种方便的工作方式,因此您无需回去更改它。但是,这样做带来的损失是“实时”视图:如果确实需要返回并编辑对象,则必须再次将其导出。看到方法1。
• 或者,您可以在ModelBuilder节点之后直接添加ApplyMaterial节点,并告诉ApplyMaterial忽略所有与您为其提供的过滤器都不匹配的几何。看到方法2。
方法1
1. | 在ModelBuilder属性中,选择要不同纹理的对象。 |
2. | 在属性面板的底部,将烘焙菜单设置为Selected geometry然后点击Bake。 |
ModelBuilder为所选对象创建一个几何节点。
3. | 从工具栏中,选择3D > Shader > ApplyMaterial创建一个ApplyMaterial节点。 |
4. | 将您在步骤2中创建的几何节点连接到ApplyMaterial节点的未命名输入。 |
5. | 然后,将2D纹理图像连接到mat ApplyMaterial节点的输入。 |
ApplyMaterial节点从mat输入到3D几何对象上。(要能够在3D查看器中看到它,您可能必须在ModelBuilder属性中隐藏该对象。)
6. | 将ApplyMaterial节点连接到Scene节点,并使用ScanlineRender节点渲染连接到该场景的所有对象。 |
方法2
1. | 从工具栏中,选择3D > Shader > ApplyMaterial创建一个ApplyMaterial节点。 |
2. | 将ApplyMaterial节点的未命名输入连接到您的ModelBuilder节点,然后将mat输入到2D纹理图像。 |
默认情况下,ApplyMaterial从mat输入到ModelBuilder节点中的所有对象上。
3. | 要将纹理仅应用于特定对象,请打开ApplyMaterial属性并设置filter至name。这使您可以告诉ApplyMaterial忽略任何与过滤器不匹配的几何。 |
4. | 要设置过滤器,请点击choose按钮。在打开的对话框中,选择要将纹理应用到的对象,然后单击OK。 |
小费: 你也可以Ctrl/Cmd+点击或Shift+单击以选择多个对象。
有关ApplyMaterial的更多信息,请参见使用ApplyMaterial节点应用材料。
5. | 将ApplyMaterial节点连接到Scene节点,并使用ScanlineRender节点渲染连接到该场景的所有对象。 |