Lua 问题 持久更新

本文解决在使用Lua调用C#代码时遇到的错误,具体为无法找到UnityEngine.Light下的lightmapBakeType定义的问题。通过调整代码位置,并在ExampleGenConfig.cs文件中补充缺失部分,再利用xlua插件清理并重新生成wrap文件来修复。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

问题一:可以正常跑Lua代码,但是编译打包出错   错误信息:

Assets/XLua/Gen/UnityEngineLightWrap.cs(614,59): error CS1061: Type `UnityEngine.Light' does not contain a definition for `lightmapBakeType' and no extension method `lightmapBakeType' of type `UnityEngine.Light' could be found. Are you missing an assembly reference?

解决方法: 将lua下的示例代码ExampleGenConfig.cs 提到Editor下 添加缺失的部分 我这里是UnityEngine.Light下的lightmapBakeType

new List<string>(){"UnityEngine.Light", "lightmapBakeType"},

 

执行菜单xlua ->Clear Generator code ,再执行xlua ->Generator code 

截图:

原理:

 想在lua中调用C#的代码,一般要生成相应的wrap文件,xlua通过打标签的方式来进行实现。

官方建议不要在类里面打标签,该方式方便,但在il2cpp下会增加不少的代码量,不建议使用。

而是统一到一个文件里,提供了示例代码ExampleGenConfig.cs,统一写在一个文件里。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值