由于此系列文章是由飞书文档转过来的,格式可能不清晰,建议看飞书文档。
参考文章:
tolua文章参考:
此文章要探讨的问题:
1.xlua wrap是如何生成,为什么要生成wrap?
2.lua是怎么获取、调用c#的静态方法、成员方法?c#对象在lua栈里是以什么形式存在的?
3.xlua把对象存在objects里,而值类型的Struct如果存在objects了,会发生封箱、拆箱的操作,xlua是如何避免的?
4.objects里的对象是什么时候会被移除?lua怎样才算正确释放了c#对象?
5.c#如何调用到lua的方法的?xlua是怎么把lua的table、function转成c#的table、function实例的?
6.利用xlua如何实现热更?
7.针对lua和c#的交互有什么优化手段?
目录:
飞书文档:
Wrap文件的生成:Xlua 生成wrap文件
lua调用c#发生了什么:Lua调用c#发生了什么?
Xlua 对c#的vector3等结构体的优化:Xlua对c#的vector3等结构体的优化
c#调用lua:c#调用lua
热更新实现:Xlua 热补丁技术
博客文档:
Wrap文件的生成:Xlua 生成wrap文件
lua调用c#发生了什么:Lua调用c#发生了什么?
Xlua 对c#的vector3等结构体的优化:Xlua对c#的vector3等结构体的优化
c#调用lua:c#调用lua
热更新实现:Xlua 热补丁技术
优化篇:Lua性能优化