基於Unity版本 2018.4.11f1(點擊下載)
設置腳踏板
腳踏板的設置需要在Unity中添加虛擬軸,添加幾個軸就把圖中的“Size”改為 18 加上要添加的軸的數量。
離合
剎車
油門
Name:名字
Dead:設置為0,不然得到的數字不是 Sensitivity 設置的數值
Sensitivity:建議設置成0.5(該值為0.5時,若游戲開始運行,沒有觸碰過腳踏板,那么該數值為0;當觸碰了一次離合踏板時(觸碰任何一個腳踏板后,三個腳踏板都會出現非 0 的數值),離合板完全抬起的時候數值為0.5,完全踩下時數值為-0.5)
Type:按圖中所示選擇
Axis:按圖中所示選擇
設置方向盤
十字按鍵
其他按鍵
將該DLL與C#腳本導入Unity中(點擊下載DLL與腳本)
然后將下方腳本創建在Uniry中,並掛載到相機(建議)或其他物體上,然后運行測試
using System.Collections; using System.Collections.Generic; using UnityEngine; public class FunctionOne : MonoBehaviour { void Start () { // 沒有這行代碼,用方法二可能獲取不到按鍵 LogitechGSDK.LogiSteeringInitialize(false); } void Update () { // 獲取方向盤 if (Input.GetAxis ("Horizontal") != 0) { print (Input.GetAxis ("Horizontal")); } // 獲取“腳踏板” if (Input.GetAxisRaw("Throttle") < 0.5f) { print ("油門 的值為:" + Input.GetAxisRaw("Throttle")); } if (Input.GetAxisRaw("Brake") < 0.5f) { print ("剎車 的值為:" + Input.GetAxisRaw("Brake")); } if (Input.GetAxisRaw("Clutch") < 0.5f) { print ("離合 的值為:" + Input.GetAxisRaw("Clutch")); } // 獲取方向盤上的“十字按鍵” if (Input.GetAxisRaw("DPadX") == 0.5) { print ("按下了十字按鍵 右"); } if (Input.GetAxisRaw("DPadX") == -0.5) { print ("按下了十字按鍵 左"); } if (Input.GetAxisRaw("DPadY") == 0.5) { print ("按下了十字按鍵 上"); } if (Input.GetAxisRaw("DPadY") == -0.5) { print ("按下了十字按鍵 下"); } //方向盤所有按鍵獲取: //方法一: //該方法在unity中只能獲取0-19的鍵位 20-24鍵位需要使用方法二獲取 或者全部使用方法二 if (Input.GetKeyDown(KeyCode.Joystick1Button0)) { Debug.Log("KeyCode.Joystick1Button0 方向盤 X 鍵"); } print (LogitechGSDK.LogiUpdate()); //方法二: if (true) { LogitechGSDK.DIJOYSTATE2ENGINES wheel; wheel = LogitechGSDK.LogiGetStateCSharp(0); for (int i = 0; i < 128; i++) { if (wheel.rgbButtons[i] == 128) { switch (i) { case 0: Debug.Log("KeyCode.Joystick1Button0 方向盤 X 鍵" + i); break; case 1: Debug.Log("KeyCode.Joystick1Button1 方向盤 □ 鍵" + i); break; case 2: Debug.Log("KeyCode.Joystick1Button2 方向盤 ○ 鍵" + i); break; case 3: Debug.Log("KeyCode.Joystick1Button3 方向盤 △ 鍵" + i); break; case 4: Debug.Log("KeyCode.Joystick1Button4 方向盤 右撥片 鍵" + i); break; case 5: Debug.Log("KeyCode.Joystick1Button5 方向盤 左撥片 鍵" + i); break; case 6: Debug.Log("KeyCode.Joystick1Button6 方向盤 R2 鍵" + i); break; case 7: Debug.Log("KeyCode.Joystick1Button7 方向盤 L2 鍵" + i); break; case 8: Debug.Log("KeyCode.Joystick1Button8 方向盤 SHARE 鍵" + i); break; case 9: Debug.Log("KeyCode.Joystick1Button9 方向盤 OPTION 鍵" + i); break; case 10: Debug.Log("KeyCode.Joystick1Butto10 方向盤 R3 鍵" + i); break; case 11: Debug.Log("KeyCode.Joystick1Button11 方向盤 L3 鍵" + i); break; case 12: Debug.Log("KeyCode.Joystick1Button12 擋位 1 擋" + i); break; case 13: Debug.Log("KeyCode.Joystick1Button13 擋位 2 擋" + i); break; case 14: Debug.Log("KeyCode.Joystick1Button14 擋位 3 擋" + i); break; case 15: Debug.Log("KeyCode.Joystick1Button15 擋位 4 擋" + i); break; case 16: Debug.Log("KeyCode.Joystick1Button16 擋位 5 擋" + i); break; case 17: Debug.Log("KeyCode.Joystick1Button17 擋位 6 擋" + i); break; case 18: Debug.Log("KeyCode.Joystick1Button18 擋位 R 擋(倒擋)" + i); break; case 19: Debug.Log("KeyCode.Joystick1Button19 方向盤 + 鍵" + i); break; case 20: Debug.Log("KeyCode.Joystick1Button20 方向盤 - 鍵" + i); break; case 21: Debug.Log("KeyCode.Joystick1Button21 方向盤 紅色滾輪右滾 鍵" + i); break; case 22: Debug.Log("KeyCode.Joystick1Button22 方向盤 紅色滾輪左滾 鍵" + i); break; case 23: Debug.Log("KeyCode.Joystick1Button23 方向盤 回車 鍵" + i); break; case 24: Debug.Log("KeyCode.Joystick1Button24 方向盤 特殊標志鍵 鍵" + i); break; } } } } } }
附一張羅技方向盤的按鍵說明,logitech游戲軟件(點擊下載)