FoliMesh

Mundo subaquático estilo Low-poly para Babylon.js

Visual low poly facetado com flat shading e cores por vértice — sem nenhuma textura. Vegetação para Babylon.js em GLB: importe com o SceneLoader, conecte os níveis de LOD e crie florestas que rodam no navegador. Este grupo reúne plantas subaquáticas e formações de recife para fundos marinhos, lagunas e águas rasas: coral chifre-de-veado, coral-vermelho, coral-cérebro e leques-do-mar, além de kelp, algas marinhas e vitórias-régias. Juntos, criam o aspecto em camadas de um recife ou do fundo de um lago protegido. Cada modelo inclui LOD0 a LOD3, colisão e pivô na base, para que os corais fiquem presos ao fundo e não flutuem. O kelp e as algas têm pesos de balanço para um movimento suave. Cada nova semente gera uma forma de ramificação ou um arranjo de frondes diferente, e os modelos são exportados em GLB, FBX e OBJ para Unity, Unreal Engine, Godot e Bevy. 7 modelos prontos para jogos nesta seleção. Cada modelo tem LOD0–LOD3, colisão e pivô na base, e cada nova seed gera uma nova variação da mesma espécie.

Modelos
7
Níveis de detalhe
LOD0 – LOD3
Formatos
GLB · FBX · OBJ

Sobre o estilo Low-poly

O low poly é o estilo mais barato de renderizar e de distribuir.

  • Flat shading: uma normal por face dá o visual facetado nítido, sem normal maps.
  • A cor fica nos vértices (glTF COLOR_0): sem texturas, sem trabalho de UV e quase sem memória de vídeo.
  • As folhas são geometria sólida, não cards com alfa: sem alpha test nem overdraw transparente, o que pesa em GPUs de celular.
  • Um único material serve para todos os modelos da cena, então as árvores fazem batching e instancing com facilidade.
  • Orçamentos típicos vão de algumas centenas a cerca de dois mil triângulos no LOD0.

Combina com mobile, WebGL/WebGPU, VR, estratégia, city builders e jogos indie estilizados. Na engine, use um material que multiplique pela cor de vértice.

Como usar em Babylon.js

O Babylon.js carrega GLB pelo loader glTF de @babylonjs/loaders: ImportMeshAsync (ou SceneLoader.ImportMeshAsync em código mais antigo), ou LoadAssetContainerAsync quando você precisa de muitas cópias via instantiateModelsToScene.

  • LOD: lod0.addLODLevel(30, lod1), addLODLevel(80, lod2) e assim por diante; passar null como malha esconde o objeto além dessa distância.
  • Milhares de árvores: thin instances (thinInstanceAdd com matrizes) são desenhadas em um draw call por malha; use createInstance comum quando cada árvore precisar de picking ou lógica próprios.
  • Folhas: o MASK do glTF vira um PBRMaterial com alpha test (MATERIAL_ALPHATEST).
  • Malha de colisão: isVisible = false e use com checkCollisions ou física Havok (PhysicsAggregate com shape MESH).

Outras categorias

O mesmo em outros estilos

O mesmo para outras engines