1. 程式人生 > >Unity 鍵盤,滑鼠,觸控輸入

Unity 鍵盤,滑鼠,觸控輸入

Input.GetAxis 用法:

GetAxis 是個方法,需要傳引數,引數為string型別,引數如下:

一:觸屏類
1.Mouse X                滑鼠沿著螢幕X移動時觸發
2.Mouse Y                滑鼠沿著螢幕Y移動時觸發
3.Mouse ScrollWheel      當滑鼠滾動輪滾動時觸發
二:鍵盤操作類
1.Vertical               對應鍵盤上面的上下箭頭,當按下上或下箭頭時觸發
2.Horizontal             對應鍵盤上面的左右箭頭,當按下左或右箭頭時觸發

例:

using System.Collections;
using
System.Collections.Generic; using UnityEngine; public class InputFun : MonoBehaviour { public float speed = 10.0F; public float rotationSpeed = 100.0F; public float horizontalSpeed = 2.0F; public float verticalSpeed = 2.0F; void Update () { ReceiveInput(); } void ReceiveInput() { //滑鼠移動
float h = horizontalSpeed * Input.GetAxis("Mouse X"); float v = verticalSpeed * Input.GetAxis("Mouse Y"); transform.Rotate(v, h, 0); //鍵盤按鍵 float translation = Input.GetAxis("Vertical") * speed; float rotation = Input.GetAxis("Horizontal") * rotationSpeed; translation *= Time.deltaTime; rotation *= Time.deltaTime; transform.Translate(0
, 0, translation); transform.Rotate(0, rotation, 0); } }

以下轉自:

按鍵

Input.GetKey(“up”) = Input.GetKey(KeyCode.UpArrow) 按住鍵盤上鍵

Input.GetKeyDown (“up”) 按下鍵盤上鍵

Input.GetKeyUp (“up”) 放開鍵盤上鍵

 (KeyCode.UpArrow)為鍵碼 

Input.GetButton("") = Input.GetKey("") 兩種幾乎相同(目前沒發現差異)

Input.GetButton一樣會有分Input.GetButtonDown & Input.GetButtonUp

("")符號內為按鍵英文--參考Unity→Edit→Project Settings→Input(可新增)

PS : Unity內並沒有內建android(返回與選單)功能鍵設定,必須使用者自行設定,
    在Input.GetButton("")中"escpae"&"menu"有對應返回與選單鍵

例: 按下返回就退出
if(Input.GetKeyDown (“escpae”))
{ 
    Application.Quit(); 
} 

滑鼠用

Input.GetMouseButton(0) 當0鍵被按住持續偵測(包含down和up各一次)

Input.GetMouseButtonDown(0) 當0鍵被按下一次

Input.GetMouseButtonUp(0) 當0鍵放開一次

鍵 : 0=左 1=中 2=右

PS : Unity有對應滑鼠左鍵輸入功能部分可以用在Android手指觸碰的操作上

獲取軸

Input.GetAxis("") -- ("")參考Unity→Edit→Project Settings→Input(可新增)

根據座標軸傳回虛擬座標值,取得輸入裝置輸入時值範圍[-1,1]

例: Input.GetAxis(“Mouse x”) - 可取得滑鼠橫向移動增量

觸碰

Input.touchCount - 觸碰數量

Input.GetTouch(0) - 當第一支手指觸碰時

0=第一支   1=第二支   2=第三支以此類推(觸碰到點的偵測數量上限未測不知)

TouchPhase - 觸碰狀態有分五種Began Moved Stationary Ended Canceled

Began按下、Moved移動、Stationary按住沒移動、Ended離開

Canceled用於觸碰超過5點以上或貼至臉上時取消追蹤

Input.GetTouch(0).position 取得第一支手指觸碰座標


例 :

Touch 單點移動判斷式

if(Input.touchCount == 1 && Input.GetTouch(0).phase==TouchPhase.Moved){}

(觸碰數量為1個) 和(第一支手指觸碰時的狀態為移動) 時{}



Touch 雙點移動判斷式

