【unity mmo框架学习笔记三】

第四章 UI系统框架设计

        我认为,UI是大部分游戏表现层面的灵魂。一个好的UI系统造就一个优秀的、可高复用的UI界面设计布局。游戏的大部分游戏功能也可以由UI界面引发,由此mmo游戏的功能便有了开发思路:你能在主界面添加哪种UI,便可以启动该种功能的开发。

        教程将UI分为静态和动态部分

        教程在UI系统框架设计部分并未涉及具体功能的实现,只实现了主UI界面管理和UI生成等功能,游戏大致如何设计初见雏形。

 

        在UIMain中UIAvatar中体现角色信息,由UIMinimap管理小地图,由UISkillSlot管理技能的信息表现。在UIManager中实现各种功能的UI层入口,由此引发功能的开发,并保持一定的复用性和拓展性。其中最重要的是UIManager类,它关系了UI层与各系统功能。

        在UIManager中定义了UIElement类,包含了UI界面实体的路径、是否隐藏以及用于接收的实例。

定义了字典保存UIElement

由于UIManager作为一个单例,需要在初始化时添加UIElement实例。测试UI加载如下:

在加载完成后需要完成一些逻辑,这里以显示UI为例:

 

以泛型T接收UI的类,保持UI自身的不同功能可以在不同系统中的拓展性。

初步逻辑是:调用Show时,传入对应UI的类,声音系统初始化完成提示音的调用

读取UI类型后,进行安全验证

安全验证后,进行实例化检查

若有实例,调用unity的显示方法

若无实例,先初始化游戏对象,对类型进行实例化

完成逻辑后,返回UI类型实例。

UIManager中的逻辑一般是每个UI类型实例应该包含的功能,比如显示、关闭等。完成逻辑后可以在unity中关联对应UI部分的实现事件,比如在每个UI的右上角的关闭按钮的点击事件关联关闭功能。事实上,教程的其他系统的UI互动方法也是这样实现的,只不过是关联了UI上的不同的位置、不同的事件。

 

 

 

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值