本文將簡單說明如何在 Visual Studio Code (簡稱 VS code) 中,進行Unity Debug (除錯)。
但注意,只有C# only。
安裝 Unity 官方替 VS Code 製作的 Debug (除錯) 插件。
2、在搜尋列輸入 Unity Debug ,選擇 Debugger for Unity 並點選 Install 安裝
檢查程式是否有進入特定程式碼區段,並查尋變數狀態。
程式碼內總是充滿複雜交錯的 【判斷式】 與 【變數】 ,
接下來簡單介紹如何用VS cdoe 查詢程式碼【現在】執行到那一行、【現在】特定變數的狀態
以下代碼作為說明:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 | public class main : MonoBehaviour { void Start() { var ans = testBug(); } int testBug() { var r = Random.Range(1, 10); if (r <= 5) { return 1; } if (r <= 10) { return 2; }; return 0; } } |
testBug這個方法中,會產成一個0~10的隨機變數 r (第10行),
並依據 r 變數的大小回傳 0、1、2 三種整數。(第12~22行)
如何至到程式執行到那 ?如何檢視此時變數狀態?
1、在VS Cdoe 中,點擊行數的最前端可以新增【中斷點】
2、設定好中斷點後,點擊VS code的除錯模式按鈕,並點擊畫面上綠色箭頭按鈕。
3、初次執行時會詢問要用那個除錯器,選 Unity Debugger。
4、選擇 Unity Debugger 後會跳出 launch.json 檔案...直接關掉吧。
5、再次重複步驟 2 ,點擊綠色按鈕(或是按F5)
7、這時候我們 Unity 執行的Play 鍵,會出現下面的畫面:
8、從上影片中可看到第18行出現了黃色的底色標註。
9、這是因為我們在18行設定了【中斷點】,並且程式執行到了這一行。
10、程式因中斷點而暫停時,可以在此時透過滑鼠檢視特定變數,例如 r 變數...
11、如果我們要讓程式繼續執行並持續監控,可以點擊控制列的綠色撥放按鈕8、從上影片中可看到第18行出現了黃色的底色標註。
9、這是因為我們在18行設定了【中斷點】,並且程式執行到了這一行。
10、程式因中斷點而暫停時,可以在此時透過滑鼠檢視特定變數,例如 r 變數...
12、如果我們要讓程式繼續執行並停止監控,可以點擊控制列的紅色停止按鈕
上述範例檔案下載
請問關於launch.json的設定 在每一次執行專案的時候都會把設定洗回最一開始的unity
回覆刪除這時該如何讓它保持在設定為unity debugger的狀態呢?
有人提供方法是改成“唯讀”
但這個方法在mac中似乎不適用
請問該怎麼做才好?@@
我都很阿Q的不理他耶... 我想想看有什麼解法
刪除