強火で進め

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

Debug.DrawLine()のサンプル

Debug.DrawLine() はデバッグ用にラインを描画するAPIです。

Jason WelshさんのPodcastの第23回の動画にて紹介されている内容を参考に作成しました。

サンプルはPlayerの前方にRayを飛ばし、何らかのオブジェクトにHitしたら当たった地点までのラインを描画するというものです。

以下の様に動作します。

Debug.DrawLine() で描画されるのはSceneビューのみでGameビューには描画されません。

主なプログラムは以下。

【Player.js】

#pragma strict

var rayDis : float = 100;

function Start () {

}

function Update () {
	var front = transform.TransformDirection(Vector3.forward);
	//Debug.DrawLine(transform.position, transform.position+front*2.0, Color.red);
	var hit : RaycastHit;
	if (Physics.Raycast(transform.position, front, hit, rayDis)) {
		Debug.DrawLine(transform.position, hit.point, Color.red);
	}
	
	var rotY = Input.GetAxis("Horizontal") * Time.deltaTime * 40.0;
	transform.Rotate(Vector3(0, rotY, 0));
}

プロジェクト全体はこちらにアップしています。

関連情報

Unity Script Reference – Debug.DrawLine
http://unity3d.com/support/documentation/ScriptReference/Debug.DrawLine.html