跳到主要内容

14 — Settings

Project Settings → ZLua 的字段契约。资源文件:ProjectSettings/ZLua.asset。 菜单 ZLua/Settings... 打开同一页。用法见 Settings(指南)。


1. 存储​

项规则
类型ZLua.Settings(ScriptableSingleton)
路径ProjectSettings/ZLua.asset
缺省字段资源里尚未序列化的字段按 C# 字段初值(bool 为 false,引用为 null)
生效Editor 改完即写入。依赖 XML 的 Il2Cpp 绑定在 ZLua/Generate/All 时烘焙;改 XML 路径或 Unity 优化开关后须重新 Generate

2. 字段​

字段类型默认含义
enablebooltrue是否启用 ZLua。当前构建目标是否启用见 Settings.EnableForCurrentBuildTarget
luaVersionIdstringlua-5.5.0PUC-Rio:lua-X.Y.Z;LuaJIT:luajit-M.N;Luau(luau 分支):luau-M.N(如 luau-0.743)。空字符串按 lua-5.5.0。细则 11-MULTI-VERSION.md
marshalAsXmlPathsstring[]空MarshalAs XML 文件或目录(相对工程根或绝对路径)。根元素 ZLuaMarshalAs。见 marshal/02-MARSHAL-AS.md
luaAliasXmlPathsstring[]空LuaAlias XML 文件或目录。根元素 ZLuaAlias。见 04-METHOD-OVERLOAD.md §5.4
luaExtensionXmlPathsstring[]空LuaExtension XML 文件或目录。根元素 ZLuaExtensions。见 13-EXTENSION-METHODS.md
enableUnityOptimizationsbooltrueUnity 优化总开关。关闭时 不 加载包内 Unity 优化 XML。当前包含项见 15-UNITY-OPTIMIZATIONS.md。以后新增的 Unity 优化挂在 同一开关 下,不另设逐 API 开关
enableDebuggerboolfalse仅 Editor Mono:Initialize 之后注入 EmmyLua emmy_core。见 build/04-EMMYLUA-DEBUGGER.md
debuggerPortint9966EmmyLua tcpListen 端口
debuggerWaitIDEboolfalsetrue 时 dbg.waitIDE() 阻塞 Unity 主线程直到 IDE Attach

XML 三类路径 只 用于非热更新程序集。热更新程序集用对应 Attribute,不写进这些 XML。


3. 加载顺序​

Editor Mono 与 Il2Cpp Generate 读取上述路径列表。enableUnityOptimizations == true 时,在用户列表 之前 插入包内文件(见 §15)。同一 (assembly, type, method, signature) 在 Alias 或 MarshalAs 中出现两次 → 加载失败。