メインコンテンツへスキップ
< すべてのトピックに戻る

入力層を抽象化する理由は?

「キーボードのスペースキーを押した」という物理的なデバイスの入力を、「ジャンプコマンドが発生した」というゲーム内の抽象的な意味に変換してからロジックに渡すためです。

これをしないと、プレイヤーの移動スクリプトの中に Input.GetKeyDown(KeyCode.Space)Gamepad.buttonSouth など複数のデバイスの処理が散乱し、後からスマホのタッチ操作に対応できなくなるからです。

Unity 6の Input Systemを利用し、Input Action Assetで「Jump」というアクションを定義します。移動スクリプトは Jump.wasPressedThisFrameという抽象化された情報だけを見てジャンプを実行します。

目次

9周年キャンペーン実施中 早い申込みほど受講料がお得に