FoliMesh

Palmeiras estilo Realista para PlayCanvas

O PlayCanvas carrega as palmeiras da FoliMesh como assets de contêiner GLB: no Editor, o upload gera um template com toda a hierarquia; em código puro, app.assets.loadFromUrl(url, 'container') e instantiateRenderEntity() criam a entidade. Coqueiro, Tamareira, Palmeira-das-canárias, Washingtônia e Palmeira-anã vêm com LOD0–LOD3, colisão, pivô na base e exportação em GLB, FBX e OBJ.

No estilo realista, tronco e folhas usam materiais PBR metal/roughness que o glTF 2.0 lê direto como StandardMaterial: casca com mapas de cor base, normal e rugosidade, e folhas em cartões mascarados (alphaTest) que gravam profundidade, dispensam ordenação e projetam sombras corretas. Como o PlayCanvas não tem componente de LOD, um script curto alterna os quatro níveis pela distância; fileiras estáticas compartilham batch group e bosques usam setInstancing().

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

Sobre o estilo Realista

Os modelos realistas usam o fluxo PBR metal/roughness, lido diretamente por glTF 2.0, Unity, Unreal, Godot e three.js.

  • Casca: mapas de cor, normais e rugosidade no tronco e nos galhos.
  • Folhas: cards com alpha test (masked) e texturas de cachos de folhas, sem alpha blend: escrevem profundidade, não precisam de ordenação e projetam sombras corretas.
  • Casca e folhas usam materiais separados, então o número de draw calls é previsível e o instancing na GPU funciona bem.
  • LOD0 é para close; LOD1–LOD3 removem galhos e cards de folhas, e o último nível é leve o bastante para longas distâncias.

Ideais para jogos em primeira e terceira pessoa, sobrevivência, mundo aberto e simuladores em PC e console. No celular, use LOD1 ou LOD2 como nível mais próximo e fique de olho no overdraw da folhagem.

Como usar em PlayCanvas

O PlayCanvas trata GLB como um container asset. No editor, envie o GLB (FBX é convertido para GLB na importação) e você terá um template com a hierarquia do modelo; em código só de engine, use app.assets.loadFromUrl(url, 'container') e asset.resource.instantiateRenderEntity().

  • LOD: não há componente de LOD embutido, então um pequeno script compara a distância da câmera e liga ou desliga os componentes render das entidades LOD0–LOD3.
  • Árvores estáticas podem compartilhar um batch group para juntar draw calls; em florestas grandes, use instancing por hardware com meshInstance.setInstancing() e um vertex buffer de transformações.
  • Folhas: o MASK do glTF define alphaTest no StandardMaterial; use cull mode none para folhas de dupla face.
  • Malha de colisão: componente collision do tipo mesh mais um rigidbody estático, com o componente render desativado.

Pacotes

Outras categorias

O mesmo em outros estilos

O mesmo para outras engines