我有一个GLTF模型,我想更新它的贴图纹理,但是一旦我这样做了,新的纹理就会显示出来,但我的模型的UV映射不再设置。
有没有一种方法可以在加载新纹理时保留UV映射?下面是我在网站上某个位置调用新地图纹理的代码:
model.traverse(child => {
if (
child instanceof THREE.Mesh
) {
child.material.map = newTexture;
}
})
我有一个GLTF模型,我想更新它的贴图纹理,但是一旦我这样做了,新的纹理就会显示出来,但我的模型的UV映射不再设置。
有没有一种方法可以在加载新纹理时保留UV映射?下面是我在网站上某个位置调用新地图纹理的代码:
model.traverse(child => {
if (
child instanceof THREE.Mesh
) {
child.material.map = newTexture;
}
})
当替换 glTF 模型的颜色纹理时,需要添加以下两行代码。
newTexture.encoding = THREE.sRGBEncoding; // color textures must be marked as sRGB
newTexture.flipY = false; // honor glTF's uv convention
THREE.sRGBEncoding
不正确。 - Mugen87