我开始学习 ThreeJS。我有一些非常复杂的模型要展示。
这些模型来自我的客户提供的 Autocad 文件。
但有时模型中的细节数量对于网站的目的来说太多了。
我想减少模型中的顶点数量以简化显示并提高性能。
这可能在 ThreeJS 中实现吗?或者是否有其他解决方案?
我开始学习 ThreeJS。我有一些非常复杂的模型要展示。
这些模型来自我的客户提供的 Autocad 文件。
但有时模型中的细节数量对于网站的目的来说太多了。
我想减少模型中的顶点数量以简化显示并提高性能。
这可能在 ThreeJS 中实现吗?或者是否有其他解决方案?
有一个名为 SimplifyModifier 的修饰符效果很好。您可以在 Three.js 示例中找到它
如果您可以将模型导入 Blender,您可以尝试Decimate Modifier。在最新版本的 Blender 中,它具有可配置“数量”参数的三种不同方法。根据您的网格拓扑,它可能会在几乎没有视觉变化的情况下大幅减少多边形数量,或者即使是轻微的减少尝试也可能完全破坏模型。其他 3d 包应该包含类似的功能,但我从未使用过。
.
想到的另一件事:有时当我遇到一个太高多边形的 Blender 模型时,一个好的开始是检查它是否应用了细分修改器,如果有则删除它。虽然我不知道 Autocad 中是否有类似的东西,但可能值得研究。
我更新了 SimplifyModifier 函数。它适用于纹理模型。这是示例:
https://rigmodels.com/3d_LOD.php?view=5OOOEWDBCBR630L4R438TGJCD
您可以提取JS 代码并在您的项目中使用。