Input輸入對象常用方法詳解
Input對象可以獲取用戶所有行為的輸入,如鼠標、鍵盤、加速度、陀螺儀、按鈕等,所以掌握Input對象就可以在外部輸入信息和系統之間進行交互。
Input對象的主要變量:
mousePonsition 當前鼠標的像素坐標
anyKeyDown 用戶點擊任何鍵或鼠標按鈕,第一幀返回true
acceleration 加速度傳感器的值
anykey 當前是否有按鍵按住,若有返回true
inputString 返回鍵盤輸入的字符串
Touches 返回當前所有觸摸(touch)列表
1、mousePonsition變量
變量mousePonsition是一個三維坐標,用於獲取當前鼠標的像素坐標,像素坐標是以屏幕左下角為(
Void Update(){
If(Input.GetButtonDown(0))//點擊鼠標左鍵
{
Debug.Log(Input.mousePonsition);//打印鼠標位置
}
}
2、anyKeyDown 和anykey變量
變量anykey用於顯示當前是否有任何按鍵按下,若是有,始終返回true。將下面代碼添加到腳本中,將腳本掛在到攝像機上,運行Unity,當按下任何鍵(按鈕持續處於按下)時就會不停的顯示打印信息:
Void Update()
{
If(Input.anyKey) //按下任意鍵
{
Debug(“有按鍵被持續按下”); //打印信息
}
}
變量anyKeyDown和變量anykey有一些區別,前者只有在按下按鈕後的第一幀返回True。將上面的代碼稍微修改後運行場景即可發現,只要有按鈕按下,就會打印一次信息,若是按鈕持續處於按下狀態,也僅僅打印第一次。
Void Update()
{
If(InputanyKeyDown ) //按下任意鍵
{
Debug(“有按鍵被按下”); //打印信息
}
}
3、inputString 變量
變量inputString返回值在這一幀中輸入的字符串。註意,在返回的字符串中只包含ASCII碼中的字符,若是本次沒有輸入字符串就會返回一個空串,如下面代碼顯示:
Void Update()
{
If(Input.inputString !=””)
{
Debug.Log(Input.inputString);
}
}
4、GetButton方法、GetButtonDown方法與GetButtonUP方法
這三種方法用於監聽虛擬按鈕的按下狀態,包括按鈕按下時、按鈕按下中、按鈕擡起時3個狀態,開發人員需要在Update方法中回調這些方法來判斷按鈕的狀態。其中的區別可以參看下面的功能代碼片段:
Void Update()
{
if (Input.GetButton("fiel"))
{
Debug.Log("按鍵被連續按下");
}
if (Input.GetButtonDown("fiel"))
{
Debug.Log("按鍵被按下");
}
if (Input.GetButtonUp("fiel"))
{
Debug.Log("按鍵被擡起");
}
}
5、GetKey方法、GetKeyDown方法、GetKeyUp方法
這3中方法主要用於監聽鍵盤上的按鍵狀態,從開發人員需要在Update方法中調用這些方法,並傳入想要監聽的鍵名或鍵碼。每個按鈕的狀態也分為按下、擡起、按住3種。使用者可以根據需要進行選用。使用方法如下:
if (Input.GetKey(KeyCode.A)) //KeyCode 是枚舉類型,可以獲取裏面的每一個枚舉元素,枚舉元素分別對應鍵盤上的按鍵
{
Debug.Log("A鍵被按住");
}
if (Input.GetKeyDown(KeyCode.A))
{
Debug.Log("A鍵被按下");
}
if (Input.GetKeyUp(KeyCode.A))
{
Debug.Log("A鍵被擡起");
}
6、GetMounseButton方法、GetMouseButtonDown方法和GetMouseButtonUP方法
當開發計算機端的遊戲時,肯定需要監聽鼠標的操控。Input輸入對象中包含了GetMounseButton、GetMouseButtonDown和GetMouseButtonUP三種方法,用他們來監聽鼠標按鍵。在使用時只要在Update中傳入鼠標按鍵的索引,就可以對鼠標進行監聽了。與前面介紹的方法類似,這三種方法也分別監聽了鼠標按鍵的3個狀態:
if (Input.GetMouseButton(0))
{
Debug.Log("鼠標左鍵鍵被按住");
}
if (Input.GetMouseButtonDown(0))
{
Debug.Log("鼠標左鍵鍵被按下");
}
if (Input.GetMouseButtonUp(0))
{
Debug.Log("鼠標左鍵鍵被擡起");
}
說明:這三個方法的參數是一個int類型索引。常用的鼠標按鍵為0、1、2分別對應的鼠標的左鍵、右鍵、中鍵。需要使用的時候傳入相應的索引就可以監聽對應的按鍵了
本文出自 “13233523” 博客,請務必保留此出處http://13243523.blog.51cto.com/13233523/1971003
Input輸入對象常用方法詳解