Unity3D获取当前键盘按键及Unity3D鼠标、键盘的基本操作

获取当前键盘按键,代码如下:

using UnityEngine;
using System.Collections;
public class GetCurrentKey : MonoBehaviour {
 KeyCode currentKey;
 void Start ()
 {
  currentKey = KeyCode.Space;
 }
 void OnGUI()
 {
  if (Input.anyKeyDown)
  {
   Event e = Event.current;
   if (e.isKey)
   {
    currentKey = e.keyCode;
    Debug.Log("Current Key is : " + currentKey.ToString());
   }
  }
 }
}

下面给大家介绍Unity3D鼠标、键盘的基本操作

键盘:  

GetKey             当通过名称指定的按键被用户按住时返回true
GetKeyDown   当用户按下指定名称的按键时的那一帧返回true。
GetKeyUp        在用户释放给定名字的按键的那一帧返回true。 
GetAxis(“Horizontal")和GetAxis(“Verical”) 用方向键或WASD键来模拟-1到1的平滑输入

键盘判断:

If(Input.GetKeyDown(KeyCode.A)){//KeyCode表示包含键盘所有键     
print(“按下A键”); }  If(Input.GetKeyUp(KeyCode.D)){//当按D键松开时    
print(“松开D键”); }  If(Input.GetAxis(“Horizontal")){//当按下水平键时   
print(“按下水平键”); }  If(Input.GetKeyUp("Verical“)){当按下垂直键时    
print(“按下垂直键”); }

鼠标:  

GetButton           根据按钮名称返回true当对应的虚拟按钮被按住时。
GetButtonDown      在给定名称的虚拟按钮被按下的那一帧返回true。
GetButtonUp        在用户释放指定名称的虚拟按钮时返回true。

鼠标判断:   

if(Input.GetButton("Fire1")){//Fire1表示按下鼠标左键       
print(“按下鼠标左键”); }  if (Input.GetMouseButton(0)) {//0表示鼠标左键     
Debug.Log("按下鼠标左键"); }   if (Input.GetMouseButton(1)) {//1表示鼠标右键    
Debug.Log("按下鼠标右键");  }  if (Input.GetMouseButton(2)) {//2表示鼠标中键    
Debug.Log("按下鼠标中键"); }

给物体施加普通力:   

1、先给物体添加刚体 
2、transform.rigidbody.AddForce(0,0,1000);  一个简单例子让小球撞破墙:

代码如下: 

using UnityEngine;
using System.Collections;
public class Cube : MonoBehaviour { // Use this for initialization
void Start () { }  // Update is called once per frame void Update () {
if(Input.GetKey(KeyCode.W)){//当鼠标按下W键时,小球向前移动
transform.Translate(Vector3.forward);
}
if(Input.GetKey(KeyCode.S)){当鼠标按下S键时,小球向后移动
transform.Translate(Vector3.back);
天猫双十一活动
 } if(Input.GetKey(KeyCode.A)){当鼠标按下A键时,小球向左移动
 transform.Translate(Vector3.left);
 }
 if(Input.GetKey(KeyCode.D)){当鼠标按下D键时,小球向右移动
 transform.Translate(Vector3.right);
 } if(Input.GetButton("Fire1")){//当点击鼠标左键时,小球撞塌墙
 transform.rigidbody.AddForce(0,0,200);//物体向前移动的力为200
 }
 }
 } 
(0)

相关推荐

  • unity实现摄像头跟随

    代码很简单,这里就不多废话了,直接奉上代码 using UnityEngine; using System.Collections; public class FllowTarget : MonoBehaviour { public Transform character; //摄像机要跟随的人物 public float smoothTime = 0.01f; //摄像机平滑移动的时间 private Vector3 cameraVelocity = Vector3.zero; private

  • centos 6.5下 mysql-community-server. 5.7.18-1.el6安装

    使用下面的命令检查是否安装有MySQL Server [root@localhost etc]# rpm -qa | grep mysql // 这个命令就会查看该操作系统上是否已经安装了mysql数据库 有的话,我们就通过 rpm -e 命令 或者 rpm -e --nodeps 命令来卸载掉 [root@localhost ~]# rpm -e mysql // 普通删除模式 [root@localhost ~]# rpm -e --nodeps mysql // 强力删除模式,如果使用上面

  • Unity3d发布IOS9应用时出现中文乱码的解决方法

    简单的说,解决方法就是批量修改NGUI的label字体,修复ios就删除arial引起的中文乱码 我们来看具体如何操作 static public void yaheifont() { uf = AssetDatabase.LoadAssetAtPath("Assets/yahei.prefab",typeof( UIFont)) as UIFont; UnityEngine.Object[] objs = Selection.GetFiltered (typeof(UnityEngi

  • Unity编辑器下重启的方法

    Unity编辑器下重启的方法 我们项目AssetBundle打包走的是全自动化流程,打包之前要进行各种资源检测,如果检测顺利通过,则进入打包,否则提示错误资源名称及路径,打包中断!有时候即使资源检测通过也会打包崩溃,初步断定是Unity的内存爆了,因为Unity在编辑器下打开工程中的资源不会释放掉,所以内存一直在占用,打包时要进行一系列资源依赖分析,我们也知道,如果资源量非常大时候,Unity要保存资源依赖的堆栈,所以会有内存崩掉的风险,所以我就想着,打包之前重启下Unity,让Unity释放掉

  • C#中Socket与Unity相结合示例代码

    前言 初步接触了Socket,现使其与Unity相结合,做成一个简单的客户端之间可以互相发送消息的一个Test.下面话不多说了,来一起看看详细的介绍吧. 方法如下: 首先,是服务端的代码. 创建一个连接池,用于存储客户端的数量. using System; using System.Net; using System.Net.Sockets; using System.Collections; using System.Collections.Generic; namespace Server

  • Unity UGUI教程之实现滑页效果

    简介 项目需要...直接展示效果吧: 原理 使用UGUI提供的ScrollRect和ScrollBar组件实现基本滑动以及自己控制每次移动一页来达到滑页的效果. 实现过程 1.创建两个panel,上面的panel用于显示,下面的panel用于存放按钮 2.在TopPanel上添加ScrollRect脚本,用于滑动 3.在TopPanel下创建一个新的Panel,并在子Panel下拜访要显示的对象 4.将该子Panel设置为ScrollRect的活动对象 5.为ScrollRect添加Scroll

  • Unity3D中shader 轮廓描边效果实现代码

    Unity3D中shader 轮廓描边效果 想利用Unity3D中shader这个功能实现描边轮廓边框效果该怎么做呢,相信有很多搞开发的人想知道,为此下面就给大家介绍下方法. Shade实现描边效果,如下图中的3D球效果图         Shade代码如下: Shader "Outlined/Silhouetted Diffuse" { Properties { _Color ("Main Color", Color) = (1,1,1,1) _OutlineCo

  • Unity3d获取系统时间

    Unity是由Unity Technologies开发的一个让玩家轻松创建诸如三维视频游戏.建筑可视化.实时三维动画等类型互动内容的多平台的综合型游戏开发工具,是一个全面整合的专业游戏引擎.Unity类似于Director,Blender game engine, Virtools 或 Torque Game Builder等利用交互的图型化开发环境为首要方式的软件其编辑器运行在Windows 和Mac OS X下,可发布游戏至Windows.Mac.Wii.iPhone.Windows pho

  • Unity3D获取当前键盘按键及Unity3D鼠标、键盘的基本操作

    获取当前键盘按键,代码如下: using UnityEngine; using System.Collections; public class GetCurrentKey : MonoBehaviour { KeyCode currentKey; void Start () { currentKey = KeyCode.Space; } void OnGUI() { if (Input.anyKeyDown) { Event e = Event.current; if (e.isKey) {

  • js获取及判断键盘按键的方法

    本文实例讲述了js获取及判断键盘按键的方法.分享给大家供大家参考,具体如下: js 里面的键盘事件经常用到,所以收集了键盘事件对应的键码来分享下: keyCode 8 = BackSpace BackSpace keyCode 9 = Tab Tab keyCode 12 = Clear keyCode 13 = Enter keyCode 16 = Shift_L keyCode 17 = Control_L keyCode 18 = Alt_L keyCode 19 = Pause keyC

  • JavaScript获取键盘按键的键码(参照表)

    简介: JS获取键盘按键的键码event.keyCode,记录-方便查找. 1.键盘各按键对应的数字 2.键盘码使用 2.1.原生js使用 JavaScript document.onkeyup = function (event) { var e = event ? event : window.event; if (e.keyCode == 13) { //旧版火狐.Opera请使用e.which alert('您按了回车键.'); } }; 2.2.jQuery使用 JavaScript

  • Python2.7:使用Pyhook模块监听鼠标键盘事件-获取坐标实例

    Python2.7: 使用Pyhook模块监听鼠标键盘事件-获取坐标.因该模块对Python3 有兼容性问题,故采用python2.7解释器. 原程序可监听所有事件,现注释掉部分功能,只输出鼠标左键触发的坐标,用于获取坐标,方便自动化取点. # -*- coding: utf-8 -*- # # import pythoncom import pyHook def onMouseEvent(event): # 监听鼠标事件 # print ("MessageName:", event.

  • Python利用PyAutoGUI模块实现控制鼠标键盘

    目录 前言 1.鼠标的相关控制 2.键盘的相关控制 前言 PyAutoGUI是一个简单易用,跨平台的可以模拟键盘鼠标进行自动操作的python库. 使用pip的方式安装pyautogui模块 pip install pyautogui pyautogui在使用的时候有两个比较关键的隐患(程序在启动起来以后很难关闭)需要注意一下.一是鼠标出现在屏幕的最上方会出现报错,二是键盘的自动操作太快,所以需要先设置一下相关的参数. import pyautogui as ui # 导入pyautogui代码

  • JS 屏蔽键盘不可用与鼠标右键不可用的方法

    今天做了2個小实验, 屏蔽键盘不可用 屏蔽鼠标右鍵不可用 实验一,屏蔽键盘不可用 键盘共有3個事件 a.keydown:按下键盘上某个按键时触发,一直按住某键则会持续触发 b.keypress:按下某个按键并产生字符时触发,即忽略Shift,Alt,Ctrl等功能键 c.keyup:释放某个按键时触发 复制代码 代码如下: <script language="javascript">        function block() {            event.ke

  • js鼠标按键事件和键盘按键事件用法实例汇总

    本文实例讲述了js鼠标按键事件和键盘按键事件用法.分享给大家供大家参考,具体如下: keydown,keyup,keypress:属于你的键盘按键 mousedown,mouseup:属于你的鼠标按键 当按钮被按下时,发生 keydown 事件, keyup是在用户将按键抬起的时候才会触发的, 完整的 key press 过程分为两个部分:1. 按键被按下:2. 按键被松开. 当用户在这个元素上按下鼠标键的时候,发生mousedown 当用户在这个元素上松开鼠标键的时候,发生mouseup 例子

  • 利用Python实现Windows下的鼠标键盘模拟的实例代码

    本文介绍了利用Python实现Windows下的鼠标键盘模拟的实例代码,分享给大家 本来用按键精灵是可以实现我的需求,而且更简单,但既然学python ,就看一下呗. 依赖: PyUserInput pip install PyUserInput PyUserInput 依赖 pyhook,所以还得安装 pyhook.按需下载,下载地址. 我是 win10 64 位 python 2.7,用的是第二个,下载之后用解压软件打开,把 pyHook放到C:\Python27\Lib\site-pack

  • python PyAutoGUI 模拟鼠标键盘操作和截屏功能

    简介 一款跨平台/无依赖的自动化测试工具,目测只能控制鼠标/键盘/获取屏幕尺寸/弹出消息框/截屏. 安装 pip install pyautogui 鼠标键盘控制 >>> import pyautogui >>> screenWidth, screenHeight = pyautogui.size() >>> currentMouseX, currentMouseY = pyautogui.position() >>> pyautog

随机推荐