SpeedTree は IDV 社によるサードパーティ製の製品で、既成の樹木のアセットと、樹木に特化したモデリングソフトウェアを提供します。
Unity は 他のアセットを処理するのと同じ方法で、SpeedTree の Model アセット を認識しインポートします。SpeedTree Modeler 7 を使用している場合は、Unity バージョンのモデラーを使用して .spm
ファイルを再保存してください。 SpeedTree Modeler 8 を使用している場合は、.st
ファイルを直接 Unity の Project フォルダーに保存します。
Project フォルダー内でテクスチャをアクセス可能にしておくと、Unity は各 Level of Detail (LOD) ごとに自動的にマテリアルを生成します。アセットを選択すると、生成されたゲームオブジェクトとアタッチされたマテリアルを調節する インポート設定 があります。Generate Materials または Apply & Generate Materials ボタンをクリックしない限り、アセットを再インポートしても、マテリアルを再生成しません。したがって、マテリアルのカスタマイズをすべて保持することが可能です。
SpeedTree インポーターは LODGroup コンポーネントが設定されたプレハブを生成します。プレハブをシーン内でインスタンス化するには、一般的なプレハブインスタンスとして使用するか、または、プレハブを樹木のプロトタイプとして選択し Terrain 全体にペイントします。
さらに、Terrain は LODGroup コンポーネントを持つゲームオブジェクトをすべて樹木のプロトタイプとして受け取り、メッシュサイズや使用するマテリアルの数に制限を設けません。これは Unity の Tree エディター による樹木とは異なります。ただし、SpeedTree による樹木は通常、3〜4 種類の異なるマテリアルを使用するため、フレームごとに多くのドローコールを発します。したがって、レンダリングパフォーマンスに対して追加のドローコールが比較的高負担になるモバイルなどのプラットフォームで、LOD の樹木を頻繁に使用することは推奨されません。
モデルインポーターには、SpeedTree マテリアルアセットを処理するワークフローを向上させる Materials タブがあります。詳細は、モデルインポーターの Material タブ のページを参照してください。
ビルボードの影を正しく投影するために、Unity は、ShadowCaster パスの間はビルボードを回転させ、ビルボードをカメラでなくライト方向 (ポイントライトの場合はライトの位置) を向かせます。
これらのオプションを有効にするには、SpeedTree アセットの Inspector ウィンドウで ビルボード の LOD レベルを選択し、Billboard Options で Cast Shadows か Receive Shadows にチェックを入れ、Apply Prefab をクリックします。
インスタンス化された SpeedTree ゲームオブジェクトのビルボードのシャドウオプションを変更するには、Hierarchy ウィンドウでビルボードゲームオブジェクトを選択し、Billboard Renderer の Inspector でこれらのオプションを調節します。
Terrain 上でペイントしたツリーは、プレハブからビルボードのシャドウオプションを継承します。実行時にこれらのオプションを変更するには、BillboardRenderer.shadowCastingMode
と BillboardRenderer.receiveShadows
を使用します。
既知の問題 他のレンダラーと同様に、Receive Shadows オプションはディファードレンダリングを使用している間は効果がありません。ビルボードは常にディファードパスで影を受けます。
2019–01–29 編集レビュー を行って修正されたページ
SpeedTree 8と関連リンクに関する情報を追加