Unity用Lua开发的 使用度 问题

xiaoxiao2021-02-28  118

今天晚上到家之后继续写自己的LUA项目开发文档,在写文档的途中,与大帅同志边讨论,边写项目开发规范,在Lua类对父类的访问的时候,我和大帅同志就 多继承 和 Lua开发使用度的问题,展开了激烈的讨论。

我的观点是:战斗逻辑,我基本可以全放在Lua层面做开发。然后提出性能消耗大的模块到C++实现,比如:寻路,预加载等

大帅的观点是: 战斗逻辑应该把不变的东西放到C++或C#层,而只是把变动的东西放到Lua层。比如魔兽世界,Dota2的那种设计.

然后我们讨论了一下关于王者荣耀的内部实现是采用的第一种,纯lua,性能需求严重的在C++,还是说是使用变动的东西在lua层,不变的框架性的东西在C#层。

经过激烈的讨论, 我觉得我应该是被他说服。 在有足够好的设计的情况下。 确实能够够做到,底层不变,只变动逻辑层的方式实现,增加或者改变游戏进行方式 或者 逻辑。 比如 我之前参考的 星际2实现的技能系统, 加入触发器之后, 确实能够实现这样的效果, 策划要加需求, 底层代码是肯定不会动的, 变动的只是 lua 层面的逻辑代码,对于技能来说变动的就只是(效果)。

但是从实际角度出发, 要做到第二种设计, 需要大量的项目经验,才能正确的知道,该怎么样合理的设计架构,才能抽出一个能满足策划不断变动的需求的, 又能够不变的模块出来。 鹅厂的王者荣耀我相信他们是采用的第二种方案, 毕竟他们有那么多的大项目积累,所以肯定能设计出合理的框架的组合。

只是我们这样没有大项目支撑的,可能只能无奈的采用第二种方案。 我比较有信心的,也可能就只有技能模块能做到。

大家且行且珍惜。 想到再补吧。

转载请注明原文地址: https://www.6miu.com/read-66834.html

最新回复(0)