Unityでマウス操作でカメラを動かしたいと思ったことはありませんか。
FPSゲームなどでは、マウスでカメラを動かす機能が必要ですよね。
この記事では、マウス操作でカメラを動かす基本構造を解説します。
感度調整や回転制限でつまずきやすい点を整理し、FPSや3D操作の基礎理解としてUnity入門の森を案内していきましょう。
- マウス操作によるカメラ制御の基本
- 基本構造と実装方法
- 感度調整の方法
- 回転制限の実装
- つまずきやすいポイント

マウス操作によるカメラ制御は、基本的な実装方法を覚えれば実現できます。
感度や回転制限も、少し工夫すれば実装できますよ。
\読むだけで終わらせない!実際にゲームを作って実力をつけよう/
トレンド×入門に最適
Unity ノンフィールドRPG
+スレスパ風JRPG講座
Unity6対応・スマホ化対応の最新カリキュラム。今もっとも人気のデッキ構築型ゲームをJRPGと組み合わせて実装。初心者が最初に選ぶ一本として最適です。
王道アクションに挑戦
Unity 2Dアクションゲーム
の作り方講座(ロックマン風)
ロックマン風の本格横スクロールACTをスマホ化・広告実装まで対応。7ステージ+ラスボスという市販ゲームに近い本格構成で、リリースまで見据えて作れます。
3D入門に最適
ゼルダ風3Dアクションゲーム
の作り方講座
ゼルダの伝説・モンハン・原神のような3Dアクションをスマホ対応で作れる入門講座。初心者でも全16回でしっかり3D開発の基礎を習得できます。
あなたのオリジナルゲーム、今年こそ完成させませんか?
RPG・アクション・ホラー…Unityで本格ゲームを作りたい人のための学習サイトです。
実際に完成するゲームを題材に、
ソースコード・素材・プロジェクト一式をすべて公開。
仕事や学校の合間の1〜2時間でも、
「写経→改造」で自分のゲームまで作りきれる環境です。
マウス操作によるカメラ制御の基本

マウス操作によるカメラ制御の基本を説明します。
どのような構造になっているのでしょうか。
基本構造
マウス操作によるカメラ制御の基本構造は、以下の通りです:
- マウスの移動量を取得:Input.GetAxis(“Mouse X”)やInput.GetAxis(“Mouse Y”)で取得
- カメラの回転に反映:取得した値をカメラの回転に加算
- 感度を調整:移動量に感度を掛けて調整
- 回転を制限:上下の回転を制限する
この構造を理解すれば、マウス操作によるカメラ制御を実装できます。
実装の流れ
実装の流れは、以下の通りです:
- マウス入力の取得:マウスの移動量を取得
- 回転量の計算:移動量に感度を掛けて計算
- カメラの回転:計算した値をカメラの回転に適用
- 回転の制限:上下の回転を制限
この流れに沿って実装すれば、マウス操作によるカメラ制御ができます。
基本構造と実装方法

基本構造と実装方法を説明します。
基本的なスクリプト
基本的なスクリプトは、以下の通りです:
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 |
using UnityEngine; public class MouseCameraControl : MonoBehaviour { public float mouseSensitivity = 100f; private float xRotation = 0f; void Update() { float mouseX = Input.GetAxis("Mouse X") * mouseSensitivity * Time.deltaTime; float mouseY = Input.GetAxis("Mouse Y") * mouseSensitivity * Time.deltaTime; xRotation -= mouseY; xRotation = Mathf.Clamp(xRotation, -90f, 90f); transform.Rotate(Vector3.up * mouseX); transform.localRotation = Quaternion.Euler(xRotation, 0f, 0f); } } |
このスクリプトで、基本的なマウス操作によるカメラ制御ができます。
基本的なスクリプトを実装すれば、マウス操作によるカメラ制御ができます。
スクリプトの説明
スクリプトの各部分を説明します:
- mouseSensitivity:マウスの感度を設定する変数
- xRotation:上下の回転量を保存する変数
- Input.GetAxis(“Mouse X”):マウスの左右の移動量を取得
- Input.GetAxis(“Mouse Y”):マウスの上下の移動量を取得
- Mathf.Clamp:上下の回転を制限する
これらの要素を組み合わせることで、マウス操作によるカメラ制御ができます。
スクリプトの各部分を理解すれば、カスタマイズできます。
感度調整の方法

