Unityでキーボード・ゲームパッドを使ってキャラクターを操作したい場合、
if (Input.GetKey("forward")) {
transform.position += Vector3.forward * Time.deltaTime;
}
のような感じでスクリプトを書くと思います。
ここで使う"forward"
とかの文字列は
[Edit] » [Project Settings]
にある「Input」の項目から設定できるそうです。
文字列を変更したり、感度を設定したりもできるので、入力関係で細かく設定したい場合は試してみてください。
関連記事
UnityでマウスがUI上にあるかどうかチェックするスクリプト
Unityでは、Physics.Raycastを使ってマウスがオブジェクト上にあるかどうか調べることができます。
Ray ray = Camera.main.ScreenPointToRay (Input.mousePosition);
RaycastHit hit;
if (Physics.Raycast (ray, out hit)) {
// 処理したい内容
}
ただし、上...
「タッチデバイス」「マウス操作」両方に対応する場合に参考になりそうなドキュメント
Unityを使っていると、WindowsとAndroid/iOS両方に対応したゲームを作ることもあるかなと思います。その際、Windowsではマウス、Android/iOSではタッチデバイスが基本操作になってくると思いますが、どんな感じに対応すれば良いのか悩む場面もあるかもしれません。
Microsoftのドキュメントですが、そういう場合に参考になりそうな資料がこちらです。
Wind...
ScreenToWorldPointでクリックした位置のWorld座標が取得できない場合
マウスでクリックした位置に対応するWorld座標を取得したい場合、Camera.ScreenToWorldPointを使うと思いますが、たまに正しい値が取得できないことがあります。
Camera.main.ScreenToWorldPoint (Input.mousePosition);
そういう場合は、CameraのProjectionをOrthographicに設定してみるとうま...
Unityでマウスカーソルの画像を変更する方法
マウスカーソルの画像を(一時的に)変更したい場合はCursor.SetCursorを使うと実装できるみたいです。
使い方
例えば、カーソルが特定のエリアにある時にカーソル画像を変更したい場合は次のような感じです。
public class Example : MonoBehaviour, IPointerEnterHandler, IPointerExitHandler
{
...
Unity2Dでオブジェクトへのクリックを取得する方法
Unity2Dでゲーム内に配置したオブジェクトをクリック(タップ)したい場合は、対象オブジェクトにCollider2D(BoxCollider2DとかCircleCollider2Dなど)を設定した上でPhysics2D.Raycastを使って実装できます。
サンプル
void Update()
{
if (Input.GetMouseButtonDown(0))
{
...