FoliMesh

Rocks for Bevy

Bevy loads glTF/GLB through the AssetServer, so these rocks arrive as a GltfAssetLabel::Scene(0) handle spawned with SceneRoot. The set covers seven pieces — Pebbles, Stone, Boulder, Rock Slab, Rock Scatter, Cliff and Cliff with Boulders — each with LOD0–LOD3, a collision mesh, a pivot at the base and GLB export.

Rock Scatter and Pebbles share one mesh and material, so Bevy batches and instances the copies automatically and a talus field stays cheap. Give the four LOD entities a VisibilityRange with start and end margins for dithered crossfade. Cliffs make natural level borders. Bevy has no built-in physics: build colliders with Avian or bevy_rapier from the collision mesh. FBX and OBJ need third-party crates, so keep to GLB. Each new seed gives a new variation.

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

Using it in Bevy

Bevy loads glTF/GLB through the AssetServer: asset_server.load(GltfAssetLabel::Scene(0).from_asset("tree.glb")), spawned with SceneRoot; individual meshes and materials are addressable by label. FBX and OBJ need third-party crates, so GLB is the format to use.

  • LOD: give the LOD0–LOD3 entities a VisibilityRange (start and end margins) for distance switching with dithered crossfade — Bevy's HLOD mechanism.
  • Leaves: glTF alphaMode MASK becomes AlphaMode::Mask(cutoff) on StandardMaterial, and double-sided materials disable back-face culling.
  • Entities that share a mesh and material are batched and instanced automatically, so many tree copies stay cheap.
  • Collision: Bevy has no built-in physics; build a collider from the collision mesh with Avian or bevy_rapier.

Packs

Other categories

Same in other styles

Same for other engines