打造基于MVC的游戏框架

MVC 模式非常得火,今天小编就来说说Unity 或 cocos creator 这类可视化+组件化开发的工具怎么来做MVC。

MVC中的M指的是Model, V指的是视图, C指的是控制, 接下来我们通过view, Ctrl, Model 依次来说明我们基于unity / cocos creator这类工具的MVC的开发框架中通常是怎么处理的。

  这里给大家推荐一个cocos creator学习交流群

view:

unity/cocos creator这类工具,都是可视化编辑,编辑完后就有了一个"视图", 普通开发的时候,我们会往节点上挂脚本,往按钮上绑定事件,这样做最大的不好,是让美术修改视图的时候还要关心程序的组件,万一不小心删除了… …, 所以我们一般在挂脚本绑定事件的时候,尽量都在代码里面来完成,

这些完成的过程,实际就是控制视图, 属于ctrl的内容,视图要保持足够的简单,不要绑脚本或代码;

 

Ctrl:

在ctrl里面终归是要访问视图的,我们在ctrl里面怎么方便的访问视图呢?一般我们会编写一个代码(或自动生成), 这个代码作为ctrl的基类,在ctrl里面我们要非常方便的能访问到视图view里面的各个节点,才能方便的对里面的数据进行绑定,  我们这边的处理方式,会建立一个view 的字典, 字典是view上个节点的名字路径与view 节点对象对应,而这个功能,我们会在ctrl的基类里面来把节点加载到字典里面,然后所有的ctrl 都继承自这个基类,这样,在ctrl里面就可以通过 this.view[路径]能非常方便的访问我们的view上的节点,和非常方便的来控制他们挂事件和脚本, 如下图:

Cocos:   

                                                                             unity:                

 

Model:

Ctrl 除了控制视图外,还要调用Model,Model, 我们通常会包括了常用的处理逻辑和数据, 例如策划的配置文件,武器的配置文件等等。 我们会提供对应的工具和框架方便和策划来沟通,来做我们的游戏数据,这个时候通常我们用到的是excel表格,excel表格给策划来填写,如图:

 

然后我们会自动生成代码,程序自动的读取excel表格转换到的数据到我们的Model里面,这样我们就有了数据,方便我们的Ctrl使用。

 

这样,Model,view, ctrl 就能很好的协助, model提供数据和方法,view 显示,ctrl 控制他们, 这样方便了策划和程序,美术和程序之间的沟通和交流。以上方案供参考。

更多架构师的经验。。。。 未完待续!

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值