Unity3D獲取當(dāng)前鍵盤按鍵及Unity3D鼠標(biāo)、鍵盤的基本操作
獲取當(dāng)前鍵盤按鍵,代碼如下:
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鼠標(biāo)、鍵盤的基本操作
鍵盤:
GetKey 當(dāng)通過名稱指定的按鍵被用戶按住時(shí)返回true
GetKeyDown 當(dāng)用戶按下指定名稱的按鍵時(shí)的那一幀返回true。
GetKeyUp 在用戶釋放給定名字的按鍵的那一幀返回true。
GetAxis(“Horizontal")和GetAxis(“Verical”) 用方向鍵或WASD鍵來模擬-1到1的平滑輸入
鍵盤判斷:
If(Input.GetKeyDown(KeyCode.A)){//KeyCode表示包含鍵盤所有鍵
print(“按下A鍵”); } If(Input.GetKeyUp(KeyCode.D)){//當(dāng)按D鍵松開時(shí)
print(“松開D鍵”); } If(Input.GetAxis(“Horizontal")){//當(dāng)按下水平鍵時(shí)
print(“按下水平鍵”); } If(Input.GetKeyUp("Verical“)){當(dāng)按下垂直鍵時(shí)
print(“按下垂直鍵”); }
鼠標(biāo):
GetButton 根據(jù)按鈕名稱返回true當(dāng)對應(yīng)的虛擬按鈕被按住時(shí)。
GetButtonDown 在給定名稱的虛擬按鈕被按下的那一幀返回true。
GetButtonUp 在用戶釋放指定名稱的虛擬按鈕時(shí)返回true。
鼠標(biāo)判斷:
if(Input.GetButton("Fire1")){//Fire1表示按下鼠標(biāo)左鍵
print(“按下鼠標(biāo)左鍵”); } if (Input.GetMouseButton(0)) {//0表示鼠標(biāo)左鍵
Debug.Log("按下鼠標(biāo)左鍵"); } if (Input.GetMouseButton(1)) {//1表示鼠標(biāo)右鍵
Debug.Log("按下鼠標(biāo)右鍵"); } if (Input.GetMouseButton(2)) {//2表示鼠標(biāo)中鍵
Debug.Log("按下鼠標(biāo)中鍵"); }
給物體施加普通力:
1、先給物體添加剛體
2、transform.rigidbody.AddForce(0,0,1000); 一個(gè)簡單例子讓小球撞破墻:
代碼如下:
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)){//當(dāng)鼠標(biāo)按下W鍵時(shí),小球向前移動
transform.Translate(Vector3.forward);
}
if(Input.GetKey(KeyCode.S)){當(dāng)鼠標(biāo)按下S鍵時(shí),小球向后移動
transform.Translate(Vector3.back);
天貓雙十一活動
} if(Input.GetKey(KeyCode.A)){當(dāng)鼠標(biāo)按下A鍵時(shí),小球向左移動
transform.Translate(Vector3.left);
}
if(Input.GetKey(KeyCode.D)){當(dāng)鼠標(biāo)按下D鍵時(shí),小球向右移動
transform.Translate(Vector3.right);
} if(Input.GetButton("Fire1")){//當(dāng)點(diǎn)擊鼠標(biāo)左鍵時(shí),小球撞塌墻
transform.rigidbody.AddForce(0,0,200);//物體向前移動的力為200
}
}
}
上一篇:C#使用正則表達(dá)式實(shí)現(xiàn)首字母轉(zhuǎn)大寫的方法
欄 目:C#教程
下一篇:Silverlight將圖片轉(zhuǎn)換為byte的實(shí)現(xiàn)代碼
本文標(biāo)題:Unity3D獲取當(dāng)前鍵盤按鍵及Unity3D鼠標(biāo)、鍵盤的基本操作
本文地址:http://www.jygsgssxh.com/a1/C_jiaocheng/6852.html
您可能感興趣的文章
- 01-10C#通過反射獲取當(dāng)前工程中所有窗體并打開的方法
- 01-10C#實(shí)現(xiàn)讀取注冊表監(jiān)控當(dāng)前操作系統(tǒng)已安裝軟件變化的方法
- 01-10C#實(shí)現(xiàn)判斷當(dāng)前操作用戶管理角色的方法
- 01-10C#獲取進(jìn)程或線程相關(guān)信息的方法
- 01-10C#調(diào)用dos窗口獲取相關(guān)信息的方法
- 01-10C#編程獲取資源文件中圖片的方法
- 01-10C#獲取任務(wù)欄顯示進(jìn)程的方法
- 01-10C#及WPF獲取本機(jī)所有字體和顏色的方法
- 01-10C#獲取動態(tài)生成的CheckBox值
- 01-10C#獲取網(wǎng)頁源代碼的方法


閱讀排行
本欄相關(guān)
- 01-10C#通過反射獲取當(dāng)前工程中所有窗體并
- 01-10關(guān)于ASP網(wǎng)頁無法打開的解決方案
- 01-10WinForm限制窗體不能移到屏幕外的方法
- 01-10WinForm繪制圓角的方法
- 01-10C#實(shí)現(xiàn)txt定位指定行完整實(shí)例
- 01-10WinForm實(shí)現(xiàn)仿視頻播放器左下角滾動新
- 01-10C#停止線程的方法
- 01-10C#實(shí)現(xiàn)清空回收站的方法
- 01-10C#通過重寫Panel改變邊框顏色與寬度的
- 01-10C#實(shí)現(xiàn)讀取注冊表監(jiān)控當(dāng)前操作系統(tǒng)已
隨機(jī)閱讀
- 01-10使用C語言求解撲克牌的順子及n個(gè)骰子
- 08-05織夢dedecms什么時(shí)候用欄目交叉功能?
- 08-05dedecms(織夢)副欄目數(shù)量限制代碼修改
- 01-10SublimeText編譯C開發(fā)環(huán)境設(shè)置
- 01-10delphi制作wav文件的方法
- 08-05DEDE織夢data目錄下的sessions文件夾有什
- 01-11ajax實(shí)現(xiàn)頁面的局部加載
- 01-10C#中split用法實(shí)例總結(jié)
- 01-11Mac OSX 打開原生自帶讀寫NTFS功能(圖文
- 04-02jquery與jsp,用jquery


