我有一个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