问题的史前:
链接到相关的question on CG (在一些编辑器中,比如下面提到的3 3dsmax模型中,关于UV展开)
我有一个型号的单件。它是从3DS Max导出的(纹理坐标)。
UVWs和object的截图。UVW的无用部分在右上角分组。
我使用这个纹理作为凹凸贴图(调整大小以减少问题中的位置,原来的大小是512x512)。
此模型使用THREE.OBJMTLLoader
加载并在浏览器中呈现。当然,如果我需要重用这个映射来添加另一个需要对象所有部分的纹理,那么这个纹理和UVW就变得毫无用处了。
现在,为了避免走出3DS Max,因为这个问题不是关于在那里建立一个模型。
现在让我们想象一下场景中某个地方存在的立方体(简单地说是THREE.BoxGeometry
) (scene.add( cube );
)。
我想在立方体的左边画一幅图。在右边,我需要放置一个凸点地图,在顶部将是一个light map
。在另一边,纹理地图可以以某种方式组合起来,或者仅仅是空的--我想这不是关键点。
就像这样:
但在这种情况下,每一张地图只占雪崩位置的1/16。就像这样:
当然,一些块可以被移动,每个地图将获得高达1/9的雪崩空间,但是I需要每个纹理的良好质量,所以对这样的每个纹理使用整个块(1/1)是很好的。
例如,纹理可以是512x512,凹凸贴图可以平铺(见史前图像)。
问题是:
发布于 2016-10-26 18:16:05
是否可以对单个对象使用几种不同的UWV来添加不同的纹理?
Three.js材料基本上支持2个UVs通道,但没有对给定纹理使用哪个通道进行控制。第一通道用于可耕种纹理(漫射、粗糙度等)。第二种是不可耕种的(AO,光图)。
也就是说,使用自定义几何和自定义材料,您可以使用任意多个uvs频道。唯一的限制是您的着色器中可用的最大属性(至少有8个)。
3 limits对uvs频道的数量也没有限制。
主要问题是以同样支持多个UVs通道的格式导出/导入您的模型。OBJ不知道。
是否有可能只使用UWV的一部分模型,以避免空间浪费?
对于不需要纹理的零件,您可以简单地使用不同的材料。
https://stackoverflow.com/questions/40268554
复制相似问题