FoliMesh

Palms for Babylon.js

Babylon.js reads GLB through the glTF loader in @babylonjs/loaders: ImportMeshAsync for a single specimen, LoadAssetContainerAsync when you need many copies via instantiateModelsToScene. This set covers five species — Coconut Palm, Date Palm, Canary Palm, Washingtonia and Fan Palm.

Each model carries LOD0–LOD3, so lod0.addLODLevel(30, lod1) and addLODLevel(80, lod2) drop distant fronds, a collision mesh pivoted at the base for checkCollisions or Havok PhysicsAggregate, and leaves that arrive as alpha-tested PBRMaterial. The base pivot makes placement on uneven terrain straightforward, and thousands of palms run as thin instances with one draw call per mesh — handy for beach, island and oasis scenes that have to hold a steady frame rate in the browser.

Models
5
Levels of detail
LOD0 – LOD3
Formats
GLB · FBX · OBJ

Using it in Babylon.js

Babylon.js loads GLB through the glTF loader in @babylonjs/loaders: ImportMeshAsync (or SceneLoader.ImportMeshAsync in older code), or LoadAssetContainerAsync when you need many copies via instantiateModelsToScene.

  • LOD: lod0.addLODLevel(30, lod1), addLODLevel(80, lod2) and so on; passing null as the mesh hides the object beyond that distance.
  • Thousands of trees: thin instances (thinInstanceAdd with matrices) render in one draw call per mesh; use regular createInstance when each tree needs its own picking or logic.
  • Leaves: glTF MASK maps to alpha-tested PBRMaterial (MATERIAL_ALPHATEST).
  • Collision mesh: set isVisible = false and use it with checkCollisions or Havok physics (PhysicsAggregate with a MESH shape).

Packs

Other categories

Same in other styles

Same for other engines