if(Input.touchCount >1){
    if(Input.GetTouch(0).phase==TouchPhase.Moved ||
       Input.GetTouch(1).phase==TouchPhase.Moved){ }}

(觸碰數量超過1個) 和(第一支手指觸碰時的狀態為移動)或者(第二支手指觸碰時的狀態為移動)時{}


Input.GetTouch(0) 和 Input.GetMouseButton(0)

單點時大致上互通(不確定是否完全相同)

多點上就會出現差異Touch會取手指前後順序Mouse會取中心點

相關推薦

Unity 鍵盤滑鼠觸控輸入

Input.GetAxis 用法: GetAxis 是個方法,需要傳引數,引數為string型別,引數如下: 一:觸屏類 1.Mouse X 滑鼠沿著螢幕X移動時觸發 2.Mouse Y 滑鼠沿

WPF經典教程--鍵盤輸入事件 滑鼠輸入事件 焦點處理

一、鍵盤和鍵盤事件WPF提供了一個基本的鍵盤類(System.Input.Keyboard類),該類提供鍵盤相關的事件,方法和屬性,以提供有關鍵盤狀態的資訊。鍵盤事件也由諸如UIElement XAML基本元素類的事件提供。對於鍵盤操作,有兩個常見事件:KeyDown事件和P

Android軟鍵盤彈出覆蓋h5頁面輸入框問題

問題 過多 繼承 col 鍵盤 代碼 chrom 技術 fff 之前我們在使用vue進行 h5 表單錄入的過程中,遇到了Android軟鍵盤彈出,覆蓋 h5頁面 輸入框 問題,在此進行回顧並分享給大家: 系統:Android 條件:當輸入框在可視區底部或者偏下的位置 觸發

android仿微信、QQ等聊天介面實現點選輸入框彈出軟鍵盤、點選其他區域收起軟鍵盤預設滑動至最低端

