饂飩コーディング

iOSアプリやら、Unityやら、Cocos2dやらごにょごにょ書いております

Terrain 地形をHeight Mapファイルから作ってみよう

UnityでTerrain機能を使ってみましょう

概要
1、グレースケールで地形を描く(黒がへっこんで、白が出っ張る)。黒と白のグラデーションにすると坂になるよ
2、上の画像ファイルをGimpでrawファイルに変換する。
3、Unityの TerrainObjectに2で作成したrawファイル(Height Map File)をImportする。
4、Terrain Height パラメータを調整して高さを調整する。

って感じですかね。

Photoshopを持っていれば、rawファイルへの変換は簡単ですが、
自分はPhotoshopElements15しか手元にないので、Gimpを使うことにしました。

こんな感じのグレースケール画像を作る。
サイズは513x513
Procreateなんかで手書きすると味が出ますw
f:id:appdeappuappu:20181104213511p:plain

グレースケールのファイルをGimpで読み込んでから
「名前をつけてエクスポートする」を選択し、
「ファイル形式の選択」で「RAW画像データ」を選択しエクスポートする。
「RGB保存タイプ」を「Planer」にする!!!
出力されたファイルの拡張子が「.data」なので「.raw」にリネームしておく。
f:id:appdeappuappu:20181104213520p:plain
f:id:appdeappuappu:20181104213526p:plain

ファイルの関係はこんな具合で
f:id:appdeappuappu:20181104213504j:plain

UnityにTerrain Objectを使いしてInspectorウィンドウで
歯車の小さなアイコンをクリックして下の方にある
Importボタンを押して、作成したRAWファイルを読み込む
f:id:appdeappuappu:20181104213533p:plain

読み込みOption選択画面で
8bit
513*513
Mac
でImportする
f:id:appdeappuappu:20181104213544p:plain

こんな感じでTerrainが画像ファイルの作成程度で簡単に作成できます。
この後は、テクスチャーを設定すれば見栄えよ良くなるはずです。w
f:id:appdeappuappu:20181104213548p:plain