Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/three.js/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
拉伸图像纹理以适合Three.js中的网格面_Three.js_Texture Mapping - Fatal编程技术网

拉伸图像纹理以适合Three.js中的网格面

拉伸图像纹理以适合Three.js中的网格面,three.js,texture-mapping,Three.js,Texture Mapping,我试图在three.js中实现以下内容: 我在sketchup中使用一些简单的彩色纹理制作模型,并使用collader导入器,结果如下所示: 现在我想动态地将一些照片加载到每个不同的平面上,但是我最终得到的是: 如您所见,每个图像都已加载,但它们非常小,并在曲面的其余部分重复 这就是我加载纹理的方式:(preload texture()只是一个简单的预加载程序) 如何获得填充曲面的纹理 谢谢 编辑-我在sketchup中使用了该模型,并设法使其稍微好一点,但不是很多 编辑2-仍然不走运,我

我试图在three.js中实现以下内容:

我在sketchup中使用一些简单的彩色纹理制作模型,并使用collader导入器,结果如下所示:

现在我想动态地将一些照片加载到每个不同的平面上,但是我最终得到的是:

如您所见,每个图像都已加载,但它们非常小,并在曲面的其余部分重复

这就是我加载纹理的方式:(
preload texture()
只是一个简单的预加载程序)

如何获得填充曲面的纹理

谢谢

编辑-我在sketchup中使用了该模型,并设法使其稍微好一点,但不是很多


编辑2-仍然不走运,我开始认为用代码从头开始构建它会更简单

选项1:我建议您这样做或下一步

1-.导入模型混合器
2-将搅拌机导出到threejs
3-使用这种充电方法

AgregarModeloBlender function (geometry, materials) {
      console.log(materials);
      material = new THREE.MeshFaceMaterial( materials );   
      modelo3d_ = new THREE.Mesh( geometry,material );  
      escenario.add(modelo3d_);
      modelo3d_.add(camera);    
      modelo3d_.scale.set(5,5,5);   
      modelo3d_.position.set(-900,25,850);
      modelo3d_.rotation.y=Math.PI;
}
4-。随后,trabajr独立使用纹理。 例如:

选项2:我建议您执行以下操作: 1 -. 创建几何图形(顶点)以修改纹理的每个面。 例如:


问候。

对不起,我粘贴到了错误的网站。哈,不用担心@WestLangley,我在那里有一点困惑!我没时间了,但你需要适当的紫外线。请参阅相关问题:虽然我没有遵循上述方法,但我确实相信其中一个选项已经足够了。我实际做的是在3DS Max中重建模型并导出obj,然后使用Three.js提供的转换器将其转换为json。
AgregarModeloBlender function (geometry, materials) {
      console.log(materials);
      material = new THREE.MeshFaceMaterial( materials );   
      modelo3d_ = new THREE.Mesh( geometry,material );  
      escenario.add(modelo3d_);
      modelo3d_.add(camera);    
      modelo3d_.scale.set(5,5,5);   
      modelo3d_.position.set(-900,25,850);
      modelo3d_.rotation.y=Math.PI;
}