如圖所示,點選輸入框及選擇圖片和傳送按鈕時軟鍵盤顯示且不消失,點選其他區域,則隱藏軟鍵盤。 主要程式碼如下: override fun dispatchTouchEvent(ev: MotionEvent?): Boolean { if (ev!!.getAction() ==

Unity 中的滑鼠事件方法彙總(物體UGUI)

本文將從遊戲物體(Gameobject),和UGUI,講解Unity—PC端開發中,滑鼠事件的常見功能實現 本文將幫你解決Unity中如下或者類似的事件響應問題: 遊戲物體篇 點選遊戲物體,物體消失; 滑鼠懸停在遊戲物體上,物體旋轉; 移入遊戲物體,遊戲物體變

利用Python自動操縱滑鼠鍵盤刷金幣工作室都是靠這種搬磚!

不管是英雄聯盟還是王者榮耀,總是有一個特殊的模式可以用來刷金幣,為什麼說是特殊模式呢?因為打的都是人機,或者並不影響遊戲平衡,被其它玩家舉報,同時你這種模式的戰績也沒人去看你的。 如果能利用Python做個自動化的指令碼,幫我們自動玩遊戲刷怪呢?不就意味著可以一直讓我們的金幣數目增加,而我們掛著

怎樣不用滑鼠完全只靠鍵盤操作電腦?

來源知乎:https://www.zhihu.com/question/28993252/answer/61618961 (一)Win鍵 win + e;開啟資源管理器。 win + d;顯示桌面,再按一次恢復視窗。 win + r;執行對話方塊,這個執行如果用的好,基本上你就可以告別滑鼠; 1

Flutter仿微信支付寶密碼輸入框+自定義鍵盤

大家好,我又來了。 今年這個冬天真的是“寒冬”啊,我是真的被“凍傷”了,一年的計劃全部被打算了,賊無奈,也讓我遭受了一定的打擊,希望之光在哪?(吐槽到此為止) 回到咱們的正題,剛用Flutter做完一個金融專案,當中使用到了類似於微信,和支付寶的那種密碼輸入框,然後為了安全一點也自己實現了自定義的鍵盤,今天跟

五個學生每學生有3門課的成績 * 從鍵盤輸入以上資料(學生號姓名三門課成績) * 計算出 平均成績(採用面向物件的方式如學生

/**  * 有五個學生,每學生有3門課的成績,  * 從鍵盤輸入以上資料(學生號,姓名,三門課成績),  * 計算出 平均成績(採用面向物件的方式,如學生類。。。)。  * @author chenkunqing  *  time : 2017/7/21-16

【JS】JS常見事件滑鼠鍵值鍵盤keycode碼

a.視窗事件,只在body和frameset元素中才有效 onload 頁面或圖片載入完成時 onunload 使用者離開頁面時 b.表單元素事件,在表單元素中才有效 onchange 框內容改變時 onsubmit 點選提交按

selenium中模擬滑鼠鍵盤操作

首先要重寫一個WebDriverEventListener的介面類 1.模擬滑鼠操作 EventFiringMouse mouse = new EventFiringMouse(driver, webDriverEventListener); EventFiringTouch touch

IOS微信6.7.4輸入框失去焦點鍵盤關閉後被撐起的頁面無法回退到原來正常的位置

IOS微信6.7.4輸入框失去焦點,軟鍵盤關閉後,被撐起的頁面無法回退到原來正常的位置   近期在開發微信H5頁面時碰到這個問題,如圖,軟鍵盤彈起後,若原輸入框被遮擋,頁面整體將會上移,然而當輸入框失焦,軟鍵盤收起後,頁面未恢復,這也是ios的微信版本更新6.7.4之後才

有五個學生每個學生有3門課的成績鍵盤輸入以上資料(包括姓名三門課成績) 輸入的格式:如:zhagnsan304060計算出總成績 並把學生的資訊和計算出的總分數高低順序存放在磁碟文

有五個學生,每個學生有3門課的成績, 從鍵盤輸入以上資料(包括姓名,三門課成績), 輸入的格式:如:zhagnsan,30,40,60計算出總成績, 並把學生的資訊和計算出的總分數高低順序存放在磁碟檔案"stud.txt"中。 1:定義一個描述學生的類2定義一個操作學生的工

基於MFC對話方塊的圖示滑鼠形狀鍵盤訊息等處理的示例

標頭檔案 // MFC_ShowPointDlg.h : 標頭檔案 // #pragma once // CMFC_ShowPointDlg 對話方塊 class CMFC_ShowPointDlg : public CDialogEx { // 構造 public: CMFC

鍵盤輸入一個整數判斷它是正數負數0

程式碼如下:import java.util.Scanner;class Demo7{public static void main(String[] args) {Scanner sc=new Sca

Unity3D開發(七):NGUI之UICamera控制觸控滑鼠事件

先給論壇做個廣告:點選開啟連結 1. UICamera 功能介紹 主要包括UI事件的監聽,分發,覆蓋範圍為此Camera渲染的所有GameObject。 事件源包括:滑鼠,觸控,鍵盤,手柄。 事件包括:懸停,按下/擡起,選中/取消選中,點選,雙擊,拖拽,釋放,文字輸入,T

微信6.7.4 ios12 軟鍵盤收回時頁面不回彈導致游標位置錯亂再次點選輸入框區域時無法focus

https://developers.weixin.qq.com/community/develop/doc/00044ae90742f8c82fb78fcae56800 https://blog.csdn.net/qq_23370345/article/details/84757505 參考上述文章,可

9.2、Libgdx的輸入處理之滑鼠觸控鍵盤

Libgdx支援的最主要的裝置是desktop或瀏覽器的滑鼠支援,Android的觸控式螢幕支援和鍵盤的支援。我們接下來了解一下。 鍵盤 使用者按下或釋放一個按鍵生成了相應的事件。每個事件包含了一個 key-code來識別是哪個按鍵按下或釋放。這些key-code在不同的

從MyEclipse到IntelliJ IDEA ——讓你擺脫滑鼠鍵盤操作

從MyEclipse到IntelliJ IDEA——讓你擺脫滑鼠,全鍵盤操作從MyEclipse轉戰到IntelliJ IDEA的經歷我一個朋友寫了一篇“從Eclipse到Android Studio”