一、VSCode安装EmmyLua 二、添加配置文件 三、设置配置文件 执行完第二步会弹出添加好的launch.json配置文件,这个文件只需要修改“ideConnectDebugger” = false,其他一般不用修改。
四、添加Lua断点调试入口 将一下代码放在Lua脚本入口处
if true then
package.cpath = package.cpath .. ";c:/Users/GY-039/.vscode/extensions/tangzx.emmylua-0.3.49/debugger/emmy/windows/x64/?.dll"
emmy = {}
__pathCache = {}
function emmy.fixPath(path)
if path == "Main" or path == "Agent" or path == "Test" then return path end
if __pathCache[path] then return __pathCache[path] end
local filePath = string.gsub(path, "%.", "/")
filePath = "Base/"..filePath..".lua"
__pathCache[path] = filePath
return filePath
end
local dbg = require("emmy_core")
dbg.tcpConnect("localhost", 9966)
end
代码中package.cpath后面的路径填的是EmmyLua插件的dll路径,在文件夹找到插件路径,然后替换即可。 五、运行unity测试断点功能 首先要确保Lua入口的断点调试代码为true,然后按下F5开启断点调试模式,再运行Unity,否则会报错,这个顺序不能错。 连接成功后,VSCode的控制台会看到以下信息,就证明是断点调试开启了 如果Lua入口的断点调试代码为true,但没有按下F5开启断点调试模式的话,运行Unity会报错,如下图,这是比较常见的报错。 LuaException: [Emmy]connection refused stack traceback: [C]: in function ‘error’ [C]: in ? [C]: in function ‘emmy_core.tcpConnect’ Test:86: in main chunk [C]: in function ‘require’ Main:35: in main chunk [C]: in function ‘require’ [string “chunk”]:3: in main chunk
|