Unity 6 VS Code 設定:修正 C# 自動完成失效與專案同步

Ted Liou 2025.06.09 Unity 最後更新 2026.03.17

快速摘要

截至 2026 年 3 月,Unity 6 搭配 VS Code 的關鍵前提只有幾個:裝對 Microsoft 的 Unity 擴充、確認 Unity 端使用 Visual Studio Editor 套件,並真的把 C# 專案從 Unity 開進 VS Code。

Unity 6 配 VS Code 這件事,卡人的地方通常不在 VS Code 好不好用,而是我們很容易照到舊做法。到了 2026 年 3 月,Unity 官方和 VS Code 官方給的路線已經很明確了:VS Code 端用 Microsoft 的 Unity 擴充,Unity 端確認 Visual Studio Editor 套件,再把 C# 專案真的從 Unity 開進 VS Code。請參考:IDE supportUnity Development with VS Code

只要這幾條線沒有接好,雙擊腳本能開檔,不代表 IntelliSense、專案同步或錯誤提示就一定正常。本文只處理這件事。

先把舊教學裡最容易踩到的點排掉

如果你是一路看舊文章學過來,第一個容易踩到的,就是去找 Visual Studio Code Editor 套件。這條線現在不要再走了。Unity 官方把它列為 legacy package,現在 VS Code 的整合是放在 Visual Studio Editor 套件這邊。

名稱只差幾個字,結果差很多。前者屬於舊做法,後者才是 Unity 6 目前還在維護的整合路徑。這件事先釐清,後面很多怪問題會少掉一半。

VS Code 端先裝對擴充

第一步還是先把 VS Code 本體裝好。請參考:Download Visual Studio Code

裝完之後,到延伸模組頁面搜尋 Unity,安裝 Microsoft 發佈的 Unity 擴充。

VS Code延伸模組介面,正在檢視Unity支援的延伸模組

依照 VS Code 官方文件,這個擴充會帶上 Unity C# 開發要用到的相依元件,例如 C# Dev Kit。因此,先別急著手動指定某個 .NET SDK 版本;比較穩的做法,是先把擴充裝好,第一次開 Unity 專案時如果還缺東西,再照提示補齊。

如果你平常習慣中文介面,這時候再補語言套件就好。那是使用習慣,不影響 Unity 和 VS Code 的整合。

英文的VS Code通知,詢問使用者是否要套用繁體中文到使用者介面

Unity 端要確認的是 Visual Studio Editor

回到 Unity 專案,打開 Window > Package Manager,確認專案裡有 Visual Studio Editor 套件。Unity 官方目前對 VS Code 的支援,也是建在這個套件上。

Unity的Package Manager介面,正在選取Visual Studio Editor套件

如果你看到的還是舊的 Visual Studio Code Editor,建議不要再沿用。它會讓整個流程看起來像有接上,實際上專案同步、語意分析和 IntelliSense 卻一直不穩。

把 External Script Editor 指到 VS Code

接著打開 Edit > Preferences,切到 External Tools,把 External Script Editor 設成 Visual Studio Code

在 Unity Preferences 的 External Tools 中設定 External Script Editor

這一步沒有技術花樣,就是讓 Unity 知道之後該把 C# 腳本交給哪個編輯器。如果這裡沒設好,後面很多判斷都會失真,因為你看到的只是「檔案被某個編輯器打開」,不是 Unity 專案真的正確同步到 VS Code。

真正的驗證,是把 C# 專案從 Unity 開進 VS Code

設定完成後,請直接在 Unity 裡建立一個新的 C# 腳本,然後雙擊開啟,或用 Assets > Open C# Project 把專案開進 VS Code。

這裡要看的,是 VS Code 左下角的 C# 狀態、Unity 產生的 .csproj 有沒有被辨識,以及 IntelliSense 會不會跟著工作。這幾個都正常,後面才值得談日常開發效率。

最簡單的測試方式,就是在腳本裡輸入:

1gameObject.transform.

如果自動完成能正常跳出 positionrotationlocalScale 這些成員,代表 Unity 專案、C# 語意分析和編輯器整合都已經接好了。

VS Code正在編輯Unity的GameManager.cs,正輸入gameObject.transform.,正在透過快速選單選擇可用的副程式

還卡住時,先回頭看四件事

真的遇到自動完成失效,先不要急著重裝整台機器。把下面四件事照順序檢查,通常比較快:

  1. VS Code 的 Unity 擴充有沒有正常啟用。
  2. Unity 專案裡是不是 Visual Studio Editor 套件。
  3. External Script Editor 有沒有真的設成 VS Code。
  4. C# 專案是不是從 Unity 成功開進 VS Code,而不是只開了一個單獨的 .cs 檔。

這四件事都對了,IntelliSense 仍然不動,再去看擴充輸出訊息、信任工作區設定或重新產生專案檔,方向會準很多。

總結

Unity 6 和 VS Code 仍然可以配得很好,但前提是走現在還在維護的路線。VS Code 端裝 Microsoft 的 Unity 擴充,Unity 端確認 Visual Studio Editor 套件,External Script Editor 指向 VS Code,再從 Unity 真的把 C# 專案開進編輯器。這幾件事一旦通了,自動完成、語意分析和日常寫腳本才會回到正常狀態。

如果想用一個更小的題目確認整條流程有沒有真的接上,下一步很適合接 Unity Android 開發:用計數器 App 驗證 UI、事件與腳本流程

常見問題

可以。Unity 官方仍支援 VS Code,只是做法和舊教學不同,現在要走 Microsoft 的 Unity 擴充,搭配 Unity 端的 Visual Studio Editor 套件。

不建議。這個舊套件已經是 legacy package,現在應該改用 Visual Studio Editor 套件處理外部編輯器整合。

先檢查 VS Code 的 Unity 擴充有沒有正常啟用、Unity 專案裡是不是 Visual Studio Editor 套件、External Script Editor 有沒有指到 VS Code,以及 C# 專案是否真的從 Unity 成功開進 VS Code。

作者

Ted Liou

現職 Unity C# 工程師,主要分享 Unity、C# 與 Vibe Coding 相關技術教學。

上一篇 Unity + Arduino:用 RFID 開發實體道具辨識的互動功能 下一篇 VS Code + uv:建立 Python 開發環境與 `.venv` 管理流程