SHOEISHA iD

※旧SEメンバーシップ会員の方は、同じ登録情報(メールアドレス&パスワード)でログインいただけます

DeveloperZine(デベロッパージン)- エンジニアの意思決定を支える技術情報メディア ProductZine

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

Godot Engine 2Dゲーム開発入門

【Godot Engine 2Dゲーム制作 Part4】UI部品を作成し、リストダイアログをつくろう

Godot Engine 2Dゲーム開発入門 第6回

VSCodeでGDScriptを書くには?

注意点

 最後に、Visual Studio Code(VSCode)で、GDScriptを書く方法を説明します。

 ふだんからVSCodeに慣れている人は、専用エディターではなくVSCodeで書きたいと思うでしょう。

 この設定をおこなう前に、1つだけ注意してください。Godot Engineのエディターで開いているプロジェクトのスクリプトを、全て閉じておいてください。

 Godot Engineのエディターでスクリプトを開いている状態でVSCodeで書き進めた場合、Godot Engine側で「Ctrl+S」で保存すると、VSCodeで書いた内容が全て上書きされて消えます。

 VSCodeでアンドゥーをしても戻すことはできません。私はこの状態になり、数日へこみました。

 VSCodeで開くように設定したあとは、Godot Engineのエディター上でスクリプトを開こうとすると、VSCodeで開くようになります。設定を切り替えるタイミングでしか発生しない問題ですが、注意が必要です。

Godot Engineのエディターでの設定

 それでは設定方法を書きます。トップメニューの「エディター」>「エディター設定」>で「エディター設定」ダイアログを開きます。そして、右上の「高度な設定」をオンにします。

 「一般タブ」の「テキストエディター」>「外部」の「外部エディターを使用」を「オン」にします。そして「実行パス」と「実行フラグ」を設定します。

 まずは「実行パス」です。VSCodeのパスを設定します。ファイルアイコンをクリックして、VSCodeのパスを設定します。

 Windowsなら、C:/Users/<ユーザー名>/AppData/Local/Programs/Microsoft VS Code/bin/code.cmdにあるはずです。<ユーザー名>は、ログインしているユーザーの名前です。ファイルはcode.cmdを選ぶ必要があるので注意してください。

 「実行フラグ」はデフォルトでは{file}です。この内容を、{project} --goto {file}:{line}:{col}に変更します。使用する外部エディターによって設定が異なります。他の外部エディターについては、公式のページを参考にしてください。

外部エディターの設定
外部エディターの設定

 もう1ヶ所、エラーを防ぐためにしておいた方がよい設定があります。外部テキスト エディタによって変更されたスクリプトを、Godot Engineのエディターで自動的に再読み込みする設定です。冒頭に書いたような上書きによるスクリプトの消失を防ぐためのものです。

 トップメニューの「エディター」>「エディター設定」>で「エディター設定」ダイアログを開きます。そして、右上の「高度な設定」をオンにします。

 「一般タブ」の「テキストエディター」>「ビヘイビア」(動作)の、「ファイル」>「外部変更時にスクリプトを自動再読み込み」を「オン」にします。

外部変更時にスクリプトを自動再読み込み
外部変更時にスクリプトを自動再読み込み

VSCodeでの設定

 VSCode側では公式プラグイン「godot-tools」をインストールします。

godot-tools
godot-tools

 インストールするだけでは駄目で、設定もおこなう必要があります。

 「Ctrl+,」で「Settings」を開き、「Extensions」の「Godot Tools」を開きます。必須の設定は「Editor Path: Godot4」です。ここに、Godot Engineの実行ファイル(Godot_v4.4.1-stable_win64.exeなど)のフルパスを書きます。

プロジェクトの開き方

 プロジェクトをVSCodeで編集するには、まず先にGodot Engineのエディターでプロジェクトを開きます。そのあと「ファイルシステム」ドックで、拡張子が.gdのファイルをダブルクリックします。すると、VSCodeでプロジェクトが読み込まれ、ファイルが開いた状態になります。

 この状態になれば、スクリプトをVSCodeで書くことができます。シンタックスハイライトもおこなわれますし、インテリセンスも使えます。

godot-tools
godot-tools

VSCodeからのデバッグ実行

 VSCodeの「Run and Debug」を利用してスクリプトを実行する方法を示します。

 VSCodeでlaunch.json.vscode/launch.json)を作ります。「Activity Bar」で「Run and Debug」を開き、「Add Configration」でGodotのデバッグ設定を作ります。次の3つが用意されています。

  • GDScript: Launch Project …… プロジェクトを開く
  • GDScript: Launch Pinned File …… ピン留めしたファイルを開く
  • GDScript: Launch Current File …… 現在のファイルを開く

 たとえばGDScript: Launch Projectを選んだ場合は、次のような設定がlaunch.jsonに加わります。

json
{
    // Use IntelliSense to learn about possible attributes.
    // Hover to view descriptions of existing attributes.
    // For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387
    "version": "0.2.0",
    "configurations": [
        {
            "name": "GDScript: Launch Project",
            "type": "godot",
            "request": "launch",
            "project": "${workspaceFolder}",
            "debug_collisions": false,
            "debug_paths": false,
            "debug_navigation": false,
            "additional_options": ""
        }
    ]
}

 実行すると、ゲームが起動して「DEBUG CONSOLE」に出力があります。

デバッグ実行
デバッグ実行

 基本的には、これで上手くいくはずです。私の環境では、ここまでの設定で問題なく動作しています。

 もし上手くいかない場合は、何らかのネットワークの問題の可能性があります。次の2カ所を見直してみてください。

  • VSCode
    • Settings
      • 「Godot Tools」>「Lsp: Server Host」
  • Godot Engineのエディター
    • 「エディター設定」の「一般」タブ
      • 「ネットワーク」>「デバッグ」>「リモートホスト」
      • 「ネットワーク」>「言語サーバー」>「リモートホスト」

 使用しているマシンの環境に合わせて、変更しなければならない可能性があります。

次のページ
まとめ

この記事は参考になりましたか?

Godot Engine 2Dゲーム開発入門連載記事一覧

もっと読む

この記事の著者

柳井 政和(ヤナイ マサカズ)

クロノス・クラウン合同会社 代表社員http://crocro.com/オンラインソフトを多数公開。プログラムを書いたり、ゲームを作ったり、記事を執筆したり、マンガを描いたり、小説を書いたりしています。「めもりーくりーなー」でオンラインソフト大賞に入賞。最近は、小説家デビューして小説も書いています(『裏切りのプログラム』他)。面白いことなら何でもOKのさすらいの企画屋です。 

※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です

この記事は参考になりましたか?

この記事をシェア

CodeZine(コードジン)
https://codezine.jp/article/detail/21374 2025/08/07 11:00

イベント

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

新規会員登録無料のご案内

  • ・全ての過去記事が閲覧できます
  • ・会員限定メルマガを受信できます

メールバックナンバー