Terrain Settings

参考:

Terrain Settings | Unity 2018.4 マニュアル [公式]

使い方

参考:

Terrain の基本設定 | Unity でゲームを作ろう!

導入

参考:

Terrain を使って地形を作る準備 | カニチル

設定

Basic Terrain
  • Grouping IDAuto Connect で使用するグループ ID (デフォルト0)
  • Auto connect同じグループ ID を持つ隣接するタイルと自動的に結合する。(デフォルト有効)
  • Drawテラインを描画する。(デフォルト有効)
  • Draw Instancedインスタンス化して描画する。(デフォルト無効)
  • Pixel Errorハイトマップあるいはテクスチャと生成されたテラインのマッピング精度。値を大きくすると、マッピングの精度は悪くなるがレンダリング負荷が小さくなる。(デフォルト5)
  • Base Map Dist.テクスチャを最高解像度で表示する距離。この距離を超えると、低解像度の合成画像が使用される。(デフォルト1000)
  • Cast Shadowsテラインによるシャドウを制御する。
    • Offテラインによるシャドウを投影しない。
    • Onテラインによるシャドウを投影する。
    • Two Sided両方向にシャドウを投影する。グローバルイルミネーションは両面シャドウをサポートしない。(デフォルト)
    • Shadows Onlyテラインを描画せずにテラインが投影するシャドウのみを描画する。
  • Materialテラインで使用するマテリアルを選択する。
    • Default-Terrain-Standard (Unity 2019 以降のデフォルト)
    • Unity 2018 以前
      • Built In Standard組み込みのスタンダードシェーダー
      • Built In Legacy DiffuseUnity 4.x 以前に使用されていた組み込みシェーダー (レガシー)
      • Built In Legacy SpecularBlinn-Phong モデルを使用した組み込みシェーダー (レガシー)
      • Customカスタムマテリアル
  • Reflection Probes
    • Offリフレクションプローブは無効/スカイボックスが適用される。
    • Blend Probesリフレクションプローブは有効/プローブ間でブレンドを適用する。
    • Blend Probes And Skyboxリフレクションプローブは有効/プローブ間及びデフォルトのリフレクションの間でブレンドが適用される。
    • Simpleリフレクションプローブは有効/ブレンドは適用されない。
Tree and Detail Objects
  • Draw樹木及びディティールを描画する。(デフォルト有効)
  • Bake Light Probes For Trees内部に樹木用のライトプローブを生成し、樹木の描画にグローバルイルミネーションを適用する。樹木のプレハブにライトプローブが設置されている場合にこのオプションを使用する。(デフォルト有効)
  • Remove Light Probe Ringingライトプローブによるリンギングを除去する。(デフォルト有効)
  • Preserve Tree Prototype Layers元のプレハブのレイヤーを保持する。(デフォルト無効)
  • Detail Distanceディティールを表示する距離。この距離を超えると、ディティールはカリングの対象となり描画されない。(デフォルト80)
  • Detail Density単位面積当たりのディティールオブジェクト数 (デフォルト1)
  • Tree Distance樹木を表示する距離。この距離を超えると、樹木はカリングの対象となり描画されない。(デフォルト5000)
  • Billboard Start樹木をビルボードで表示する距離。この距離を超えると、樹木はビルボードとして表示される。(デフォルト50)
  • Fade Length樹木をビルボードでの表示に徐々に置き換える距離。(デフォルト5)
  • Max Mesh Trees3D オブジェクトとして表示する樹木の最大数。この数量を超えると、樹木ほビルボードとして表示される。(デフォルト50)
Physics
  • Thickness地形のコライダーの厚みを指定する。コライダーに厚みを持たせることで、高速に移動するゲームオブジェクトが地形を貫通することを防ぐことができる。
Wind Settings for Grass
  • Speed風の速度 (デフォルト0.5)
  • Size揺らぎの波長 (デフォルト0.5)
  • Bendingしなりの大きさ/角度 (デフォルト0.5)
  • Grass Tint風が影響する領域の着色 (デフォルトB29980)
Mesh Resolutions
  • Terrain WidthX 軸方向の大きさ (デフォルト1000)
  • Terrain LengthZ 軸方向の大きさ (デフォルト1000)
  • Terrain HeightY 軸方向の大きさ (デフォルト600)
  • Detail Resolution Per Pitchパッチ当たりのディティールを配置するセル数 (デフォルト32)
  • Detail Resolutionディティールを配置するセル数。グリッドを構成するために平方数とする。(デフォルト1024)
Holes Settings
  • Compress Holes Texture穴をマッピングするテクスチャを DXT1 形式に圧縮する。(デフォルト有効)
Texture Resolutions
  • Heightmap Resolutionハイトマップのピクセル解像度。一辺の長さに2の累乗に1を加えた値を用いる。(デフォルト513 x 513)
  • Control Texture Resolutionスプラットマップの解像度 (デフォルト512 x 512)
  • Base Texture ResolutionBase Map Dist. を超えた際に使用される合成テクスチャの解像度 (デフォルト1024 x 1024)
Lighting
  • Contribute Global Illuminationグローバルイルミネーションの影響を計算する。(デフォルト有効)
Lightmapping
  • Scale In Lightmapライトマップの相対的なサイズを指定する。0 を指定すると、ライトマップは生成されないが、他のオブジェクトのライティング計算には含まれる。(デフォルト0.0256)
  • Lightmap Parametersライトマップパラメーターを指定する。
    • Scene Default Parametersシーンで指定された既定のライトマップパラメーターを使用する。
    • Default-HighResolution
    • Default-LowResolution
    • Default-Medium
    • Default-VeryLowResolution (デフォルト)
    • Create New…ライトマップパラメーターを新規に作成する。
  • Rendering Layer Maskレンダリングレイヤーマスクを設定する。SRP で使用する。
Terrain Collider
  • Material物理特性マテリアルを指定する。(デフォルトNone)
  • Terrain Dataテラインのデータを保持するアセット
  • Enable Tree Colliders樹木のコライダーを有効にする。(デフォルト有効)

参考:

Terrain Settings | Unity マニュアル [公式]

ピクセルエラー (Pixel Error)

参考:

Terrain でゲームが重いときの対処法 | Unishar

Understanding implementation of terrain pixel error setting – Unity Forum

Pixel Error doing nothing – Unity Forum

How to Set LOD for Terrain Mesh? – Unity Forum

How do you change Pixel Error in Unity3D terrain during runtime? – Stack Overflow

解像度を変更する (Resolution)

参考:

Terrain resolution for a MMO – Unity Answers

Terrain Resolution – Unity Forum

Base Texture and Control Texture resolution limit – Unity Forum

Base Texture Resolution – Unity Answers

Control texture resolution ? – Unity Forum

Change resolution of the terrain splat-texture? – Unity Forum

best tile size for terrain? – Unity Answers

スクリプトから設定する

参考:

UnityEngine.Terrain | Unity スクリプトリファレンス [公式]

How do you change Pixel Error in Unity3D terrain during runtime? – Stack Overflow

パフォーマンスを改善する

参考:

重い Terrain の描画処理を少しでも軽くする方法 | くろくまそふと

Terrain の負荷やら DrawCall やらを下げるポイント | テラシュールブログ

Terrain の負荷軽減 & ライティングのベイク時間短縮方法 | Unity でゲームを作ろう!

ゲームの描画処理を軽くする方法 | Unity でゲームを作ろう!

Terrain のせいでゲームの動作が重い?設定で改善・軽量化する実例 | JoyPlot ドキュメント

Increase Terrain Performance – Unity Forum

コリジョン

メニューから「Edit > Project Settings」を開き、「Physics」タブで「Enable Unified Heightmaps」を有効にすると、テラインのコリジョンをメッシュと同様に扱うようになる。(Unity 2018.3 以降)

Unity 2019.3 で Thickness パラメーターは削除され、代わりに Continuous Collision Detection の使用が推奨される。

参考:

Unity 2019.3 における物理関連の変更事項 | Unity Blog [公式]

Physics | Unity マニュアル [公式]

記事をシェアする:
タグ:

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です