专业网站建设知识,遵义公司网站制作哪家好,现场直播的视频,建网站的重要性当物体表面并非是纯色的时候#xff0c;比如带波点#xff0c;斑纹或者表面有刮痕或被裂纹等#xff0c;这些效果该如何实现呢#xff1f; 这里我们需要提到一个概念是贴图#xff08;Maps#xff09;。Maps是覆盖在游戏物体上的2D图片#xff0c;用来设置表面的颜色、s… 当物体表面并非是纯色的时候比如带波点斑纹或者表面有刮痕或被裂纹等这些效果该如何实现呢 这里我们需要提到一个概念是贴图Maps。Maps是覆盖在游戏物体上的2D图片用来设置表面的颜色、specularity或metalness、物理纹理或其他相关属性。包含maps的图片文件称为纹理Textures。
纹理是什么 纹理Textures可以看做是普通的图像文件比如BMP,TIF,PNG和JPG。图像文件中的数据通过通道channels进行组织。黑白图像也称为灰度度grayscale image只有一个通道来表示每个像素的灰度值。彩色图像一般需要RGB三个通道每个像素使用RGB值来表示具体的某种颜色。还有一些图像文件格式会使用四通道RGBAA表示alpha用来调节透明度。 图像文件中的通道数据可以看做是数字矩阵。在材质中这些数字可以表示颜色或透明度之外的其他属性比如smoothnessspecularity或metalness甚至是顶点的法线信息等。 艺术家们通常通过Blender、3DMAX等3D建模软件来创造他们的3D模型这些软件也能够生成模型所需的纹理文件。我们也可以使用普通的2D图像文件当做纹理来使用,如下图所示 查看纹理文件属性 我们可以点击一个纹理文件然后在其Inspector面板中查看其属性。 其中Texture Type可以选择纹理的类型比如法线贴图、2D精灵、UI元素、光照贴图等。Texture Shape是贴图形状可以是2D平面、2D平面数组也可以是Cube或3D的。另外在底部预览窗口中可以选择纹理的单个通道比如R/G/B来看单个通道的值。 另外可以双击纹理文件其效果就和我们在资源管理器中双击打开图片文件一样会使用图片预览器或PS等软件来打开图片取决于图片的默认打开方式。 当我们在材质窗口中将我们的纹理拖动到了Inspector的Base Map左边的方框中后还可以设置Base Map的颜色这样可以得到纹理原始颜色和所选颜色的叠加的效果如下图 Tiled Textures 在材质的Inspector面板中可以看到Surface Inputs下有Tiling和Offset两个选项。 Tiling决定了mesh表面上会重复多少次纹理这个值越高我们的纹理就重复地越多单个纹理看起来也就更小。 Offset决定了我们从纹理的哪个位置开始应用到物体表面上。比如X设置为0.5表示从纹理的一半宽度的地方开始tiling。 这两个值在Editor中可以根据需要自行设置如下图我将Tiling设置为5Offset设置为X0.5Y0.5效果如下 UV贴图 对于一些简单的形状如球体或长方体纹理映射到物体mesh的哪个位置似乎不会影响很大。但对于其他复杂的物体就不是这样了。比如对于一个人形角色的身体来说其表面上可能会有皮肤衣服这些所有的东西都在一个材质中。此时如果纹理映射的位置不正确则角色就会看起来非常奇怪了比如该是耳朵的地方显示的却是眼睛刻意而为除外^_^。 当在建模软件中创建3D模型时软件会生成上面所提到的纹理生成的过程称为UV映射UV mapping。3D建模软件如BlenderMaya3DMax等会生成UV坐标的2D坐标集。UV坐标和普通的2D空间的XY坐标是类似的。UV坐标和mesh有关系而和场景中的3D空间无关。 UV映射表示的过程是将3D模型的表面展开到一个平面并将2D纹理贴图到这个平面上。在这个过程中建模软件生成要被重新包裹到模型上的纹理的UV坐标。