原文:http://www.cnblogs.com/crazylights/p/3910810.html
初始化
做一样的初始化,其实是没办法对等的
C#Light的Env 不等于Lua的LuaState
C#Light的执行有完全的执行堆栈,完整的作用域,lua都没有
C#Light有完整的class 函数,继承特征,lua都没有
C#Light可以用VS做编辑器,lua?
为了保持平等对抗,三个测试先做一遍,再依次执行
测试1 ,简单的一次创建给个名字并销毁,测试300次
测试2,调用Debug.Log打印,执行300次
测试3,一次性在脚本里多调用一些方法,创建10个物体再销毁
测试一结果:
这项的测试时间uLua是原生的4.5倍,C#Light是原生的4.5倍,多次测试有时uLua快一点,有时C#Light快一点
测试2结果:
这项测试,C#Light几乎总比uLua快15%左右
测试三结果:
这项测试,uLua比C#快20%左右
测试的结果就是这样,有胜有负。还不足以全面衡量性能,有个大概概念吧。
而且性能并不是最重要的。
以原生为X1,和其他问题一起列了一张表
项目 | uLua | C#Light |
性能测试一 | X4.5 | X4.5 |
性能测试二 | X4.3 | X3.63(快15%) |
性能测试三 | X6.87(快20%) | X9.01 |
平台兼容性 | Android IOS PC Mac | Unity全平台包括WebPlayer 非Unity支持微软全系列 Xamarin全系列 |
编辑器 | lua专用编辑器或文本编辑器 | VS MonoDevelop等C#编译器可兼容 |
注册类型 | 字符串注册 | 接口注册 |
调用方式 | lua特色dostring,函数也要dostring调用,面向对象用table模拟 | 可以dostring 完全面向对象 可以直接调用脚本的类型,可以new 可以static访问 |
语法 | lua | C# |
- 本文固定链接: https://www.xuanyusong.com/archives/3102
- 转载请注明: 雨松MOMO 于 雨松MOMO程序研究院 发表
捐 赠写博客不易,如果您想请我喝一杯星巴克的话?就进来看吧!
楼主还少说了一点,c#light不是外全面向对象的,因为不支持 class 继承
你少写了点。LUA可以调试, C light可以吗?
嗯,我也在测试使用cslight,用原生的会好一些,可以作双测试。脚本最麻烦的就是debug,如果是原生的,可以先在原生里debug,再在发布里打包成脚本,之前做的页游就是这么干的
我想问下 你最开始图上 有个 函数啊上方 0个引用,1个引用,这个是什么插件……
VS 2013
哥们 你lua打成2进制你测试啊 别源码测试啊… 再说了 lua用luajit dll 来加载 别用ulua 不是一个档次
ulua也支持luajit,但是IOS非越狱版不支持luajit。
支持~! 想问一下,用脚本代替原生代码,app store的审核上会不会有问题的?