FoliMesh

适用于three.js的低多边形风格仙人掌与多肉

巨柱仙人掌、金琥、梨果仙人掌、龙舌兰和芦荟都以 GLB 格式提供,带 LOD0–LOD3、碰撞体和底部轴心。用 three/addons 里的 GLTFLoader 载入后,可以直接交给 THREE.LOD,用 lod.addLevel(mesh, distance) 按相机距离逐级切换。平面着色加顶点色,LOD0 通常只有几百到两千个三角面,没有贴图,也不用做 UV。

叶子是实体几何,不是 alpha 卡片:没有 alpha 测试,也没有透明 overdraw,这对移动端 GPU 很关键。颜色存在 COLOR_0,材质乘以顶点色即可。巨柱仙人掌用 InstancedMesh 撒开,龙舌兰和芦荟的不同种子用 BatchedMesh 混搭,隐形碰撞体交给 Rapier 或 cannon-es。WebGLRenderer 与 WebGPURenderer 都支持。

模型
5
细节层级
LOD0 – LOD3
格式
GLB · FBX · OBJ

关于低多边形风格

低多边形是渲染成本和包体体积都最低的风格。

  • 平面着色:每个面一个法线,呈现清晰的多面体效果,不需要法线贴图。
  • 颜色存储在顶点色(glTF COLOR_0)中:没有贴图、无需处理 UV,几乎不占显存。
  • 树叶是实体几何,而不是 Alpha 面片:没有 Alpha 测试和透明 overdraw,这对移动 GPU 很重要。
  • 场景中所有模型可以共用一个材质,树木很容易合批和实例化。
  • LOD0 的常见预算从几百到两千左右个三角形。

适合移动端、WebGL/WebGPU、VR、策略、城市建造和风格化独立游戏。在引擎中请使用会乘以顶点色的材质。

在three.js中使用

在 three.js 中,用 three/addons 里的 GLTFLoader 加载 GLB;只有当文件使用相应扩展时才需要 DRACOLoader 或 KTX2Loader。

  • 距离 LOD:使用 THREE.LOD,通过 lod.addLevel(mesh, distance) 添加 LOD0–LOD3,每帧根据与相机的距离切换级别。
  • 森林:InstancedMesh 一次 Draw Call 即可绘制成千上万个副本,BatchedMesh 可混合多种树木变体。THREE.LOD 不会作用于单个实例,需要自己按区块将实例按 LOD 分组。
  • 树叶:glTF 的 alphaMode MASK 会转换为 material.alphaTest,双面材质会自动设置 side: THREE.DoubleSide。
  • 碰撞网格:设为不可见,并交给 Rapier 或 cannon-es 等物理库使用。

同时适用于 WebGLRenderer 和 WebGPURenderer。

其他类别

其他风格的同款

其他引擎的同款