FoliMesh

Árboles estilo Low-poly para Bevy

Los árboles low-poly entran en Bevy como una única escena GLB: se carga con el AssetServer usando GltfAssetLabel::Scene(0) y se instancia bajo un SceneRoot. Las 14 especies —roble, pino silvestre, abedul, olivo, acacia y baobab— incluyen entidades LOD0–LOD3, de modo que solo hay que asignar un VisibilityRange a cada nivel para que el HLOD de Bevy cambie de detalle según la distancia con un fundido dithered.

El look facetado nace de una normal por cara y de los colores de vértice (COLOR_0): nada de texturas, nada de UV y muy poca memoria de video. Un solo StandardMaterial compartido hace que las copias de árbol se agrupen e instancien automáticamente; el LOD0 queda entre unos cientos y un par de miles de triángulos. Rinde bien en estrategia, city builders, dispositivos móviles, WebGL/WebGPU y VR. Los colisionadores se arman desde la malla de colisión con Avian o bevy_rapier.

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

Acerca del estilo Low-poly

El low poly es el estilo más económico para renderizar y para publicar.

  • Sombreado plano: una normal por cara da el look facetado nítido, sin mapas de normales.
  • El color está en los vértices (glTF COLOR_0): sin texturas, sin trabajo de UV y casi sin memoria de video.
  • El follaje es geometría sólida, no tarjetas con alfa: sin alpha test ni overdraw transparente, algo clave en GPU de celulares.
  • Un solo material sirve para todos los modelos de la escena, así que los árboles se agrupan e instancian fácilmente.
  • Los presupuestos típicos van de unos cientos a un par de miles de triángulos en LOD0.

Funciona muy bien en celulares, WebGL/WebGPU, VR, estrategia, city builders y juegos indie estilizados. En el motor, usa un material que multiplique por el color de vértice.

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