天工维度魔兽争霸开发者社区-全国最大的TJ集中营-原提百万联盟

标题: 【Seago.】UI系列教程(六)——从BUTTON事件解析UI交互 [打印本页]

作者: Seago    时间: 2021-1-24 19:40
标题: 【Seago.】UI系列教程(六)——从BUTTON事件解析UI交互
本章主要介绍BUTTON的事件处理。强调:如果没有特别说明,本系列教程的事件注册是否同步一律选否。

BUTTON的常用事件有如下几种:进入、离开、点击、双击。到底用哪种事件本质没区别,只是触发条件不同而已,对我们的处理没有丝毫影响,我们需要关心的是交互对象。从交互的角度考虑,我分出了两种情况。

1、本地交互,或者说单人交互。
顾名思义,只与触发玩家交互,与其他玩家无关。如:显示高亮、显示提示信息等。此类交互只是一种视觉上的效果,用于传达某些信息,与其他玩家无关,也对游戏的进程没有任何实质性影响,与多面板非常类似。所以其完全可以是异步的。说到异步,很多人立刻就会想到本地玩家。这里需要注意,我们在注册触发的时候选的就是不同步,所以这个触发本身就是异步操作的,不需要我们再进行额外的处理。即此时本地玩家必然==触发玩家,完全是多此一举。
又因为这个交互是异步进行的,所以我们要保证游戏的安全,在动作中不能做一些必须在同步环境才能做的事,如:创建单位,创建其他handle类型,这是都是不可以的。我们只能读取数据用于展示。


2、群体交互。
显然,与单人交互不同,此类交互最终会影响到多名玩家。最为常见的如UI模拟抽卡、选英雄、学习技能等等。这些操作都对游戏有着实质性的影响,所以需要将异步转为同步,也就要用到发送同步消息。发送同步消息有两个关键参数,一个是标签,一个是数据。标签可以理解为一种暗号,主要起到标识作用,使得前后端之间能产生一种明确的关联关系。不同的按钮可以发送相同的标签数据,但不同的触发最好不要接收相同的标签。(虽然没有验证过可行性,但从程序设计的角度来说,这样的操作是不建议的。)数据则是需要被传递的信息,比如选择的单位类型、学习的技能等。但提供的接口要求传递字符串,所以需要我们进行字符串的转换。有时需要传递的的数据不止一种,需要进行特殊处理。比较简单的思路是将所有的数据按一定的规则进行拼接,接受到之后再分割读取。这种方式的优点就是比较好上手、好理解。缺点是需要编写一套拼接和拆分规则,对于新手来说容易考虑不全面导致隐藏bug。

我们也可以换一个角度来看待交互。
在单人交互中,交互是完全的,或者说全程进行的。整个触发周期交互一直在进行——玩家触发了UI事件,UI对我进行后续的反馈。
在群体交互中,交互是短暂的。在玩家触发了UI事件后,UI不需要进行反馈,或者只是给很少的反馈,到发送同步消息为止,本次交互也就宣告结束了。




作者: Secret放肆    时间: 2021-1-24 20:38
学习学习。。。。
作者: liu2010cn    时间: 2021-2-6 01:58
讲得很好
作者: yangxinlin    时间: 2021-2-6 13:00
谢谢大佬教程
作者: RIO    时间: 2021-2-16 17:20
学习学习
作者: fpvklxcz    时间: 2021-2-17 15:38
X学习一下 谢谢
作者: ladidadidi    时间: 2021-3-4 18:54
感谢分享
作者: qqwwee147159    时间: 2021-3-17 19:45
好好学力楼主的技术 是我的力量
作者: 18115715170    时间: 2021-3-19 11:04
学习学习,讲的也就比我高个三四楼的样子。大佬加油。
作者: 风之流动    时间: 2021-4-25 17:11
感谢大佬的教程
作者: eovxxjch    时间: 2021-4-28 11:51
谢谢大佬教程
作者: z409733721    时间: 2021-5-5 20:47
谢谢大佬教程
作者: 山居客    时间: 2021-5-9 11:59
学习学习
作者: 天轮    时间: 2021-5-10 15:05
支持一波
作者: 自由如风    时间: 2021-7-12 10:34
太短了,大佬,加油
作者: 霍霍小猫    时间: 2021-7-16 22:13
模型真棒,感谢楼主分享
作者: 霍霍小猫    时间: 2021-7-17 10:32
感谢楼主分享
作者: 红尘    时间: 2021-7-19 09:14
感谢大佬分享
作者: cfcfp1059    时间: 2021-7-19 22:24
啥玩意啊!
作者: ypuiskug    时间: 2021-8-14 04:15
学习学习~
作者: loversprattle    时间: 2021-8-24 20:40
11111111111111111
作者: 傲月残云    时间: 2021-9-6 09:53
感谢教程
作者: jack-z    时间: 2021-10-26 00:31
谢谢大佬分享,在大佬这里学到了好多
作者: 520134ai    时间: 2021-11-4 23:43
看看,很有用!
作者: ZAYLB    时间: 2021-11-28 03:22
学习了。。。。。。。
作者: 青丝伴清风    时间: 2021-11-29 10:13
讲的很好ヾ(Ő∀Ő๑)ノ太好惹,点赞了
作者: mumulol    时间: 2021-12-24 00:03
6666666666666666666666666666666666666666666666666666666666666
作者: 今晚不打老虎    时间: 2022-1-2 22:29
正在需要1!!
作者: cn52099    时间: 2022-1-20 23:51
最后一篇了啊
作者: 丶西天i    时间: 2022-3-19 14:16
学习一下
作者: 一句话的事情    时间: 2022-3-19 21:27
感谢大佬分享,认真学习
作者: 俊豪yn    时间: 2022-3-20 23:22
大佬牛逼
作者: 从未放弃    时间: 2022-4-13 09:17
看看,大佬的分析
作者: 天下丨一    时间: 2022-4-13 09:22
看看隐藏了啥
作者: arrssg    时间: 2022-4-13 15:03
学习。..........
作者: cqflucky    时间: 2022-4-14 00:17
学习学习,感谢分享
作者: hnvzdenv    时间: 2022-4-16 02:08
必须支持一下,这个很重要
作者: 天行无方    时间: 2022-4-20 17:38
感谢分享
作者: 微风路人    时间: 2022-5-4 16:03
谢谢分享~~
作者: wuargjwv    时间: 2022-5-5 02:12
学习一下学习一下
作者: 我超级帅    时间: 2022-5-15 21:09
大佬说的很对
作者: 天道至尊    时间: 2022-6-25 23:19
支持支持

