FoliMesh

Árboles para Bevy

Bevy carga los GLB directamente con el AssetServer: asset_server.load(GltfAssetLabel::Scene(0).from_asset("oak.glb")) devuelve una escena que se instancia con SceneRoot, mientras que las mallas y los materiales siguen accesibles por etiqueta. Los 14 árboles — Roble, Pino silvestre, Abeto, Abedul, Sauce llorón, Arce, Baobab y los demás — vienen en ese formato. Para FBX y OBJ hacen falta crates de terceros en Rust, así que el GLB es la opción práctica.

Cada modelo trae LOD0–LOD3: agrega un VisibilityRange a las entidades LOD y Bevy hará el cambio por distancia con crossfade y dithering. Las hojas llegan como glTF alphaMode MASK y pasan a AlphaMode::Mask(cutoff); los materiales de doble cara desactivan el back-face culling. Las entidades que comparten malla y material se agrupan e instancian de forma automática, así que un bosque denso se mantiene ligero. La malla de colisión alimenta Avian o bevy_rapier, y cada semilla nueva da otra variación.

Modelos
14
Niveles de detalle
LOD0 – LOD3
Formatos
GLB · FBX · OBJ

Uso en Bevy

Bevy carga glTF/GLB a través del AssetServer: asset_server.load(GltfAssetLabel::Scene(0).from_asset("tree.glb")), instanciado con SceneRoot; las mallas y los materiales individuales se acceden por etiqueta. FBX y OBJ requieren crates de terceros, por eso conviene usar GLB.

  • LOD: asigna a las entidades LOD0–LOD3 un VisibilityRange (márgenes de inicio y fin) para cambiar según la distancia con fundido por dithering: el mecanismo HLOD de Bevy.
  • Follaje: el alphaMode MASK de glTF se convierte en AlphaMode::Mask(cutoff) en el StandardMaterial, y los materiales de doble cara desactivan el culling de caras traseras.
  • Las entidades que comparten malla y material se agrupan e instancian automáticamente, así que muchas copias de árboles resultan económicas.
  • Colisión: Bevy no incluye física; arma un collider a partir de la malla de colisión con Avian o bevy_rapier.

Packs

Otras categorías

Lo mismo en otros estilos

Lo mismo para otros motores