Unityゲーム開発者アイデルンのBlog

よかったら読んでいってね

オブジェクトを移動する方法その2

前回はTransformを直接いじってオブジェクトを移動させる方法を書きましたが次はInputManagerを利用したオブジェクトの移動方法を教えます。

 

InputManagerを利用しキーボードなどからの入力で移動させる方法。

 

InputManagerとはキーボードやゲームパッドなどを一括で操作するものです。

 

ハードウェアごとに操作がバラバラだと統一性がなく管理がやりづらいのでこれを使って一括管理します。

 

ではどうやって認識させるのかというと

 

float x=Input.GetAxis("Horizontal");

transform.position=new Vector3(x,0,0);

 

Input.GetAxisとは-1f~0f~1fまでの数字をキー入力することで数字が代入することができるようになります。

 

他にもInput.GetAxisRawという似たようなものがありますがこっちはint型で-1~0~1を返します。

 

入力したとたんに反映したいほうならこちらのほうが使いやすいと思いますが実際にどっちがいいかは本人次第なのでこんなものがあると覚えておいてください。

 

Horizontalとはキーボード入力でAとDまたは矢印キー左右に対応しており、VerticalはWとSまたは上下キーに対応させることができます。

 

わざわざKeycodeを書かなくて済むので便利だし他のプラットフォームにも対応させることができるのでぜひとも覚えてください。

 

またこちらは旧来のInput方法でしたが新しいInputSystemというものがあります。

 

私はこっち使ってないのでより詳しく知りたいなら調べてみてはどうでしょうか。

 

個人開発なら別にInputManagerで困らないと思うんだけどね。