首页 > 解决方案 > 我的纹理没有正确显示 Three.js(已解决)

问题描述

我最近发现了 Three.js 并开始使用它,我正在尝试以编程方式将纹理应用到我在搅拌机中设计的 GLTF2 网格,它可以工作,但纹理没有像应有的那样显示。

我的代码(工作)

document.addEventListener('click', () => {
  let texture = textureLoader.load( './gagency.jpg' );
  texture.center.set(0.5, 0.5)
  let material = new THREE.MeshBasicMaterial( { map: texture } );
  meshLaptop.children[2].material = material; //the screen of the 3d laptop
})

我尝试应用的纹理

要显示的屏幕

结果

渲染结果

我试图在搅拌机中重做平面网格的 uv 映射,但问题似乎与此无关。

感谢您花时间阅读我的问题,我希望有人已经在我的情况下找到了解决方案,如果您需要更多代码或屏幕截图,请随时询问。

标签: three.jstextures

解决方案


新答案:经过更多测试后,我发现问题确实是在我的浏览器中未正确重新加载屏幕的 UV 映射,如果类似的附加到您清理 UV 贴图,您会很高兴

旧答案:我没有更改任何内容,并且在清除了一些缓存后问题就消失了,我仍然不知道是什么导致了问题,因为我在发布我的问题之前已经尝试清空浏览器缓存并且它没有做任何事情,但现在已修复


推荐阅读