【发布时间】:2019-10-21 18:35:15
【问题描述】:
我们想要创建一个 3d 鞋设计工具,您可以在其中设计图案并将它们上传到鞋中。
我正在尝试将图像放置在 Threejs 材料上。我可以更新地图,但纹理模糊。我是 Threejs 的新手,所以我没有清楚的概念。我不明白纵横比是问题还是其他问题。
这是我加载纹理的方式:
var texture_loader = new THREE.TextureLoader();
var texture = texture_loader.load( 'https://ik.imagekit.io/toesmith/pexels-photo-414612_D4wydSedY.jpg', function ( texture ) {
texture.wrapS = texture.wrapT = THREE.RepeatWrapping;
texture.offset.set( 0, 0 );
texture.repeat.set( 1, 1 );
vamp.material = new THREE.MeshPhongMaterial({
map: texture,
color: new THREE.Color('#f2f2f2'),
shininess: 20,
});
});
这就是我得到的
但预期的行为应该是
如果有人可以提供帮助,那就太好了。谢谢
这是Codepen代码的链接
【问题讨论】:
-
修复此问题通常需要您在 blender 等建模包中修复鞋模型的纹理坐标。纹理如何应用于几何体通常由其纹理坐标(通常称为 UV)定义。这通常不是您在代码中修复的问题,您可以在其中修复 uv editor of some modeling package
-
我可以完美地重复放置其他纹理。只有在 x 和 y 上重复为 1 时,它才会变得模糊。我认为已经为这个模型定义了 UV。
标签: javascript three.js 3d-model