• ゲーム
  • Industry
  • リソース
  • コミュニティ
  • 学習
  • サポート
開発
Unityエンジン
任意のプラットフォーム向けに2Dおよび3Dゲームを構築
ダウンロードプランと価格
収益化
アプリ内課金(IAP)
ストア全体でIAPを発見し、管理する
Mediation
収益を最大化し、マネタイズを最適化する
Ad Quality
アプリのユーザーエクスペリエンスを保護する
Tapjoy
長期的なユーザーの忠誠心を構築する
すべてのマネタイズ製品
詳しく見る
詳しく見る
発見され、モバイルユーザーを獲得する
UnityベクターAI
プレイヤーを適切なゲームに接続する
Auraのオンデバイス広告
ピークエンゲージメント時にデバイス上のユーザーにリーチする
すべての成長製品
活用事例
3Dコラボレーション
リアルタイムで3Dプロジェクトを構築およびレビューする
没入型トレーニング
没入型環境でのトレーニング
顧客体験
インタラクティブな3D体験を作成する
すべての業界ソリューション
業界
製造業
運用の卓越性を達成する
小売
店内体験をオンライン体験に変換する
自動車
革新と車内体験を高める
全業界
技術ライブラリ
ドキュメント
公式ユーザーマニュアルとAPIリファレンス
開発者ツール
リリースバージョンと問題追跡
ロードマップ
今後の機能をレビューする
用語集
技術用語のライブラリ
インサイト
ケーススタディ
実際の成功事例
ベストプラクティスガイド
専門家のヒントとコツ
すべてのリソース
新機能
ブログ
更新情報、情報、技術的ヒント
お知らせ
ニュース、ストーリー、プレスセンター
コミュニティハブ
ディスカッション
議論、問題解決、つながる
イベント
グローバルおよびローカルイベント
コミュニティストーリー
Made with Unity
Unityクリエイターの紹介
ライブストリーム
開発者、クリエイター、インサイダーに参加する
Unity Awards
世界中のUnityクリエイターを祝う
すべてのレベルに対応
Unity Learn
無料でUnityスキルをマスターする
プロフェッショナルトレーニング
Unityトレーナーでチームをレベルアップ
Unity初心者向け
スタートガイド
学習を開始しましょう
Unityエッセンシャルパスウェイ
Unity は初めてですか?旅を始めましょう
ハウツーガイド
実用的なヒントとベストプラクティス
教育
学生向け
キャリアをスタートさせる
教育者向け
教育を大幅に強化
教育機関向けライセンス
Unityの力をあなたの機関に持ち込む
認定教材
Unityのマスタリーを証明する
サポートオプション
ヘルプを得る
Unityで成功するためのサポート
Success Plan
専門的なサポートで目標を早く達成する
FAQ
よくある質問への回答
お問い合わせ
私たちのチームに連絡する
プランと価格
言語設定
  • English
  • Deutsch
  • 日本語
  • Français
  • Português
  • 中文
  • Español
  • Русский
  • 한국어
ソーシャル
通貨
購入
  • プロダクト
  • Unity Ads
  • サブスクリプション
  • Unity Asset Store
  • リセラー
教育
  • 学生
  • 教育関係者
  • 教育機関
  • 認定資格試験
  • 学ぶ
  • スキル開発プログラム
ダウンロード
  • Unity Hub
  • ダウンロードアーカイブ
  • ベータプログラム
Unity Labs
  • ラボ
  • 研究論文
リソース
  • Learn プラットフォーム
  • コミュニティ
  • ドキュメント
  • Unity QA
  • FAQ
  • サービスのステータス
  • ケーススタディ
  • Made with Unity
Unity
  • 当社について
  • ニュースレター
  • ブログ
  • イベント
  • キャリア
  • ヘルプ
  • プレス
  • パートナー
  • 投資家
  • アフィリエイト
  • セキュリティ
  • ソーシャルインパクト
  • インクルージョンとダイバーシティ
  • お問い合わせ
