facebook twitter hatena line email

Unity/Csharp/キー入力/Event

提供: 初心者エンジニアの簡易メモ
2017年11月22日 (水) 21:59時点におけるAdmin (トーク | 投稿記録)による版 (ページの作成:「入力イベントでキー入力を行う。 フレームレートごとにInput判定するよりもこちらの方が入力精度が良い。 public class HogeScript...」)

(差分) ←前の版 | 最新版 (差分) | 次の版→ (差分)
移動: 案内検索

入力イベントでキー入力を行う。 フレームレートごとにInput判定するよりもこちらの方が入力精度が良い。

public class HogeScript : MonoBehaviour {

bool lastShiftFlag = false; public override void OnGUI() { Event e = Event.current; if (e.type.Equals(EventType.repaint)) { lastShiftFlag = e.shift; } GetEventDownKeyCheck(e, lastShiftFlag) } void GetEventDownKeyCheck(Event e, bool lastShiftFlag) { if (e.isKey) { foreach (KeyCode code in Enum.GetValues(typeof(KeyCode))) { if (e.keyCode.Equals (code) && !e.keyCode.Equals(KeyCode.None)) { if (e.type.Equals (EventType.keyDown)) { if (lastShiftFlag) { return code.ToString (); } else { return code.ToString ().ToLower (); } } } } } }

}