Qiita Teams that are logged in
You are not logged in to any team

Log in to Qiita Team
Community
OrganizationEventAdvent CalendarQiitadon (β)
Service
Qiita JobsQiita ZineQiita Blog
9
Help us understand the problem. What are the problem?

posted at

updated at

Unity2019とVSCodeでブレークポイントを使ってデバッグ出来るようにする手順

概要

タイトルの通り、UnityとVSCodeを使ってデバッグ出来るようにするまでの手順を説明
UnityやVSCodeのバージョンが上がると手順が異なるのが常なので、2020/07/23現在に有効な手法だと思ってほしい
ここではWindowsでのやり方を説明する

環境

Unity 2019.3.6f1
VSCode 1.47.2
.NetCoreSDK 3.1
.NetFramework 4.7.1

インストール

Unity

↓からUnityHubをインストールして、その後やり方がわからなければ他のサイト調べてください
https://unity3d.com/jp/get-unity/download

VSCode

.NetCoreSDK 3.1

windowsのx64を選択
https://dotnet.microsoft.com/download/dotnet-core/3.1

.NetFramwork 4.7.1

「Developer Pack」を選択
https://dotnet.microsoft.com/download/dotnet-framework/net471

VSCodeの拡張機能インストール

  • C#
  • Debugger for Untiy

00.png
01.png

日本語化したい場合

  • Japanese

02.png

全てインストール後

全てのインストールが終わったら、PCを再起動してください。
再起動しないと.NetCoreSDKが適応されません。

Unityの設定

エディタの変更

エディタをVSCodeにします
03.png
04.png

Visual Studio Code Editor

Package Managerの「Visual Studio Code Editor」のバージョンを1.2.0以上にする必要がある
101.png
102.png

動作確認用のテストスクリプトを作成

test.csを作成して、MainCameraに張り付けとく
05.png

test.csをダブルクリックしてVSCodeでスクリプトを開く
06.png

VSCodeの設定

ブレークポイントを設置のための初期設定

この作業は.vscodeフォルダ内のファイルが削除されない限り最初の1回のみしか行わない

左側の実行アイコンをクリックして、「launch.jsonファイルを作成します」をクリックする
07.png

「Unity Debugger」を選択する
08.png

ブレークポイントを設定する

test.csのStartに何かを入れて、F9を押してブレークポイントを仕掛ける
09.png

F5を押してデバッグ状態にする
10.png

Unityを実行する

UnityのPlayボタンを押す
103.png

VSCodeで処理が止まれば成功
11.png

おまけ

インテリセンスが正しく機能しないときは、「.csproj」がVSCode用になっていないので削除してから再度Unityを起動しなおし、メニューのAsset→Open C# Projectを選択
100.png

Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
9
Help us understand the problem. What are the problem?