Copyright © 2025 Unity Technologies
  • 法規事項
  • プライバシーポリシー
  • クッキーについて
  • 私の個人情報を販売または共有しないでください

「Unity」の名称、Unity のロゴ、およびその他の Unity の商標は、米国およびその他の国における Unity Technologies またはその関係会社の商標または登録商標です(詳しくはこちら)。その他の名称またはブランドは該当する所有者の商標です。

Hero background image

Microsoft Visual Studio 2022でコードをデバッグする方法

このウェブページは、お客様の便宜のために機械翻訳されたものです。翻訳されたコンテンツの正確性や信頼性は保証いたしかねます。翻訳されたコンテンツの正確性について疑問をお持ちの場合は、ウェブページの公式な英語版をご覧ください。
ここをクリックしてください。

Unityは、JetBrains Rider、Atom、Microsoft Visual Studioコード、Visual Studioなど、さまざまなコードエディタをサポートしています。Visual Studio は、Unity エディターとともにデフォルトでインストールされるビルトインパッケージです。

この記事では、2022 年版の Microsoft Visual Studio デバッガーを使用するためのヒントを紹介します。このデバッガーを使用すると、コードのバグを効率的に修正できます。Visual Studioでの一般的な生産性向上のヒントについて詳しく知りたい方は、ブログ記事「10 ways to speed up your workflow in the Visual Studio」をご覧ください。

  • Visual Studio 2022 デバッグツールのインストール
  • Unity への Visual Studio デバッガーの取り付け
  • ブレークポイントの使用
  • 条件付きブレークポイント
  • ローカル
  • 見る
  • コールスタック
  • ビルドのデバッグ
  • 上級者向け Unity クリエイター向けのその他のリソース
VisualStudio

Visual Studio 2022 デバッグツールのインストール

Visual Studio 2022はUnityをビルトインサポートしており、IDEを離れることなく、スクリプトの記述と編集、Unity固有の機能へのアクセス、ゲームコードのデバッグを簡単に行うことができます。IntelliSense のコード補完、構文の強調表示、コードスニペットなどの機能を提供し、より迅速かつ効率的にコードを記述するのにヘルプます。さらに、ブレークポイントの設定、コードのステップ実行、変数の検査、ランタイム時の式の評価などのデバッグツールを利用できます。

Visual Studio には、無料コミュニティ版を含む複数のバージョンがあります。

この記事は、2022 年版の Visual Studio に基づいています。2019 バージョンも機能は同じですが、スクリーンショットが少し異なります。デフォルトで、Unityの新規インストールでは、Visual Studioのコミュニティ バージョンと、Visual StudioとUnityを統合するGame Development with Unityという拡張子がインストールされます。Visual Studio のインストールを選択しない場合は、こちらからコピーを入手できます。Visual StudioをUnityと連携させる設定の詳細については、こちらを参照してください。

UnityエディターにVisual Studioをインストールしたら、Unity>Preferences>External Toolsを開き、外部スクリプト エディターとしてVisual Studioを選択します。

Unity へのデバッガーの取り付け

Unity への Visual Studio デバッガーの取り付け

エディターで実行中のプロジェクトのコードのリアルタイムデバッグを可能にするには、Visual Studio デバッガーをエディターにアタッチする必要があります。これにより、デバッガーがゲームのランタイム状態にアクセスして操作できるようになります。これをアタッチする手順を見ていきましょう。

デバッグする Unity プロジェクトを開きます。

Unity で、編集> 環境設定 (Windows) または Unity> 環境設定 (macOS) に移動し、Visual Studio が優先外部スクリプト エディタとして設定されていることを確認します。表示されていない場合は、ドロップダウンメニューから選択します。

Project ウィンドウでスクリプト ファイルをダブルクリックするか、Assets> Open C# Project メニュー オプションを使用して、Visual Studio で目的のスクリプトを開きます。

Visual Studioで、[Debug]>[Attach Unity Debugger]に移動するか、ツールバーの[Attach to Unity]ボタンをクリックします。ウィンドウが開き、使用可能なUnityインスタンスのリストが表示されます。

プロジェクトを実行しているUnityインスタンス(通常は「Unityエディター(プロジェクト名)」と表示されます)を選択し、[Attach]をクリックします。

Visual Studio が Unity に接続され、ブレークポイントの設定とコードのデバッグを開始できます。ゲームがエディターで実行されていると、次のセクションに示すように、Visual Studio デバッガーがブレークポイントで実行を一時停止し、ゲームの状態を確認してコードをデバッグできます。

初めてのデバッグセッションの場合は、現在のセッションまたはすべてのセッションのデバッグを有効にするオプションを示すウィンドウが表示されます。前者の「Enable debugging for this session」を選択することをお勧めします。

VisualStudio

ブレークポイントの使用

ブレークポイントは、特定のコード行にあるマーカーです。デバッガーはブレークポイントを検出するとプログラムの実行を停止し、変数、オブジェクト、およびコールスタックの現在の状態を検査できます。その後、コードの 1 行 1 行をステップ実行し、プログラムの実行中に状態がどのように変化するかを確認できます。

Visual Studio でブレークポイントを設定するには、スクリプトを開き、コードエディタのコード行の横にある実行を一時停止するマージンをクリックします。または、行にカーソルを置き、F9 キーを押します。上の画像に示すように、ブレークポイントが設定されていることを示す赤い点が表示されます。

次に、Unityエディターに移動してゲームをプレイします。プログラムの実行がブレークポイントのある行に達すると、Visual Studio はブレークポイントのある行でプログラムの実行を一時停止したフォアグラウンドのアクティブアアプリケーションになります。この時点で、Visual Studio のツールを使用して変数を検査できます。

最も簡単なオプションは、オブジェクト、プロパティ、または単純変数の上にカーソルを置くことです。Visual Studio にオーバーレイレイパネル(上のコラージュの下の画像)が追加され、関数のオーバーロード、オブジェクトのプロパティ、プロパティや変数の値をビューできるようになります。

オーバーレイに右向きの矢印がある場合は、これをクリックするとパネルが拡張され、オブジェクトのプロパティの内部値に関する詳細な情報が表示されます。

実行中のプログラムで値を調べるこの機能は非常に便利です。

Visual StudioがUnityにアタッチされると、[デバッグ]>[Attach to Unity]の右側に新しいツールバーが追加されます。このツールバーの 4 つのボタンは、左から右に向かって次の操作を行います。

  • 実行継続/一時停止:プログラムが再生中の場合は、一時一時停止アイコンがディスプレイされ、これをクリックすると実行を一時一時停止できます。プログラムを一時停止した状態で、 を押すとプログラムの実行が再開されることを示す右矢印アイコンが表示されます。
  • ステップ オーバー:このボタンを押すと、強調表示されているコード行が実行され、次の行で再び一時停止します。
  • ステップイン:アクティブなコード行にソースコードがプロジェクトの一部である関数が含まれている場合、開発者はこのボタンを使用して関数とそのコードをステップインおよびステップスルーできます。
  • ステップアウト:これにより、プログラムの実行が現在の関数外に移動します。
VisualStudio

条件付きブレークポイント

条件付きブレークポイントは、指定された条件が満たされた場合にのみ実行を一時停止する上級者向けのブレークポイントです。これは、特定のシナリオを調査する場合や、特定の条件下でのみ問題が発生する場合に便利です。

サイドバーまたは下部パネルのブレークポイントウィンドウでブレークポイントを右クリックすると、コンテキストメニューが表示されます。「ブレークポイントを編集」を選択します上の画像に示すダイアログボックスが表示されます。

その他のデバッグツール

Visual Studio のデバッガーウィンドウには、ブレークポイントでアプリケーションが一時停止している間、アプリケーションの状態を検査ヘルプWindowsがいくつかあります。プログラムの状態を調べるために不可欠な 3 つの Windows は、ローカル、ウォッチ、およびコールスタックです。次のセクションでは、それぞれについて説明します。

