我是靠谱客的博主 爱笑星星,最近开发中收集的这篇文章主要介绍Unity事件触发一. EventSystem物体三.PointerEventData鼠标点击事件数据类, 成员变量: 四. AxisEventData 轴向事件数据类 成员,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

一. EventSystem物体

当创建一个Canvas时会生成一个EventSystem物体.它包括以下3个组件.

 

1. 组件:Event System  被动触发事件系统: 负责调度处理事件的输入,射线,发送.

变量:

  • First selected:默认选中的游戏对象.
  • Send navigation events:是否发送导航事件.
  • Drag threshold:在范围内拖动的n像素,触发拖动事件.表示鼠标移动n个像素才触发拖动事件.

2. 组件:Standalone Input Module 电脑输入模式(鼠标键盘,游戏手柄等等).

3. 组件:Touch Input Module触摸输入模式(,IOS等触摸屏)

 

EventSystem.IsPointerOverGameObject() 鼠标指针是否在游戏物体上.


二. ExecuteEvents.Execute 主动触发所要调用的事件

例如:StandaloneInputModule.cs中 private bool SendSubmitEventToSelectedObject()函数中以下语句

if (Input.GetButtonDown(m_SubmitButton))

ExecuteEvents.Execute(eventSystem.currentSelectedGameObject, data, ExecuteEvents.submitHandler

 

函数参数:

  • GameObject target.接收事件的游戏对象.
  • BaseEventData eventData.事件相关数据.
  • EventFunction<T> functor. 通知事件接口.(IPointerClickHandler等等这些接口)

 

事件数据-EventData

  • BaseEventData  基础事件数据 ----事件数据的基类和EventSystem配合使用.
  • PointerEventData  指针事件数据 ----鼠标与触摸事件的相关数据.点击,抬起,拖动等.(大部分事件数据类型都是该类型的)
  • AxisEventData 轴向事件数据----手柄和键盘中控制轴向相关的事件数据.(参考InputManager的设置)

 

三.PointerEventData鼠标点击事件数据类, 成员变量:

  • button                 点击的是鼠标的哪个键.(该属性有3个取值. left,right,middle.鼠标左键,右键,中键.)
  • clickCount            连续点击鼠标次数.
  • clickTime             发送点击事件的事件.
  • delta                    当前帧与上一帧的位置差值.
  • dragging              是否正在被拖拽.
  • position                鼠标当前的位置
  • pressPosition        鼠标按下时的位置
  • scrollDelta        当前帧与上一帧的滚动量差值.鼠标滚轮滚动的量.
  • useDragThreshold 是否使用拖动阀值.
  • worldNormal         射线检测到的第一个物体的法线.
  • worldPosition        射线检测到的第一个物体的世界坐标.
  • lastPress              最后按下的游戏物体
  • pointerDrag          拖拽的游戏物体
  • pointerEnter         鼠标进入的游戏物体
  • pointerPress         鼠标按下时的游戏物体
  • rawPointerPress    不论是否处理按下事件,都会保存指针按下时的游戏物体.
  • pointerId              使用触屏时就是TouchID,使用鼠标时就是鼠标按键ID.
  • pointerCurrentRaycast 鼠标指针当前的检测射线
  • pointerPressRaycast 鼠标指针按下时的检测射线
  • enterEventCamera 鼠标指针进入时的事件相机
  • pressEventCamera 鼠标指针按下时的事件相机


四. AxisEventData 轴向事件数据类 成员

  • moveVector 键盘/手柄输入的轴向值(菜单Edit-->ProjectSettings-->Input)
  • moveDir      移动方向  Left,Up,Right,Down,None

最后

以上就是爱笑星星为你收集整理的Unity事件触发一. EventSystem物体三.PointerEventData鼠标点击事件数据类, 成员变量: 四. AxisEventData 轴向事件数据类 成员的全部内容,希望文章能够帮你解决Unity事件触发一. EventSystem物体三.PointerEventData鼠标点击事件数据类, 成员变量: 四. AxisEventData 轴向事件数据类 成员所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(51)

评论列表共有 0 条评论

立即
投稿
返回
顶部