FoliMesh

适用于PlayCanvas的低多边形风格地被植物

PlayCanvas 把 GLB 当作 container 资源处理:把蕨类、草丛或芦苇拖进编辑器,就能得到带模型层级的 template;纯引擎代码里用 app.assets.loadFromUrl(url, 'container') 加载,再用 asset.resource.instantiateRenderEntity() 实例化。引擎没有内置 LOD 组件,因此需要一个小脚本比较相机距离,切换 LOD0–LOD3 实体的 render 组件。LOD0 的面数通常在几百到两千个三角面之间。

低多边形地被植物的颜色存放在顶点色(glTF COLOR_0)里,使用平面着色,所以没有贴图、不用做 UV、显存占用极低。叶片是实体几何而不是 alpha 卡片,没有 alpha 测试和半透明 overdraw,这对移动端 GPU 很重要。一个材质就能给所有模型共用,蕨类、草丛和芦苇因此容易合并进 batch group,或用硬件实例化绘制。

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

关于低多边形风格

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

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

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

在PlayCanvas中使用

PlayCanvas 把 GLB 当作 Container 资源。在编辑器中上传 GLB(FBX 导入时会转换为 GLB),即可得到包含模型层级的模板;纯引擎代码中使用 app.assets.loadFromUrl(url, 'container') 和 asset.resource.instantiateRenderEntity()。

  • LOD:引擎没有内置 LOD 组件,可用一个小脚本比较与相机的距离,切换 LOD0–LOD3 各实体的 render 组件。
  • 静态树木可共用一个 Batch Group 来合并 Draw Call;大片森林可通过 meshInstance.setInstancing() 和存放变换的顶点缓冲使用硬件实例化。
  • 树叶:glTF 的 MASK 会设置 StandardMaterial 的 alphaTest;双面树叶请将剔除模式设为 none。
  • 碰撞网格:添加 mesh 类型的 collision 组件和静态 rigidbody,并禁用其 render 组件。

其他类别

其他风格的同款

其他引擎的同款