温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

Unity开发中介者模式介绍

发布时间:2021-09-17 10:13:28 来源:亿速云 阅读:152 作者:chen 栏目:大数据

本篇内容介绍了“Unity开发中介者模式介绍”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!

0.前言

一个游戏中可能包含众多子系统

  • 事件系统

  • 关卡系统

  • 角色管理系统

  • 成就系统

  • 游戏状态界面

  • 角色信息界面

  • 暂停界面

子系统之间的交互如果没有规划好会出现交错引用的情况

Unity开发中介者模式介绍

而中介者模式在游戏开发中可以用来解除内部子系统之间的耦合

Unity开发中介者模式介绍

1.中介者模式的介绍

中介者模式(Mediator)在GoF中是这样说明的:

定义了一个接口用来封装一群对象的互动行为,中介者通过移除对象之间的引用,来减少它们之间的耦合度,并且能改变它们之间的互动独立性。

以房屋买卖的方式来说明中介者模式,可以这样解释:

中介公司是一个信息中心(对应中介者),所有买家和卖家(所有子系统)都通过中介公司来处理房屋的买卖。

2.在游戏开发中的实现方式

在游戏开发中我们是这样实现中介者模式的

首先游戏会有两大系统类:“游戏系统类”、“界面类”

我们定义好这两种抽象类,并定义一些生命周期有关方法,然后在构造方法中传入中介者的实例。当每创建一个新的系统类时,都要继承其中一个抽象类。这样每个系统都会持有一个的中介者。我们在做子系统功能的时候,就不需要关心这个功能会跟哪个系统产生关联,只需要通过中介者的实例,通知中介者当前子系统想完成什么功能就可以了,剩下的交给中介者去处理子系统之间的引用逻辑。当然,所有子系统的构造都在中介者中完成,中介者拥有所有子系统的访问权限。

优点

通过这样的操作,我们便解除了子系统之间的耦合,并且所有子系统对外部的依赖缩小到了一个类。

缺点

需要注意的是,由于中介类担任了所有游戏系统和UI界面之间的信息交换和沟通,很容易出现操作接口过于爆炸的情况,所以我们还需要配合其他设计模式来避免这种情况的发生,用来减轻中介类的负担。

“Unity开发中介者模式介绍”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注亿速云网站,小编将为大家输出更多高质量的实用文章!

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI