Version: 2017.2
SpeedTree
Wind Zone

草とその他の詳細について

terrain システムは、その表面を覆う草の茂みや、岩のような他の小さなオブジェクトを作成できます。草は個々のかたまりを表す 2D 画像を使ってレンダリングされます。一方、他の詳細を表すオブジェクトは標準のメッシュから生成されます。

草を加えた地形
草を加えた地形

草やその他の詳細を加える

ツールバーの Details ボタンで草/ディテールのペイントができます。

最初は、Terrain が利用できる草やディテールはありませんが、インスペクターで Edit Details ボタンをクリックすると、表示されるメニュー上に Add Grass TextureAdd Detail Mesh オプションが表示されます。ウィンドウが表示され、Terrain に追加するアセットの選択ができます。

Grass のウィンドウはこのようになっています。

Add Grass Texture ウィンドウ
Add Grass Texture ウィンドウ

Detail Texture は草を表現するテクスチャです。2–3 の適切なテクスチャがアセットストアからダウンロード可能な Unity の Standard Assets に含まれています。また、独自に作成することも可能です。テクスチャは単純に、空白部分のアルファを 0 に設定した小さな画像です。(もちろん「Grass」はただの総称にすぎません。画像を使い花、藪、そしておそらく、有刺鉄線コイルのような人工的なオブジェクトを表現することも可能です。)

Min WidthMin HeightMax WidthMax Height の値は、生成された草の塊のサイズの上限と下限を指定します。本物らしくみせるために、草はしみのちらばりなどのランダムなノイズまじりの模様で生成されます。

Noise Spread 値は、他のパッチのおおよそのサイズを制御します。値を高くすると、指定した領域内のばらづきがさらに多くなります (技術メモ: ノイズは実際は Perlin noise を使って生成されます。ノイズは、Terrain とノイズ画像の x、y 位置間に適用されたスケーリングを参照して広がります)。草の別パッチは、周辺部よりも中心部でより 「健康」になるように考慮されており、 Healthy/Dry Color 設定により、カラーを使って草の健康度を表示できます。

最後に、 Billboard オプションが有効の場合、草の画像は常に回転します。ですから、常にカメラに正面を向けることになります。このオプションは草が側面から見える可能性が無くなるため密集した草原を表現したい場合に便利ですが、、平面であることがはっきり判ってしまいます。ただし、草がまばらな場合には、個別に回転するのが明白に判ってしまうので、少し奇妙な効果が発生してしまいます。

岩など、ディテールのメッシュの選択ウィンドウは以下のように表示されます。

Add Detail Mesh ウィンドウ
Add Detail Mesh ウィンドウ

Detail プロパティーは、プロジェクトからプレハブを選択して使用され、個々のインスタンスは Random WidthRandom Height の値によってスケールされます。Noise SpreadHealthy/Dry Color の値は Grass と同様な動作をします (岩のようなオブジェクトに適用したときは Healthy の意味が多少広範囲になりますが)。Render ModeGrassVertex Lit に設定できます。Grass モードでは、シーン内のディテールオブジェクトのインスタンスは、グラステクスチャのように平らに 2D 画像に収められます。Vertex Lit モードでは、ディテールオブジェクトはシーン内でソリッドな、頂点ライティングされるオブジェクトとしてレンダリングされます。

SpeedTree
Wind Zone