VsCode使用EmmyLua插件调试Unity工程Lua代码的详细步骤

1. 安装插件

首先,我们需要在Visual Studio Code中安装EmmyLua插件。打开VSCode,在Extensions面板中搜索EmmyLua,点击安装插件。

2. 配置项目

在Unity工程中,我们需要配置EmmyLua的相关参数。在项目的根目录下创建一个.emmy文件,并在其中添加以下内容:

{

"Lua": {

"runtime": "Lua 5.1",

"annotation": {

"type": "emmylua"

},

"workspace": [

"Assets/Scripts/"

]

}

}

这里的配置指定了Lua的运行环境为Lua 5.1,并且指定了EmmyLua注释的类型。workspace字段指定了Lua代码所在的目录,在这个目录下的Lua文件将会被EmmyLua插件处理。

3. 启动Unity的Lua调试模式

在Unity编辑器中,进入到PlayerSettings面板,在Scripting Define Symbols字段中添加“EMMY_LUA_DEBUG”。这将会启用Unity的Lua调试模式,以便与VSCode中的插件进行交互。

4. 设置VSCode的调试配置

打开VSCode,并点击“调试”按钮进入调试面板。在面板的左上角点击齿轮按钮,选择“Lua Debugger”选项。然后点击左侧的“添加配置”按钮,选择“Lua Debugger”选项。

在出现的.vscode/launch.json文件中,我们需要进行如下配置:

{

"version": "0.2.0",

"configurations": [

{

"name": "Launch Current File",

"type": "lua",

"request": "launch",

"program": "${file}",

"stopOnEntry": true,

"sourceMaps": true,

"localRoot": "${workspaceFolder}",

"luaRoot": "${workspaceFolder}/Assets/Scripts",

"lua": {

"customRuntime": "E:/Code/lua/bin/luajit.exe",

"lua52": false

}

}

]

}

这里的配置中,我们指定了调试启动的选项。"program"字段设置为"${file}",表示调试启动的文件为当前打开的文件。"localRoot"字段设置为"${workspaceFolder}",表示当前工作空间的根目录。"luaRoot"字段设置为"${workspaceFolder}/Assets/Scripts",表示Lua代码所在的目录。"customRuntime"字段设置为Lua的运行时路径。

5. 开始调试

现在,我们可以开始调试Lua代码了。在VSCode中打开一个Lua文件,设置断点,然后点击调试面板中的绿色播放按钮。VSCode会连接到Unity编辑器中正在运行的Lua调试模式,并在断点处停下来。

在调试过程中,您可以使用VSCode的调试工具栏进行调试操作,包括单步执行、查看变量值等。

6. 对Lua代码进行调试

在调试过程中,您可以在VSCode中按照正常的调试流程对Lua代码进行调试。您可以设置断点,单步执行代码,查看变量的值等。

以下是一些常用的调试操作:

- 设置断点:在要设置断点的行上点击编辑器的左侧边栏。

- 单步执行:在调试工具栏中点击单步执行按钮,或使用快捷键F10。

- 跳过函数调用:在调试工具栏中点击跳过函数调用按钮,或使用快捷键F11。

- 查看变量值:在调试工具栏中点击查看变量值按钮,或使用快捷键Shift+F9。

7. 结束调试

当您完成调试时,可以点击调试面板中的红色停止按钮或使用快捷键Shift+F5来结束调试。此时,VSCode将与Unity编辑器中的Lua调试模式断开连接。

总结

通过EmmyLua插件和VSCode的调试功能,我们可以方便地调试Unity工程中的Lua代码。首先,我们需要安装EmmyLua插件,并在Unity工程中配置EmmyLua的参数。然后,我们需要启动Unity的Lua调试模式,并在VSCode中设置调试配置。最后,我们可以使用VSCode的调试功能来调试Lua代码。在调试过程中,我们可以设置断点,单步执行代码,查看变量的值等。

免责声明:本文来自互联网,本站所有信息(包括但不限于文字、视频、音频、数据及图表),不保证该信息的准确性、真实性、完整性、有效性、及时性、原创性等,版权归属于原作者,如无意侵犯媒体或个人知识产权,请来电或致函告之,本站将在第一时间处理。猿码集站发布此文目的在于促进信息交流,此文观点与本站立场无关,不承担任何责任。

后端开发标签