初心者必見!現場レベルの「ゲーム制作講座PDF」を無料プレゼント中!▶

Unity Gizmosの使い方 | 範囲をSceneで可視化

Unity 基礎操作・設定

「攻撃範囲がどれくらいか、数値だけではイメージしづらい」

「当たり判定の球がどこにあるか、Play中に目で追いたい」

そんなときに便利なのがGizmosです。
Sceneビュー上に線や球を描画でき、ゲーム画面(Gameビュー)には表示されません。
開発中だけ「見える化」できるデバッグ用の描画ツールと考えてください。

この記事では、OnDrawGizmosの書き方、DrawWireSphere・DrawLineの例、攻撃範囲や視界の可視化、色の付け方までを説明します。
Debug.Logで数値を確認する方法と組み合わせると、バグの特定がさらに速くなります。

  • OnDrawGizmosを書いたのに、Sceneに何も表示されない…
  • Gameビューに出したいのに出ず、どこに描画されているか分からない。
  • DrawWireSphereの半径や座標の指定方法が分からない。

✨ この記事でわかること

  • Gizmosとは何か、SceneとGameの違い
  • OnDrawGizmosとOnDrawGizmosSelectedの使い分け
  • DrawWireSphere・DrawLine・DrawWireCubeの基本
  • 攻撃範囲・視界距離の可視化例
  • Gizmosの色を変える方法
  • 初心者でも理解できる解説

\プログラミング未経験でも大丈夫!まずは1本作り切ろう/

初心者が最初に選ぶならコレ

Unity ノンフィールドRPG
+スレスパ風JRPG講座

★★★★★ (Unity6対応)

Unity6対応・スマホ化対応の最新カリキュラム。「何から始めればいいかわからない」という初心者でも、ステップごとに手を動かすだけでRPGが完成します。

講座を見てみる \ゼロからでもスマホ対応RPGが作れる!/

憧れのアクションゲームに挑戦

Unity 2Dアクションゲーム
の作り方講座(ロックマン風)

★★★★★ (スマホ化・広告実装)

初心者でもロックマン風の横スクロールACTが作れる講座。7ステージ+ラスボスという本格構成で、スマホ化・広告実装まで対応。「自分のゲームをリリースしたい」夢を叶えます。

講座を見てみる \初心者でも本格ACTが完成する!/

3Dゲーム開発の入口はここ

ゼルダ風3Dアクションゲーム
の作り方講座

★★★★★ (スマホ化対応)

「3Dゲームって難しそう…」と感じている初心者向けの講座。全16回でゼルダ風3Dアクションがスマホ対応で作れるようになります。3D開発の基礎がしっかり身につきます。

講座を見てみる \初心者でも全16回で3Dゲームが完成!/

Gizmosとは|Sceneだけに表示される描画

Gizmosは、UnityエディタのSceneビュー専用の補助線・補助図形です。
プレイヤーには見えず、開発者が配置や範囲を確認するためのものです。

カメラの視錐台やライトの影響範囲など、エディタが自動で描くGizmosもあります。
スクリプトから描く場合は、OnDrawGizmosまたはOnDrawGizmosSelectedメソッドを使います。

メソッド いつ描画されるか
OnDrawGizmos 常に描画(オブジェクトが選択されていなくても表示)
OnDrawGizmosSelected そのオブジェクトを選択しているときだけ描画

Sceneビュー右上の「Gizmos」ボタンがオンになっているかも確認してください。
オフだと、スクリプトで描いても見えません。

OnDrawGizmosの基本コード

MonoBehaviourを継承したスクリプトに、次のようなメソッドを追加します。

public class AttackRangeGizmo : MonoBehaviour
{
    public float attackRange = 2f;

    void OnDrawGizmos
    {
        Gizmos.color = Color.red;
        Gizmos.DrawWireSphere(transform.position, attackRange);
    }
}

このスクリプトをキャラクターにアタッチし、InspectorでattackRangeを変えると、Scene上の赤いワイヤー球の大きさが変わります。
Playしなくても表示されるので、配置の段階で範囲を調整できます。

中心座標は多くの場合transform.positionを使います。
オフセットしたいときは、transform.position + Vector3.up などでずらせます。

管理人
管理人

Gizmosは「ゲームに出ない」ので安心して試せます。
まずは空のGameObjectにスクリプトを付け、球がSceneに出るか確認してみましょう。

よく使う描画メソッド

範囲の形に応じて、次のメソッドを使い分けます。

