Three.js - 导入时可以检测几何图形 'islands' 吗?

标签 three.js

我将 .3DS 模型导入 Blender 2.72b,然后使用 Three.js 导入/导出插件导出它们。该模型具有多个几何“岛”(独立的连接面和顶点组),每个几何“岛”都有自己的 Material 。我希望能够将每种 Material 与其相应的岛配对,而不必创建单独的 THREE.Geometry 对象。经过一番挖掘,我发现this question建议使用 THREE.MeshFaceMaterial 为一个对象实现多种 Material 。唯一的问题是该示例中的几何体是一个简单的立方体,而我的模型有数百个面分布在 2-5 个岛屿上。

Three.js 是否具有识别网格中几何“岛”的功能?

最佳答案

没有。 Three.js 没有识别网格中的几何“岛”的功能。

使用 MeshFaceMaterial 时,WebGLRenderer 无论如何都会将几何图形分解为 block - 每种 Material 一个 block 。这样做是因为 WebGL 支持每个几何体一个着色器。

我不会合并所有几何图形,然后使用 MeshFaceMaterial,只是让渲染器将单个几何图形分开。

如果您愿意,您可以合并共享单一 Material 的几何图形。

三.js r.69

关于Three.js - 导入时可以检测几何图形 'islands' 吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26849791/

相关文章:

javascript - 我无法理解使用 Javascript 执行以下数学方程

javascript - Three.js toShapes() 移至 v81 中的新类,如何访问它

javascript - Three.js raycaster 相交

javascript - 使用 three.js 单击网格获取像素的颜色值

javascript - THREE.js - CameraContros 和camera.up 向量

javascript - THREE.js 规范化

javascript - Three.js 有没有办法让几何体适应纹理

javascript - 渲染速度: more objects or more scenes?

javascript - 三.js + .OBJ加载: triangular faces only?

javascript - 从 three.js 保存模型