FoliMesh

Packs d'assets 3D de style Réaliste pour PlayCanvas

Un GLB importé dans l'éditeur PlayCanvas devient un asset de type container avec toute la hiérarchie du modèle, transformable en template ; en code pur, le même fichier se charge via app.assets.loadFromUrl(url, 'container') puis asset.resource.instantiateRenderEntity(). Chaque arbre, palmier, cactus, buisson et rocher possède des LOD0–LOD3 : PlayCanvas n'ayant pas de composant LOD intégré, un petit script compare la distance caméra et active les render components correspondants.

Côté rendu, le style réaliste suit le workflow PBR metal/roughness : écorce en base colour, normal et roughness, feuilles en cartes alpha-testées qui écrivent la profondeur, sans tri ni artefacts d'ombre. Écorce et feuillage sont des matériaux distincts, donc des draw calls prévisibles, compatibles avec l'instanciation GPU via meshInstance.setInstancing() pour Forêt tempérée ou Forêt de conifères. Rochers et falaises et Kit désert conviennent aux jeux de survie et aux mondes ouverts ; sur mobile, démarrez en LOD1 ou LOD2.

À propos du style Réaliste

Les modèles réalistes suivent le workflow PBR metal/roughness, lu directement par glTF 2.0, Unity, Unreal, Godot et three.js.

  • Écorce : textures de couleur, de normales et de rugosité sur le tronc et les branches.
  • Feuillage : cartes en alpha test (masked) avec des textures de grappes de feuilles, pas en alpha blend : elles écrivent la profondeur, ne demandent aucun tri et projettent des ombres correctes.
  • Écorce et feuillage ont des matériaux séparés : le nombre de draw calls reste prévisible et l’instanciation GPU fonctionne bien.
  • LOD0 sert aux plans rapprochés ; LOD1–LOD3 retirent branches et cartes de feuilles, le dernier niveau est assez léger pour le lointain.

Idéal pour les jeux à la première et à la troisième personne, la survie, les mondes ouverts et les simulateurs sur PC et console. Sur mobile, utilisez LOD1 ou LOD2 comme niveau le plus proche et surveillez l’overdraw du feuillage.

Utilisation dans PlayCanvas

PlayCanvas traite le GLB comme un asset container. Dans l’éditeur, importez le GLB (le FBX est converti en GLB à l’import) pour obtenir un template avec la hiérarchie du modèle ; en code moteur seul, utilisez app.assets.loadFromUrl(url, 'container') puis asset.resource.instantiateRenderEntity().

  • LOD : il n’y a pas de composant LOD intégré ; un petit script compare la distance à la caméra et active ou désactive les composants render des entités LOD0–LOD3.
  • Les arbres statiques peuvent partager un batch group pour fusionner les draw calls ; pour de grandes forêts, utilisez l’instanciation matérielle avec meshInstance.setInstancing() et un vertex buffer de transformations.
  • Feuillage : le MASK de glTF règle alphaTest sur le StandardMaterial ; utilisez le cull mode none pour des feuilles double face.
  • Maillage de collision : composant collision de type mesh avec un rigidbody statique, composant render désactivé.

Packs

Le même dans d'autres styles

Le même pour d'autres moteurs