对于一个大学项目,我在ThreeJS中创建了一个threecsg减法。我想为这个网格应用纹理。但是处理后缺少的UV坐标给我带来了一些麻烦。这需要是一个 threecsg,因为这是一个项目要求。
这就是网格现在的样子:屏幕截图链接
我在这里找到了一些代码:THREE.js生成UV坐标
它确实让我更接近解决方案。侧面现在以正确的方式面向应用的纹理:屏幕截图链接
上行有很多奇怪的面孔。我试图使用三个。SimplifyModifier以获得更少的面,这样我就可以自己计算和设置uv坐标,但我失败了。
我认为这可能是一个解决方案,可以">只是迭代"上下两边,并在边界处"切割"纹理,就像网格是一个立方体一样。网格大约有 350 个面,我可能能够设置角顶点,但如果可以计算中间顶点的 uv 坐标会很好 - 但我不知道如何做到这一点。我不介意圆柱体被切断的一侧,因为您不会在最后看到它。
非常感谢!
我维护的 CSG 库保留了切割几何体的 UV 坐标。
https://github.com/manthrax/THREE-CSGMesh
http://vectorslave.com/csg/CSGDemo.html
http://vectorslave.com/csg/CSGShinyDemo.html
@JonasOe