unity新项目,用纯lua好还是用c#,然后lua热更好些?
unity新项目,用纯lua好还是用c#,然后lua热更好些? 这个问题怎么说呢,想要便捷简单的我感觉用lue会好一些吧,我也是刚学习的,所以可能见解没有游戏开发界的大佬有经验所以我这里把我都指导老师过年介绍一下,有什么问题都可以询问,还可以免费学习技术知识呢:玩转U3D游戏开发,5天免费课程等你来!点击卡片领取海量U3D学习资源/面试攻略/简历模版 偶然看到此问题,留个爪。
首先,这个问题是2017年提的,问题日志:
这个问题在2017年回答,与2022年12月回答,答案可能是截然不同的。
在即将跨入2023年的今天,请务必尝试Hybird CLR,一种原生C#热更新方案。github地址:
GitHub - focus-creative-games/hybridclr原生代码与热更代码无缝衔接的感觉,对开发的影响最小,比写Lua - C#互相调用的代码好很多。
除此以外,还有其它选择,对应不同的项目特点,比如:
1、PureTS,一种轻量化Type Script脚本引擎,在H5游戏盛行的今天,使用它有助于Unity版与H5版本的代码统一。
2、ILRuntime,比hybird CLR技术更传统一些的C#热更框架。
只能感慨,时代进步太快,IL2CPP逐步成熟了、C#热更成熟了、H5技术也相对成熟了,在新项目中lua也用的越来越少了。 个人理解,仅供参考。
纯C# > C#+轻度用lua > 重度lua
写代码最好的情况是一种语言用到底,方便调试。虽然纯C#有时确实不方便运行时调试
如果一定想用lua,上层逻辑用用lua还可以,控制好复杂程度,写一些面向过程的代码。重度的东西还是放到C#,尽量别用lua写面向对象,lua代码重构时约等于重写 纯lua性能太差,开发效率太低,只能做轻度游戏
[*]Lua已经是比较成熟的解决方案了,有很多的项目资产过去都是使用Lua进行开发的,但要在Unity项目中用Lua进行开发,就要求团队中的开发人员对Lua和C#都特别熟悉,或者把团队人员分成C#小组和Lua小组
[*]使用ILRunTime则可以很快上手,而且只要求开发者会C#语言即可,对于Unity项目而言,这种方式是非常高效的,也适合中小型的开发团队
[*]Lua的优势在于解决方案足够成熟,也有很多开发者比起使用C#作为热更语言,更加熟悉Lua开发,而且借助luajit,在某些情况下的执行效率会非常不错,不过luajit现在的维护情况也不容乐观,对开发者的要求比较高,所以官方还是推荐使用公版Lua进行开发
详细内容可以参考我们的《一小时急速掌握ILRunTime热更新》公开课
页:
[1]