该技能文档面向使用 Three.js 创建三维几何体的开发者,内容围绕几何体的生成、组织与性能优化展开。
用途方面,文档提供从基础到进阶的几何体创建方式:内置形状(立方体、球体、平面、圆、圆柱、圆锥、圆环、圆环结、环、胶囊、多面体等)、基于路径的形状(LatheGeometry、ExtrudeGeometry、TubeGeometry)、文字几何体,以及直接构建 BufferGeometry 自定义顶点数据。
主要能力包括:通过 BufferAttribute 设置位置、法线、UV、顶点颜色和索引;修改顶点位置并标记 needsUpdate、重算法线与包围体;使用交错缓冲区优化内存布局;生成边线(EdgesGeometry)与线框(WireframeGeometry);创建点云、线、线环、线段;用 InstancedMesh 高效渲染大量相同几何体并支持逐实例颜色与运行时更新;用 InstancedBufferGeometry 添加自定义逐实例属性;借助 BufferGeometryUtils 合并几何体、计算切线、交错属性。
使用方式以代码示例呈现:先导入 three,构造几何体与材质生成 Mesh 加入场景;BufferGeometry 通过 setAttribute/setIndex 装配数据;文字几何体需加载字体文件;常见模式包括居中、缩放到适配、克隆并变换、形变目标。
适用场景为 Three.js 场景中的三维形状建模、程序化几何生成、点云与线框可视化、大规模实例化对象渲染。
限制与注意事项:合并几何体要求属性一致;索引使用 Uint16Array 时顶点数上限约 65535;线段数越多越平滑但性能开销越大;顶点位置变化后需重算法线与包围体;不再使用的几何体应调用 dispose 释放。文档未涉及收费、平台或安装命令等信息。