メソッド 用途の例
DrawWireSphere 攻撃範囲、索敵半径、爆風の届く距離
DrawLine 視線の方向、パトロール経路、レイの軌跡
DrawWireCube 長方形の当たり範囲、出現エリアの枠
DrawRay Raycastの方向と長さを可視化
void OnDrawGizmos
{
    // 視界:前方へ5mの線
    Gizmos.color = Color.yellow;
    Gizmos.DrawRay(transform.position, transform.forward * 5f);

    // 足元に小さな立方体
    Gizmos.color = Color.cyan;
    Gizmos.DrawWireCube(transform.position, Vector3.one * 0.5f);
}

DrawWireCubeの第2引数は「サイズ(幅・高さ・奥行き)」です。
Vector3.one * 2f なら、各辺2mの立方体の枠が描かれます。

攻撃範囲と視界の可視化例

実践的な組み合わせ例です。
public変数にしておくと、Inspectorから数値を変えながら調整できます。

public float detectRange = 8f;
public float attackRange = 2f;

void OnDrawGizmosSelected
{
    Gizmos.color = new Color(1f, 1f, 0f, 0.3f);
    Gizmos.DrawWireSphere(transform.position, detectRange);

    Gizmos.color = Color.red;
    Gizmos.DrawWireSphere(transform.position, attackRange);
}

索敵範囲を黄色の大きな球、攻撃範囲を赤い小さな球で重ねて表示します。
OnDrawGizmosSelectedにすると、Hierarchyでそのオブジェクトを選んだときだけ表示され、シーンが散らかりにくくなります。

Raycastで地面を検知している場合は、DrawRayで射出方向を線にすると、「どこを向いているか」が一目で分かります。
ヒット距離が分かっているときは、その長さまで線を引くと再現性が高まります。

管理人
管理人

「当たっているはずなのに当たらない」ときは、Gizmosの球とColliderのサイズを並べて見比べると、ズレに気づきやすいです。
数値だけより断然早いですよ。

色の設定と注意点

Gizmos.colorに色を指定してから描画します。
半透明にしたいときは、new Color(r, g, b, alpha) の第4引数で透明度を下げます。

  • Gameビューには出ない → プレイヤー向けUIやエフェクトには使えない
  • ビルド後は動かない → エディタ専用のため、製品版には含まれない
  • 重い処理を入れない → OnDrawGizmos内でFindや大量のループは避ける
  • ColliderのGizmoと混同しない → 緑のワイヤーはColliderコンポーネント側の表示

2DプロジェクトでもGizmosは使えます。
Z座標を0に固定し、DrawWireSphereの代わりにDrawWireCubeで平面の範囲を枠表示する方法もよく使われます。

Gizmos導入の手順
  • STEP1
    スクリプトにOnDrawGizmosを追加

    publicな範囲変数と、DrawWireSphereを1行書きます。
  • STEP2
    GameObjectにアタッチ

    キャラクターや敵のルートオブジェクトに付けます。
  • STEP3
    Sceneでサイズを確認

    Inspectorの数値を変え、球や線が意図どおりか見ます。
  • STEP4
    本番ロジックと数値を共有

    攻撃判定の半径と、Gizmosの半径を同じ変数にするとズレません。
管理人
管理人

攻撃判定のコードとGizmosで同じ変数(attackRangeなど)を使うのがコツです。
片方だけ直してズレる、というミスが防げます。

記事を読んで「作ってみたい!」と思ったら!初心者でも1本完成できる講座で実力をつけよう

知識を読むだけで終わらせるのはもったいない。実際に手を動かしてゲームを1本完成させることで、理解が一気に深まります。プログラミング未経験からでも取り組める講座で、ゲーム開発の第一歩を踏み出しましょう。

Unity ノンフィールドRPG+スレスパ風JRPG講座【Unity6対応!初心者でもデッキ構築×JRPGをスマホ向けに作れる!】

Unity ノンフィールドRPGの作り方講座+Slay the Spire風デッキ構築JRPGの作り方講座

  • Unity6対応・スマホ化対応で最新環境のゲーム開発が学べる
  • Slay the Spire風のデッキ構築システム×JRPGの組み合わせを実装
  • 初心者でも迷わず進められる丁寧な解説構成
  • ノンフィールドRPGとデッキ構築JRPGの2つをまとめて学べるセット講座

