《Unity引擎》-第11章教学材料_第1页
《Unity引擎》-第11章教学材料_第2页
《Unity引擎》-第11章教学材料_第3页
《Unity引擎》-第11章教学材料_第4页
《Unity引擎》-第11章教学材料_第5页
已阅读5页,还剩10页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

11.1InputManager(输入管理器)在Input类中,Key与物理按键对应,如键盘、鼠标、摇杆上的按键,可以通过按键名称或者按键编码Keycode来获得其输入状态,如GetKeyDow(KeyCode.Space)会在按“Space”键时返回true值。Button是输入管理器InputManager中定义的虚拟按键,通过名称来访问。用户可以根据需要创建和命名虚拟按键,并设置虚拟按键的属性,如虚拟按键的名字、类型、关联的物理按键等。例如,Unity默认为用户创建了名为Horizontal的虚拟按键,并将键盘左、右键和A、S键的消息映射给了Horizontal。依次选择菜单栏中的Edit→ProjectSettings→Input命令,即可打开输入管理器,如图11.1所示。下一页返回11.2鼠标输入鼠标输入是最基本的输入方式之一。游戏中的很多操作都需要鼠标来完成,鼠标输入的相关事件包括鼠标移动、按键单击等,Input类中也都封装好了,相关的方法和变量可以参考表11.1。GetMouseButtonDown、GetMouseButtonUp、GetMouseButton这3个方法需要传入参数来指定判断哪个鼠标按键,0对应左键,1对应右键,2对应中键。返回11.3键盘操作和键盘有关的输入事件有按键按下、按键释放、按健长按,方法Input类中都封装好了。与键盘有关的输入方法通过传入按键名称字符串或者按键编码KeyCode来指定要判断的按键。常用按键的按键名与KeyCode编码可以参考表11.3所列的常用按键的按键名与KeyCode编码。返回11.4移动设备输入在iOS和Android系统中,操作都是通过触屏单击来完成的。Input类中也封装了触摸操作的方法或变量,可以参考表11.4所示的Input类中对触摸操作的方法和变量。通过GetTouch或者touches可以访问移动设备的触摸数据,数据保存在Touch的结构体中,结构体Touch的变量如表11.5所示。通过调用phase可访问当前的触摸状态,phase的状态如表11.6所示。下一页返回11.4移动设备输入

下面是处理触屏操作的示例。在场景里新建一个Cube,新建一个C#脚本,重命名为TouchTest,双击脚本打开脚本编辑器,输入以下代码,把TouchTest.cs脚本绑定到Cube对象上。因为是触屏操作,所以必须在移动端才能有效果,出包安装到真机上,可以发现滑动屏幕时Cube会绕着自身Y轴旋转。//UpdateiscalledonceperframevoidUpdate(){//单指操作if(Input.touchCount==1){上一页下一页返回11.4移动设备输入

//屏幕开始if(Input.GetTouch(0).phase==TouchPhase.Began){Debug.Log("手指触摸屏幕");}//手指滑动屏幕,旋转立方体上一页下一页返回11.4移动设备输入

elseif(Input.GetTouch(0).phase==TouchPhase.Moved){if(Input.GetAxis("MouseX")>0){transform.Rotate(0,-200*Time.deltaTime,0,Space.Self);}上一页下一页返回11.4移动设备输入

elseif(Input.GetAxis("MouseX")<0){transform.Rotate(0,200*Time.deltaTime,0,Space.Self);}}//触屏结束elseif(Input.GetTouch(0).phase==TouchPhase.Ended){上一页下一页返回11.4移动设备输入

Debug.Log("手指离开屏幕");}}}上一页返回图11.1输入管理器返回表11.1Input类中和鼠标输入有关的方法和变量返回

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论