作者: raxfal    时间: 2022-7-14 14:50
感谢楼主分享·
作者: shengzicai    时间: 2022-7-27 19:59
谢谢分享!感谢大佬的付出。
作者: qq3878217    时间: 2022-8-26 23:20
支持一下
作者: 15515521992    时间: 2022-8-29 15:44
大佬NB 学习学习
作者: 呜拉拉    时间: 2022-9-2 23:52
看看,学习一下
作者: x2831148090    时间: 2022-9-17 18:14
学习一下
作者: 木耳哥    时间: 2022-9-19 15:24
学习学习
作者: qababfyi    时间: 2022-9-25 02:21
学习学习。。。。
作者: moran    时间: 2022-10-25 12:21
大佬厉害啊666
作者: 剑云    时间: 2022-11-24 10:40
666666666542321
作者: gugrviwr    时间: 2022-12-26 07:32
看看写的不错
作者: 观茶员    时间: 2023-1-18 13:23
继续学习!!!!!!!!!!
作者: bziejqam    时间: 2023-3-9 15:29
感谢分享
作者: chance125    时间: 2023-3-9 16:59
谢谢大佬教程
作者: anyany123    时间: 2023-3-29 13:20
正在学习UI,感谢大佬的教程
作者: q332008679    时间: 2023-5-6 15:05
谢谢大佬教程
作者: youwangjile    时间: 2023-6-7 17:25
感谢分享~
作者: jay910512    时间: 2023-6-7 17:45
学习了,感谢分享
作者: 永恒之奕    时间: 2023-6-15 00:57
我来看看
作者: voncy    时间: 2023-6-22 18:07
学习学习
作者: 1091241720    时间: 2023-7-19 12:25
谢谢楼主分享
作者: 青邶.    时间: 2023-7-31 16:00
学习学习
作者: 渐望望鸭    时间: 2023-10-5 01:23
感谢分享
作者: eevvok    时间: 2024-2-6 17:14
辛苦了,支持一下,天工越来越好
作者: 我是谁你无关    时间: 2024-2-25 15:52
看看 学习一下
作者: slahser    时间: 2024-2-28 19:50
学习学习
作者: 疯魔成活    时间: 2024-3-26 21:51
我来学习学习
作者: 初心    时间: 2024-4-27 19:26
说的很详细
作者: 万青    时间: 2024-7-25 19:35
走一走看一看
作者: qwe136183    时间: 2024-8-26 20:46
学习知识
作者: xiaojin    时间: 2024-12-2 23:42
学习学习。。。。
作者: 琉紫    时间: 2025-6-11 18:58
感谢大佬的教程
作者: rpuhiyga    时间: 2025-6-13 10:17

这东西我收了!谢谢楼主!提百万联盟真好!
作者: ROCK    时间: 2026-6-1 11:16
1111111111111111111111




欢迎光临 天工维度魔兽争霸开发者社区-全国最大的TJ集中营-原提百万联盟 (http://bbs.mvprpg.com/) Powered by Discuz! X3.4