Unity游戏框架概述
消息来源:baojiabao.com 作者: 发布时间:2024-04-28
作者:vian
设计框架就好像盖房子打地基,说到框架我们可能一下子会想到好多特征要求,稳定、安全、健硕、简单、灵活、易用等等,的确这些都是一款好的框架就应该具备的。这里不大谈设计模式、不大谈老的mvc框架等等,先给大家分享一款游戏框架,一起来讨论分析优缺点,希望能在实际运用中给大家带来帮助。
01
框架图解
整个框架核心如下图所示:
02
框架详细介绍
通过上文图解,我们能比较清晰的看到各个层次之间的关系。可能不一定能看明白整个框架要表达的意思,框架是怎么运作的?下面来进一步介绍。
2.1)Core,我们可以往Facade设计模式来理解,它提供了底层核心界面,通过其界面我们可访问到Controller、Model、Service。通常其中各界面可设计为静态供外部直接使用。
2.2)Service,主要处理网络相关,用来发收协议。可通过Core可获得所需Model,然后去更新Model里面的数据。一般不需要通过Core去获得Controller。
2.3)Model,主要负责数据记录,数据变化可用事件派发出去,谁监听谁处理。
2.4)Controller,主要负责控制视图还有其他逻辑处理,以及接受相关Command对应要做的逻辑。它也能通过Core访问到所需Model、Service。
2.5)View,即视图。比较独立,设计时我们要求视图里面尽量不参杂逻辑代码,一般逻辑都可在Controller去做,如把方法作为参数传给View,这样View只需要回调就可以。View还可以在打开状态时监听所需事件,数据更新由对应Model派发事件来驱动更新。为了使用更方便,我们让View能通过Core去获取所需,但这样带来的问题是View能通过界面获取更多资源。
2.6)Command,它里面不访问任何界面不做具体逻辑仅由Core去执行,最终逻辑处理在Command对应的Controller里面。所以我们可以在不同的地方通过Call不同Command去做一些我们想要的事情。如背包模块里背包View有个商店快捷按钮,我们点商店按钮要做具体逻辑可不用关心,只需要找到并Call商店模块打开商店View的Command即可。Command模式使用非常方便,给各模块之间通信带来很大便利,且逻辑分离省心省事。
2.7)EventCenter,事件中心用来监听、移除、派发事件,可设计为单例模式。其使用很方便。Command也可以用来消息通讯,实际项目中可综合考虑按需使用。有关EventCenter详细介绍在http://gad.qq.com/article/detail/48139。
以上,通过图解和详细介绍,希望大家理解了整个框架层次和运作。
03
优缺点讨论
优点:
设计符合MVC理念,数据视图逻辑的分离;
框架层次清晰、实用简便易用。
缺点:
核心Core提供的界面开放性太高,一定要严格注意规范使用;
Command需要找到对应Controller,在找到Controller里面对应的Method,注意消耗,注意缓存Method,注意Command命名避免有相同。
等等,欢迎补充。
补充下Command和EventCenter对比:
EventCenter使用前后要注意先监听、在派发、不用后要移除;
Command随时Call即可。
04
总结
没有一套万能的、一劳永逸的框架,但框架大体设计理念都一样,只有能满足实际开发所需、适合自己项目的框架那就是好框架。
本文参与“Unity游戏架构”征文活动,作者为vian,未经授权,请勿转载。
相关文章
- 中兴受美国制裁事件 被罚了20亿美元过程事件始末 中兴被制裁后公司现状
2023-11-02 22:12:46
- B站怎么炸崩了哔哩哔哩服务器今日怎么又炸挂了?技术团队公开早先原因
2023-03-06 19:05:55
- 苹果iPhoneXS/XR手机电池容量续航最强?答案揭晓
2023-02-19 15:09:54
- 华为荣耀两款机型起内讧:荣耀Play官方价格同价同配该如何选?
2023-02-17 23:21:27
- google谷歌原生系统Pixel3 XL/4/5/6 pro手机价格:刘海屏设计顶配版曾卖6900元
2023-02-17 18:58:09
- 科大讯飞同传同声翻译软件造假 浮夸不能只罚酒三杯
2023-02-17 18:46:15
- 华为mate20pro系列手机首发上市日期价格,屏幕和电池参数配置对比
2023-02-17 18:42:49
- 小米MAX4手机上市日期首发价格 骁龙720打造大屏标准
2023-02-17 18:37:22
- 武汉弘芯遣散!结局是总投资1280亿项目烂尾 光刻机抵押换钱
2023-02-16 15:53:18
- 谷歌GoogleDrive网云盘下载改名“GoogleOne” 容量提升价格优惠
2023-02-16 13:34:45
- 巴斯夫将裁员6000人 众化工巨头裁员潮再度引发关注
2023-02-13 16:49:06
- 人手不足 韵达快递客服回应大量包裹派送异常没有收到
2023-02-07 15:25:20
- 资本微念与李子柒销声匿迹谁赢? 微念公司退出子柒文化股东
2023-02-02 09:24:38
- 三星GalaxyS8 S9 S10系统恢复出厂设置一直卡在正在检查更新怎么办
2023-01-24 10:10:02
- 华为Mate50 RS保时捷最新款顶级手机2022多少钱?1.2万元售价外观图片吊打iPhone14
2023-01-06 20:27:09
- 芯片常见的CPU芯片封装方式 QFP和QFN封装的区别?
2022-12-02 17:25:17
- 华为暂缓招聘停止社招了吗?官方回应来了
2022-11-19 11:53:50
- 热血江湖手游:长枪铁甲 刚猛热血 正派枪客全攻略技能介绍大全
2022-11-16 16:59:09
- 东京把玩了尼康微单相机Z7 尼康Z7现在卖多少钱?
2022-10-22 15:21:55
- 苹果iPhone手机灵动岛大热:安卓灵动岛App应用下载安装量超100万次
2022-10-03 22:13:45