FoliMesh

PlayCanvas向けローポリスタイルの3Dモデル

PlayCanvas は GLB をコンテナアセットとして読み込みます。FoliMesh のファイルをエディターにドラッグするだけで(FBX はインポート時に変換されます)モデル階層を含むテンプレートが得られ、エンジンのみのコードでは app.assets.loadFromUrl(url, 'container') と asset.resource.instantiateRenderEntity() を使います。

エンジンには LOD コンポーネントがないため、短いスクリプトでカメラ距離を比較し、LOD0〜LOD3 のエンティティの render コンポーネントを切り替えます。静止した樹木は batch group でまとめられ、大規模な森は meshInstance.setInstancing() とトランスフォームの頂点バッファによるハードウェアインスタンシングを使います。フラットシェーディングと頂点カラーなのでテクスチャも UV 作業も不要で、42 モデルの中のオーク、サワロ、竹がひとつのマテリアルを共有し、そのマテリアルは頂点カラーを掛け合わせます。LOD0 のポリゴン数は数百から二千トライアングル程度で、モバイル WebGL、VR、スタイライズドなストラテジーやシティビルダーに向いています。

モデル
42
LODレベル
LOD0 – LOD3
フォーマット
GLB · FBX · OBJ

ローポリスタイルについて

ローポリはレンダリング負荷もビルドサイズも最も軽いスタイルです。

  • フラットシェーディング:面ごとに 1 本の法線でくっきりした多面体の見た目になり、法線マップは不要です。
  • 色は頂点カラー(glTF COLOR_0)に格納:テクスチャなし、UV 作業なし、VRAM もほぼ消費しません。
  • 葉はアルファカードではなく実体のジオメトリ:アルファテストも半透明のオーバードローもなく、モバイル GPU で効きます。
  • シーン内の全モデルで 1 つのマテリアルを共有でき、樹木を簡単にバッチング・インスタンシングできます。
  • LOD0 の一般的な予算は数百〜2,000 ポリゴン程度です。

モバイル、WebGL/WebGPU、VR、ストラテジー、街づくり、スタイライズドなインディーゲームに向いています。エンジンでは頂点カラーを乗算するマテリアルを使ってください。

PlayCanvasでの使い方

PlayCanvas は GLB をコンテナアセットとして扱います。エディターでは GLB をアップロードすると(FBX はインポート時に GLB へ変換)モデル階層付きのテンプレートができ、エンジン単体のコードでは app.assets.loadFromUrl(url, 'container') と asset.resource.instantiateRenderEntity() を使います。

  • LOD:組み込みの LOD コンポーネントはないため、小さなスクリプトでカメラとの距離を比較し、LOD0〜LOD3 エンティティの render コンポーネントを切り替えます。
  • 静的な木は同じバッチグループにまとめてドローコールを統合できます。大きな森では meshInstance.setInstancing() と変換行列の頂点バッファでハードウェアインスタンシングを使います。
  • 葉:glTF の MASK で StandardMaterial の alphaTest が設定されます。両面の葉にはカリングモードを none にします。
  • コリジョンメッシュ:mesh タイプの collision コンポーネントと静的 rigidbody を付け、render コンポーネントは無効にします。

パック

その他のカテゴリー

他のスタイルで見る

他のエンジン向け