感度調整の方法を説明します。
感度の設定
感度は、mouseSensitivityの値を変更することで調整できます。
値が大きいほど、カメラの動きが速くなります。
値が小さいほど、カメラの動きが遅くなります。
感度の値を調整することで、カメラの動きを調整できます。
感度の推奨値
感度の推奨値は、以下の通りです:
| 用途 | 推奨値 | 特徴 |
|---|---|---|
| FPSゲーム | 100-200 | 素早い操作が必要 |
| 3D探索ゲーム | 50-100 | 落ち着いた操作 |
| カメラ視点調整 | 20-50 | 細かい調整が必要 |
用途に応じて、適切な値を設定しましょう。
用途に応じて感度を設定することで、快適に操作できます。
実行時の感度調整
実行時に感度を調整する方法もあります。
以下のようなコードで実装できます:
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 |
public float mouseSensitivity = 100f; void Update() { // 実行時に感度を調整 if (Input.GetKey(KeyCode.LeftShift)) { mouseSensitivity = 50f; // 感度を下げる } else { mouseSensitivity = 100f; // 通常の感度 } // カメラ制御の処理... } |
実行時に感度を調整することで、状況に応じて操作を変更できます。
実行時に感度を調整することで、柔軟な操作ができます。
回転制限の実装

回転制限の実装方法を説明します。
上下の回転制限
上下の回転を制限するには、Mathf.Clampを使用します。
以下のようなコードで実装できます:
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 |
private float xRotation = 0f; public float minAngle = -90f; public float maxAngle = 90f; void Update() { float mouseY = Input.GetAxis("Mouse Y") * mouseSensitivity * Time.deltaTime; xRotation -= mouseY; xRotation = Mathf.Clamp(xRotation, minAngle, maxAngle); transform.localRotation = Quaternion.Euler(xRotation, 0f, 0f); } |
Mathf.Clampで、回転を-90度から90度の範囲に制限できます。
Mathf.Clampで回転を制限することで、適切な視点を維持できます。
左右の回転制限
左右の回転を制限する方法もあります。
ただし、左右の回転を制限すると、操作が不自然になることがあります。
必要に応じて実装しましょう。
左右の回転制限は、必要に応じて実装します。
回転制限の値
回転制限の値は、用途に応じて調整します。
- 上下:-90度から90度:一般的なFPSゲーム
- 上下:-45度から45度:制限を強くしたい場合
- 左右:制限なし:一般的には制限しない
用途に応じて、適切な値を設定しましょう。
用途に応じて回転制限の値を設定することで、適切な視点を維持できます。
つまずきやすいポイント

マウス操作によるカメラ制御でつまずきやすいポイントを説明します。
ポイント1:マウスの上下が逆になる
マウスの上下が逆になることがあります。
この場合、mouseYの符号を反転させましょう。
|
1 2 3 |
xRotation -= mouseY; // 逆にする場合 xRotation += mouseY; // 正しい方向にする場合 |
符号を変更することで、マウスの上下を調整できます。
マウスの上下が逆になる場合、符号を変更します。
ポイント2:感度が高すぎる、低すぎる
感度が高すぎる、または低すぎる場合、操作が困難になります。
mouseSensitivityの値を調整して、適切な感度に設定しましょう。
値が大きすぎる場合は小さくし、値が小さすぎる場合は大きくします。
感度を調整することで、快適に操作できます。
ポイント3:回転制限が効かない
回転制限が効かない場合、Mathf.Clampの使い方を確認しましょう。
xRotationの値をClampした後、localRotationに適用する必要があります。
順序を確認して、正しく実装しましょう。
回転制限が効かない場合、実装の順序を確認します。
記事を読んで「作ってみたい!」と思ったら!人気ゲームを題材にした講座で実力をつけよう
知識を読むだけで終わらせるのはもったいない。実際に手を動かしてゲームを1本完成させることで、理解が一気に深まります。人気タイトルをモデルにした講座で、ゲーム開発の第一歩を踏み出しましょう。
Unity ノンフィールドRPG+スレスパ風JRPG講座【Unity6対応!トレンドのデッキ構築×JRPGをスマホ向けに作れる!】

- Unity6対応・スマホ化対応で最新環境のゲーム開発が学べる
- Slay the Spire風のデッキ構築システム×JRPGの組み合わせを実装
- 初心者でも取り組みやすい丁寧な解説構成
- ノンフィールドRPGとデッキ構築JRPGの2つを合わせて学ぶのがおすすめ
Unity ノンフィールドRPGの作り方講座+Slay the Spire風デッキ構築JRPGの作り方講座は、今もっともトレンドのデッキ構築型ゲームシステムをJRPGと組み合わせて実装する方法を学べる講座です。
Unity6対応・スマホ化対応の最新カリキュラムで、コラムやTIPSで読んで「なるほど」と思った知識を、実際に動くゲームとして形にする体験ができます。
「Slay the Spireみたいなゲームを自分でも作ってみたい!」という人の最初の一歩として最適な講座です。
Unity6対応・スマホ化対応の最新カリキュラム
トレンドのデッキ構築×JRPGを最速で実装しよう
→ スレスパ風デッキ構築JRPG講座を見てみる
スマホ対応の最新環境で、ゲーム開発の第一歩を踏み出そう!
Unity 2Dアクションゲームの作り方講座(ロックマン風)【全16回!スマホ化・広告実装まで対応した本格横スクロールACTを作れる!】

- ロックマン・マリオ・カービィのような横スクロールACTをゼロから開発
- 7ステージ+ラスボスステージの市販ゲームに近い本格的なゲーム設計
- スマホ化・AdMob広告実装まで対応してリリースまで見据えた構成
- 敵AI15体・多彩なマップギミック・武器システムを完全実装
- 完全オリジナルゲームをアセット不使用で素材提供付きで制作
Unity 2Dアクションゲームの作り方講座(ロックマン風)は、ロックマン・スーパーマリオ・星のカービィのような2D横スクロールアクションゲームを開発できるようになる本格的な講座です。
TIPSやコラムで学んだ当たり判定・物理挙動・敵AIの知識を、実際のゲームコードとして実装する体験が全16回に凝縮されています。スマホ化・広告実装まで対応しているため、作って終わりではなくリリースまで見据えた実践スキルが身につきます。
「読んで理解した知識を、動くゲームとして形にしたい」という人に強くおすすめの一本です。
スマホ化・広告実装まで対応した本格横スクロールACT
ロックマン風の2Dアクションゲームをリリースまで作り上げよう
→ 2Dアクションゲームの作り方講座を見てみる
広告収益まで視野に入れた実践スキルを今すぐ手に入れよう!
ゼルダ風3Dアクションゲームの作り方講座【全16回!初心者でも3Dアクションがスマホ対応で作れる!】

- ゼルダの伝説・モンハン・原神のような3Dアクションをゼロから開発
- 初心者でも取り組みやすい丁寧な解説構成
- スマホ化対応で実機で動かせるゲームが完成
- アセットを使った実践的なゲーム開発手法が身につく
- 画像・動画・全ソースコード公開の充実したサポート
ゼルダ風3Dアクションゲームの作り方講座は、ゼルダの伝説・モンハン・原神のような本格的な3Dアクションゲームを作りたい人におすすめの入門講座です。
コラム・TIPSで「3Dゲームはなんとなく難しそう」と感じていた人でも、全16回の丁寧な解説で確実に完成まで到達できます。スマホ化対応で実機で動かせるため、作った達成感がひときわ大きい講座です。
「3Dゲームの仕組みを理解した次は、実際に自分で作ってみたい」という人の最初の一歩として最適です。
初心者でも3Dアクションがスマホ対応で完成する
ゼルダ風3Dアクションゲームで3D開発の第一歩を踏み出そう
→ ゼルダ風3Dアクションゲームの作り方講座を見てみる
3D開発の壁を一気に突破!スマホで動くオリジナルゲームを完成させよう!
まとめ

この記事では、Unityでマウス操作によるカメラ制御を実装する基本を解説しました。
重要なポイントをおさらいします。
- マウス操作によるカメラ制御の基本構造として、マウスの移動量を取得し、カメラの回転に反映する構造がある
- 基本構造と実装方法として、Input.GetAxisでマウスの移動量を取得し、transform.Rotateでカメラを回転させる
- 感度調整の方法として、mouseSensitivityの値を変更することで調整でき、用途に応じて適切な値を設定する
- 回転制限の実装として、Mathf.Clampを使用して上下の回転を制限し、用途に応じて適切な値を設定する
- つまずきやすいポイントとして、マウスの上下が逆になる、感度が高すぎる・低すぎる、回転制限が効かないなどのポイントがある
マウス操作によるカメラ制御は、基本的な実装方法を覚えれば実現できます。
感度や回転制限も、少し工夫すれば実装できますよ。
Unity入門の森で、FPSや3D操作の基礎理解としてUnity入門の森を案内する学習先として、カメラを含めたUnityの基礎を体系的に学べます。
あなたのペースで、少しずつ進めていけば大丈夫です。
あなたのオリジナルゲーム、今年こそ完成させませんか?
RPG・アクション・ホラー…Unityで本格ゲームを作りたい人のための学習サイトです。
実際に完成するゲームを題材に、
ソースコード・素材・プロジェクト一式をすべて公開。
仕事や学校の合間の1〜2時間でも、
「写経→改造」で自分のゲームまで作りきれる環境です。





コメント