VisualStudio

ローカル

「局所」ウィンドウに、実行コードの現在のスコープ内のローカル変数とその値が表示されます。これには、現在のメソッドまたはブロック内で宣言されている変数や、メソッドの引数も含まれます。「局所」ウィンドウでは、現在のブレークポイントの変数の値を簡単に調べることができます。これは、コードで問題を引き起こしている可能性のある、正しくない値や予期しない値を特定するのに役立ちます。行の先頭が右向きの矢印の場合は展開可能で、下向きの矢印の場合は展開されたウィンドウが縮小されます。

「ウォッチポイント」ウィンドウ

見る

「ウォッチポイント」ウィンドウでは、デバッグプロセス中に監視する特定の変数または式を追跡できます。現在のスコープ内の変数を表示する「局所」ウィンドウとは異なり、「ウォッチポイント」ウィンドウでは、スコープに関係なく、変数または式を手動で追加できます。これは、プログラムの実行全体を通して特定の変数の状態を追跡したり、アプリケーションの現在の状態に基づいて式を評価したりする場合に便利です。

スコープ内の変数またはオブジェクトの名前を入力すると、検査できるパネルが追加されます。Visual Studio でウォッチポイントを追加するには、コード内の変数または式を右クリックし、コンテキストメニューから「ウォッチポイントを追加」を選択するか、式を「ウォッチポイント」ウィンドウに直接入力します。

「コールスタック」ウィンドウ

コールスタック

「コールスタック」ウィンドウには、現在のブレークポイントにつながるメソッド呼び出しのシーケンスが表示され、プログラムの実行パスを追跡できます。コールスタック内の各エントリーはメソッド呼び出しを表し、リストの先頭には最新の呼び出しが表示されます。コールスタックを調べることで、現在の実行ポイントにコードがどのように到達したかを判断し、問題や予期しない動作の根本原因を特定するのに役立ちます。

「コールスタック」ウィンドウでは、メソッド呼び出しのシーケンスが表示されるほか、スタックの各レベルを移動できます。リスト内のエントリーをダブルクリックすると、ソースファイル内の対応するコード行にジャンプし、そのメソッドのローカル変数およびパラメータをビューできます。これにより、特定のメソッドが呼び出されたコンテキストを理解し、アプリケーション内のデータを分析することが簡単になります。

ビルド設定

ビルドのデバッグ

Visual Studio デバッガーは、Unity エディターで実行されるゲームだけでなく、ビルドにも役立ちます。ビルドにデバッガが使用するデータが含まれていることを確認する必要があります。これは、「ファイル」>「ビルド設定」から行い、表示されるウィンドウで「開発ビルドとスクリプトデバッグ」を選択します(上の画像を参照)。

Windows の場合はメインメニューから「デバッグ」>「Unity デバッガーを接続」、MacOS の場合はトップメニューから「デバッグ」>「プロセスに接続」を選択します。

Unity Player というインスタンスを選択します。これで、すべてのブレークポイント、ローカル、およびウォッチポイントが開発ビルドで使用可能になりました。

クリーンなコードを書く

上級者向け Unity クリエイター向けのその他のリソース

別のコードエディタを使用する予定がありますか?Microsoft Visual Studioコードのヒントに関する記事をお読みください。

Unity では、プロの開発者がゲームコードを最適化するのにヘルプ立つ上級者向けなガイドを多数提供しています。C# スタイルガイドを作成する:業界エキスパートからのアドバイスをまとめた、よりクリーンなコードを作成し、チームがクリーンで読みやすく、拡張性の高いコードベースを開発するのに役立つコードスタイルガイドを作成します。

ユーザーに人気のあるもう1つのガイドは、「70+ tips to increase productivity with Unity」です。経験豊富な開発者でも見逃しているかもしれないヒントなど、Unity 2020 LTSで日常的な集計ワークフローを改善する時間節約のヒントが満載です。

Unity Best Practices Hubでは、Unityの上級者向けのeBookや記事をすべてご覧いただけます。