強火で進め

このブログではプログラム関連の記事を中心に書いてます。

地形(Terrain)に沿った移動

今回のサンプルはこちらで試せます。ソースコードこちら

Unityでは指定の位置での地形(Terrain)上の情報(Yの値)が Terrain.activeTerrain.SampleHeight() で簡単に取得出来ます。

地形に沿った移動処理を行いたい場合には以下の様な記述だけで簡単に出来ます。

JavaScriptのプログラム】

function Update () {
	transform.position.x += Input.GetAxis("Horizontal");
	transform.position.z += Input.GetAxis("Vertical");
	transform.position.y = Terrain.activeTerrain.SampleHeight(transform.position) + 2.0;
}