搜索
查看
编辑修改
首页
UNITY
NODEJS
PYTHON
AI
GIT
PHP
GO
CEF3
JAVA
HTML
CSS
搜索
寸_铁
这个屌丝很懒,什么也没留下!
关注作者
热门标签
jquery
HTML
CSS
PHP
ASP
PYTHON
GO
AI
C
C++
C#
PHOTOSHOP
UNITY
iOS
android
vue
xml
爬虫
SEO
LINUX
WINDOWS
JAVA
MFC
CEF3
CAD
NODEJS
GIT
Pyppeteer
article
热门文章
1
redis 支持 json_Data Lake Analytics: 以SQL方式查询Redis数据
2
机器学习有哪几种学习方法?
3
ChatGPT后,人工智能的终极里程碑却倒了
4
推荐使用:轻量级Llama 2聊天机器人 - 智能对话的新篇章
5
Llama 3.1论文中文对照翻译_llama3.1论文
6
Docker 部署MySql_mysql docker conf data log
7
人工智能时代程序员的核心竞争力塑造
8
从头开始做一个智能家居设备: PCB电路_智能家居 开发板到成品
9
对List集合属性进行模糊查找_list模糊查询
10
华为OD刷题C卷 - 每日刷题 26(学生重新排队,分月饼)_华为od 学生重新排队
当前位置:
article
> 正文
Unity Event System 事件系统_unityeventqueuesystem
作者:寸_铁 | 2024-08-27 15:01:16
赞
踩
unityeventqueuesystem
Event System 事件系统
用来发事件给object
overview
暴露的接口很少
主要作为Event System modules的管理者和信使
主要职责
管理被选中的GameObject
管理正在使用的输入模块
管理射线
更新输入系统
Input Modules
Event System的主要逻辑
功能
处理输入
管理事件状态
给scene object发事件
同一时间只能有一个Input Module被激活,而且必须和Event System在同一个GameObjct上
Raycasters
用来确定指针(手指、鼠标)在哪里,一般在场景里面配置
Messaging System
概览
在Monobehaviour中实现了对应的接口后就可以收到来自messaging framework的消息
不仅仅可以在UI中使用这个系统,也可以在游戏逻辑中使用
How Do I Define A Custom Message 自定义消息
ITarget继承IEventSystemHandler接口
实现ITarget接口
触发
ExecuteEvents.Execute(target, data, (x,y)=>x.Message1());
target 希望处理这个消息的对象
data 数据
参数3 指明这个对象的哪个方法来处理
ExecuteHierarchy(GameObject root, EventSystems.BaseEventData eventData, EventFunction callbackFunction);
该方法可以从一个根节点开始查找一个可以处理消息的对象
Input Modules
event system主要的逻辑,可以被配置和自定义
平台
standalone平台
Touch类平台
Input Modules被设计于映射硬件特定的输入到被messaging system发送的事件
在Monobehaviour中实现对应的接口就可以接受到Input Module发出的事件
Supported Events
自定义Input Module可以更进一步定义系统支持的events
具体类型见:
https://docs.unity3d.com/Manual/SupportedEvents.html
Raycasters
概述
Event System用Raycaster来决定把当前输入发给谁
类型
Graphic Raycaster UI元素使用
Physic 2D Raycaster 2D物理元素使用
Physics Raycaster 3D物理元素使用
Event System Reference
Event System Manager
管理用来构成事件的元素
每帧更新的时候选择要使用的Input Module并且用其做完处理者
Standalone Input
Module
设计用于鼠标类型输入的平台
使用Graphics Raycaster 和 Physics Raycaster计算什么元素被指着
每秒钟的事件数量有限
流程
if new press
enter
press
cash drag handler
begin drag
set pressed obj
if continuing press
处理移动事件
发送DragEvent给之前缓存的drag handler
处理PointerEnter和PointerExit如果是在2个obj间移动
if release
PointerUp
如按下和松开的都是同一个obj,发送PointerClick
Drop Event如果有drag handler
EndDrag
处理鼠标滚轮滚动事件
Touch Input Module
已经陈旧了,现在Touch Input在StandaloneInputModule里处理
Event Trigger
接收来自Event System的事件并且调用注册处理这些事件的方法
一个挂载了EventTrigger的GameObject会拦截所有事件
可以用
Add New Event Type button
选择Event Trigger要包含的事件
声明:
本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:
https://www.wpsshop.cn/w/寸_铁/article/detail/1021188
推荐阅读
article
python 腾讯
企业邮箱
535, b'Error:
authentication
failed
,...
在尝试使用Python通过SMTP发送腾讯
企业邮箱
邮件时遇到535错误,'Error:
authentication
f...
赞
踩
article
Linux
系统
编程——
操作
系统
的
初步认识(
Operator
System
)_认识
linux
操作
系统
...
本文详细解释了
操作
系统
的
作用,包括其在软硬件资源管理中
的
地位,以及计算机层次设计中
的
各个部分,重点阐述了先描述和再组织
的
...
赞
踩
article
PP-
OCR
论文解读:百度 P
a
ddle
OCR
通用中英文 3.5M 超轻量
OCR
模型_pp-...
P
a
ddle
OCR
论文《PP-
OCR
: A Pr
a
ctic
a
l Ultr
a
Lightweight
OCR
Syst...
赞
踩
article
OSI
(open system internet)七层模型介绍以及
NAT
(
Network
Addre...
ISO标准是指由『 国际标准化组织 (International Organization for Standardiz...
赞
踩
article
Java
虚拟机
:
类
加载
器
_jvm
类
加载
器
中
common
,system,bootstrap...
前言上一篇
Java
虚拟机
——
类
加载
机制 说到整个
类
加载
过程中除了
加载
(
加载
是
类
加载
的一个阶段)阶段,用户可以自定义
类
加...
赞
踩
article
MLM之
GLM
-
4
:
GLM
-
4
-9B
源码
解读(
inference
.
py
)
加载
预
训练
的因果
语言
模型
基于...
MLM之
GLM
-
4
:
GLM
-
4
-9B
源码
解读(
inference
.
py
)
加载
预
训练
的因果
语言
模型
基于用户提问实现
对话
生...
赞
踩
article
Using
NXLog
to
Collect
Windows
Event
Logs...
Last updated on August 9, 2019 There are a lot of syslog col...
赞
踩
article
Linux VM 启动失败后如何修复_
sda5
contains
a
file
system
wit...
前提:在系统无响应时直接POWER OFF关闭虚拟机,结果导致系统无法启动,提示信息“/dev/
sda5
contain...
赞
踩
article
autodl
运行
cpolar
报错
System
has not
been
booted
with
sy...
在执行sudo
system
ctl start
cpolar
报错。_
autodl
+
cpolar
autodl
+
cpolar
...
赞
踩
article
ESXi
主机打开
ssh
服务_
customize
system
...
通过显示器登陆
ESXi
主机,在屏幕左下角显示: Customize System/view Logs,按照提示 按 F2...
赞
踩
article
[笔记]
hyperf
event
...
得益于组件的支撑,用户可以很方便的对以下事件进行监听。例如。接下来我们就实现一个记录SQL的监听器,来说一下怎么使用。首...
赞
踩
article
10分钟了解
Flink
窗口
计算_
flink
event
time
和
processing
time
...
本文详细阐述了在
Flink
实时流处理中事件时间、处理时间和不同
窗口
类型的概念,包括滚动
窗口
、滑动
窗口
、会话
窗口
和全局
窗口
...
赞
踩
article
【
Unity
基础
】
Unity
通信之
Messaging
System
...
本文介绍了
Unity
中新的消息传递方式
Messaging
System
【
Unity
基础
】
Unity
通信之Messagin...
赞
踩
相关标签
企业邮箱
python
客户端专用密码
服务器
运维
ocr
人工智能
深度学习
计算机视觉
算法
网络
网络协议
tcp/ip
类加载器
双亲委派机制
GLM-4
大语言模型
模型推理
linux
VMware
spring
java
后端
flink