Unity ノンフィールドRPGの作り方講座+Slay the Spire風デッキ構築JRPGの作り方講座は、プログラミング未経験の初心者でも取り組みやすい、ステップバイステップ形式の講座です。

Unity6対応・スマホ化対応の最新カリキュラムで、読んで「なるほど」と思った知識を、実際に動くゲームとして形にする体験ができます。

「何から始めればいいかわからない…」という初心者が最初に選ぶ一本として最適な講座です。

Unity6対応・スマホ化対応の最新カリキュラム
ゼロからでもRPGを完成させよう
→ スレスパ風デッキ構築JRPG講座を見てみる
初心者でもスマホ対応のRPGが作れる!まずは1本完成を目指そう!

Unity 2Dアクションゲームの作り方講座(ロックマン風)【全16回!初心者でもスマホ化・広告実装まで対応した本格横スクロールACTが作れる!】

Unity 2Dアクションゲームの作り方講座(ロックマン風)

  • ロックマン・マリオ・カービィのような横スクロールACTをゼロから開発
  • 7ステージ+ラスボスステージの本格的なゲーム設計を初心者でも実現
  • スマホ化・AdMob広告実装まで対応してリリースまで見据えた構成
  • 敵AI15体・多彩なマップギミック・武器システムを完全実装
  • 完全オリジナルゲームをアセット不使用で素材提供付きで制作

Unity 2Dアクションゲームの作り方講座(ロックマン風)は、ロックマン・スーパーマリオ・星のカービィのような2D横スクロールアクションゲームを、初心者でもゼロから開発できるようになる講座です。

全16回で当たり判定・物理挙動・敵AIの知識を実際のゲームコードとして実装する体験が詰め込まれています。スマホ化・広告実装まで対応しているため、「作って終わり」ではなくリリースまで見据えた実践スキルが身につきます。

「憧れのアクションゲームを自分の手で作ってみたい」という初心者に強くおすすめの一本です。

スマホ化・広告実装まで対応した本格横スクロールACT
初心者でもロックマン風2Dアクションをリリースまで作り上げよう
→ 2Dアクションゲームの作り方講座を見てみる
初心者でも本格ACTが完成する!広告収益まで視野に入れた実践スキルを手に入れよう!

ゼルダ風3Dアクションゲームの作り方講座【全16回!初心者でも3Dアクションがスマホ対応で作れる!】

ゼルダ風3Dアクションゲームの作り方講座

  • ゼルダの伝説・モンハン・原神のような3Dアクションをゼロから開発
  • 「3Dは難しそう」と感じている初心者でも取り組みやすい丁寧な解説構成
  • スマホ化対応で実機で動かせるゲームが完成
  • アセットを使った実践的なゲーム開発手法が身につく
  • 画像・動画・全ソースコード公開の充実したサポート

ゼルダ風3Dアクションゲームの作り方講座は、「3Dゲームは難しそう…」と感じている初心者こそおすすめの入門講座です。

全16回の丁寧な解説で、ゼルダの伝説・モンハン・原神のような本格的な3Dアクションゲームを確実に完成まで導きます。スマホ化対応で実機で動かせるため、初めて3Dゲームを作り上げた達成感がひときわ大きい講座です。

「3Dゲームを自分でも作れるか試してみたい」という初心者の最初の一歩として最適です。

初心者でも3Dアクションがスマホ対応で完成する
ゼルダ風3Dアクションゲームで3D開発の壁を一気に突破しよう
→ ゼルダ風3Dアクションゲームの作り方講座を見てみる
全16回でスマホで動くオリジナル3Dゲームを完成させよう!

まとめ

UnityのGizmosは、OnDrawGizmos内でDrawWireSphereやDrawLineを呼び、Sceneビューに範囲や方向を可視化する仕組みです。
ゲーム画面には出ず、開発中の確認専用。
攻撃範囲・索敵距離・レイの向きなど、数値だけでは分かりにくい情報を「見える化」できます。

まずは1つのpublic floatとDrawWireSphereから試し、慣れたら色分けやOnDrawGizmosSelectedでシーンを整理していきましょう。
Debug.Logと併用すると、ログの数値とSceneの形を照合しやすくなります。

実践的なゲーム制作でデバッグ手法を身につけたい方は、Unity入門の森の講座も参考になります。
当たり判定やAIの範囲設定を学ぶ中で、Gizmosの活用例も自然に触れられます。
今日はキャラクターに赤い球を1つ描いて、範囲のイメージを掴んでみてください。

コメント

タイトルとURLをコピーしました