注意:本文尚未施工完成。
最近了解到很多项目组使用的技术栈是 Unity + ToLua(而非之前所了解的 xLua),因此想研究学习一下有关于 ToLua 框架的知识。类似于 xLua,我想从“C# 调用 Lua”、“Lua 调用 C#”两方面展开学习,并探讨一下 ToLua 跨语言调用背后的原理。
什么是ToLua
ToLua 是 Unity 静态绑定 Lua 的一个解决方案,它通过在 C# 中集成 Lua 虚拟环境,可以自动生成用于在 Lua 中访问 Unity 的绑定(bind)代码,并把 C# 中的常量、变量、函数、属性、类以及枚举暴露给 Lua 使用。ToLua 通过 C/C++ 层优化减少了调用开销,运行效率比使用反射的 uLua、xLua 更高(尤其是在安卓平台上)。

uLua
在Unity中使用
C#调用Lua
- toLua解析器
- toLua解析器不同文件加载方式
- toLua解析器管理器
- 全局变量获取
- 全局函数获取
- 访问Lua中table表现List和Dictionary
- 访问Lua中table
- 使用toLua提供的协程
Lua调用C#
- 类
- 枚举
- 数组、List和Dictionary
- 函数(拓展方法)
- 函数(ref和out)
- 函数(重载)
- 委托和事件
- 协程
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 几/何/冰/川!
评论