はじめに
Unityでゲームを作るとき、オブジェクトを動かす方法はたくさんありますよね。その中でも、今回は「マウスカーソルの位置に向かってオブジェクトを移動させる方法」を紹介します!例えば、マウスに追従するキャラクターや敵を作りたいときに、この技術が役立ちますよ。
このチュートリアルでは、初心者の方でも分かりやすいように、手順を一つひとつ丁寧に解説していきます。シーンにオブジェクトを追加するところから、簡単なスクリプトを書いて動作確認をするところまでをカバーしますので、一緒にチャレンジしてみましょう!
それでは、さっそく始めていきましょう!
Unityを触ったことがないという方はコチラの記事から見てみてください!
1. シーンに「Sphere」オブジェクトを追加
まずは、移動させる対象となる「Sphere」オブジェクトをシーンに追加します。以下の手順に従って簡単に追加できますよ。
手順
- ヒエラルキー(Hierarchy)ウィンドウを確認してください。ここには、現在のシーンに存在するすべてのオブジェクトが表示されています。
- ヒエラルキーウィンドウ内で右クリックします。
- 表示されるメニューから「3D Object」→「Sphere」を選択します。


シーン内に「Sphere」が表示されていれば成功です。今後、このSphereがマウスカーソルに向かって移動するようになります。ヒエラルキーで「Sphere」を選択した状態で、インスペクター(Inspector)ウィンドウを確認すると、オブジェクトの位置や大きさなどを調整できます。必要に応じてサイズや位置を変更してみてください!
2.スクリプトの作成
次は、オブジェクトをマウスカーソルに向かって動かすためのスクリプトを作成します。スクリプトの作り方はとっても簡単なので、手順に従って進めていきましょう!
手順
- プロジェクト(Project)ウィンドウを開いてください。このウィンドウは、ゲームのすべてのファイルやアセットを管理する場所です。
- プロジェクトウィンドウ内で右クリックします。
- 「Create」→「C# Script」を選択します。
- 新しく作成されたスクリプトに「MouseFollower」という名前を付けます。

これでスクリプトの作成が完了しました!次は、このスクリプトにコードを書いていきます。準備はいいですか?さっそく次のステップに進みましょう!
3.スクリプトにコードを記述
スクリプトが作成できたら、次は中身を記述していきます。このコードによって、「Sphere」がマウスカーソルの位置に向かって動くようになります。
手順
- プロジェクトウィンドウで「MouseFollower」スクリプトをダブルクリックします。
→ スクリプトがVisual Studioなどのコードエディタで開きます。 - 以下のコードを、エディタ内に入力します。
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class MouseFollower : MonoBehaviour
{
private Vector3 mouse; // マウス位置を保存する変数
private Vector3 target; // 目的地の座標
public float speed; // 移動スピード
void Start()
{
// 初期設定:移動スピードを設定
speed = 0.01f;
}
void Update()
{
// マウス位置を取得
mouse = Input.mousePosition;
// マウスのスクリーン座標をワールド座標に変換
target = Camera.main.ScreenToWorldPoint(new Vector3(mouse.x, mouse.y, 10));
// オブジェクトをマウスの方向に向ける
transform.LookAt(target);
// オブジェクトを前方に少しずつ移動
transform.position += transform.forward * speed;
}
}
コードの説明
Input.mousePosition
マウスカーソルの現在位置を取得します(スクリーン座標)。Camera.main.ScreenToWorldPoint
スクリーン座標をワールド座標に変換します。このとき、カメラからの距離(ここでは10)を指定する必要があります。transform.LookAt(target)
オブジェクトがターゲット(マウス位置)を向くように回転します。transform.position += transform.forward * speed;
オブジェクトを前方に少しずつ移動させます。移動速度はspeedで調整できます。

