テラシュールブログ

旧テラシュールウェアブログUnity記事。主にUnityのTipsやAR・VR、ニコニコ動画についてのメモを残します。

Unityのシーンビュー上にあるGizmoを非表示にする

Unityはシーン上にGizmoといった形でオブジェクトの情報を表示する事が出来ます。Gizmoを使うことでオブジェクトの影響範囲や移動ルート、その他諸々がシーン上でビジュアル的に確認出来るため、ゲームの進行や状態の確認に非常に有用です。

f:id:tsubaki_t1:20150114025508g:plain

GizmoOnDrawGizmosOnDrawGizmosSelectedといったコールバックをMonobehaviourを継承したクラスに追記すれば追加する事ができます。例えばA点とB点の2つの座標を繋ぐ線を表現したい場合、以下のように記述します。

using UnityEngine;
using System.Collections;

public class GizmoLine2 : MonoBehaviour {

    public Transform target;

    void OnDrawGizmosSelected()
    {
        iftarget != null )
            Gizmos.DrawLine(transform.positiontarget.position);
    }
}

f:id:tsubaki_t1:20150114000837p:plain

OnDrawGizmosOnDrawGizmosSelectedの違いは常時表示されるかの有無です。SelectedはInspectorで大本のコンポーネントを表示している時のみ表示されます。

 

Gizmoを非表示にする

このGizmoですが、場合によっては邪魔です。量が多いと鬱陶しいです。なので、これらを非表示にするのが今回の主題です。

 

ある意味安易なGizmoを非表示にする方法は、コンポーネントを閉じてしまう事です。コンポーネントを閉じる事で該当のコンポーネントが持つGizmo表現を非表示にできます。

f:id:tsubaki_t1:20150114001228p:plain

f:id:tsubaki_t1:20150114001240p:plain

も一つが、シーンビュー上にあるコレです。

この項目にはプロジェクト内でGizmoを持っている全てのコンポーネント一覧が表示されます。この項目の一番右の項目=Gizmoのチェックを外すと、Gizmoが表示されなくなります。

 

f:id:tsubaki_t1:20150114001356p:plain

f:id:tsubaki_t1:20150114001739p:plain

また、Iconのチェックを外すとアイコンが表示されなくなります。例えばCameraのアイコンを外すとカメラのアイコンが非表示になります。

f:id:tsubaki_t1:20150114001922p:plain

f:id:tsubaki_t1:20150114001938p:plain

Gizmoは特にステージを構築したりする際にとても活躍しますが、ON/OFFを知らないとゴチャゴチャしてしまうので、適度に切ったりすると良い感じになりそうです。

関連

UnityのSceneViewにラベルやボタンを表示する - テラシュールブログ

Unityのカメラ描画範囲を常に表示させる - テラシュールブログ

知っておくと少し幸せになる最低限のエディタ拡張 - テラシュールブログ

Scene ビューで Gizmo を使う - 強火で進め