コードを書き終えたら、エディタで「Ctrl + S」または「Command + S」でスクリプトを保存してください。
次は、このスクリプトをシーン内のオブジェクトに適用する方法を解説します!
4.スクリプトをオブジェクトにアタッチ
スクリプトの準備ができたら、次はそれを「Sphere」オブジェクトにアタッチ(関連付け)します。この作業を行うことで、「Sphere」がスクリプトの指示通りに動くようになります。
手順
- プロジェクトウィンドウを開き、「MouseFollower」スクリプトを見つけてください。
- ヒエラルキーウィンドウで「Sphere」オブジェクトをクリックして選択します。
→ これで「Sphere」が選択状態になります。 - 「MouseFollower」スクリプトをドラッグして、「Sphere」にドロップします。
→ ドロップすると、「Sphere」にスクリプトがアタッチされます。 - アタッチされたことを確認するには、インスペクター(Inspector)ウィンドウを見てください。「MouseFollower」という名前のスクリプトが表示されていれば成功です。
ポイント
- スクリプトをアタッチするとき、必ずオブジェクトを正しく選択していることを確認してください。
- スクリプトの
speed変数をインスペクターで確認できます。この値を変更することで、オブジェクトの移動速度を調整できます。


これでスクリプトが「Sphere」に適用されました!次は実際に動作を確認してみましょう。マウスを動かすとオブジェクトがどのように反応するのか、楽しみですね!
5. 動作確認
最後に、スクリプトが正しく動作しているかを確認しましょう!以下の手順に従って、シーン内の「Sphere」がマウスカーソルに向かって移動するかどうかをチェックします。
手順
- Unityエディターの上部にある「Play」ボタン(▶)をクリックします。
→ プレイモードが開始され、ゲームが動作する状態になります。 - シーンビューまたはゲームビューでマウスを動かしてみてください。
→ 「Sphere」がマウスカーソルの位置に向かって動いているはずです! - 必要に応じて、インスペクターで
speed変数を調整して、オブジェクトの移動速度を変更してみましょう。例えば、0.05fにすると少し速くなります。 - 動作確認が終わったら、「Play」ボタンを再びクリックしてプレイモードを終了します。
よくある問題と対処法
- オブジェクトが動かない場合
- 「Sphere」にスクリプトが正しくアタッチされているか確認します。
- カメラがシーンに正しく配置されているかを確認します(スクリプトではカメラが必要です)。
- 動きが遅いまたは速すぎる場合
インスペクターでspeedの値を適切に調整してください。

これで全ての手順が完了しました!🎉
シーン内で「Sphere」がスムーズにマウスカーソルに向かって動いていれば、大成功です。自分のゲームアイディアに応用して、さらに面白い仕組みを作ってみましょう!
🎯マウス&タッチ操作が一気に快適に!
『Lean Touch』なら、オブジェクトの移動・回転・拡大縮小が数行のコードで即実装OK!
PCでもスマホでも直感的な操作をすぐに導入できるから、初心者にも超おすすめです。
📌ドラッグ操作やピンチズームも簡単対応!
📌解説ドキュメントも豊富で安心!
📌プロトタイプ作りから本番アプリまで長く使える定番アセット✨
👉今すぐチェック:Lean TouchをAsset Storeで見る
あわせて読みたい
- Unity初心者でも簡単!マウスクリックした座標に向けて横移動するオブジェクトを作成する
クリックした場所に向かって滑らかに動くスクリプトを初心者向けに解説! - Unity初心者必見!クリック位置にオブジェクトを向ける方法を徹底解説
クリックした方向にオブジェクトの向きを変える方法を学べます。 - Unityでクリック操作のボール発射を実装!一定距離で自動消去する方法を解説
クリックに反応してオブジェクトを飛ばすスクリプト例つき! - Unity初心者でもできる!クリックした位置に応じてボールを飛ばす方法
クリックした位置を基準に飛ばす処理の実装を学べます。 - Unityでマウスカーソルの方向にオブジェクトを回転!簡単チュートリアル
マウス操作で回転をコントロールするテクニックを紹介。
よくある質問(Q&A)
- Qオブジェクトが動かないのですが?
- A
スクリプトが「Sphere」にアタッチされているか、カメラが適切に配置されているかを確認してください。
- Q動くスピードを調整したい場合はどうすればいいですか?
- A
スクリプト内の
speed変数の値を変更してください。例えば、0.05fにすると速くなります。
- Q他のオブジェクトにも使えますか?
- A
はい!「Sphere」以外のオブジェクトにも同じスクリプトをアタッチすれば使用できます。







※当サイトはアフィリエイト広告を利用しています。リンクを経由して商品を購入された場合、当サイトに報酬が発生することがあります。
※本記事に記載しているAmazon商品情報(価格、在庫状況、割引、配送条件など)は、執筆時点のAmazon.co.jp上の情報に基づいています。
最新の価格・在庫・配送条件などの詳細は、Amazonの商品ページをご確認ください。