概要
2012/5/7 に、タッチジェスチャ識別用のアセット
「Easy Touch 5 : Touchscreen & Virtual Controls」がリリースされました
「Easy Touch 5 : Touchscreen & Virtual Controls」を使用すると、
スマホゲームでタッチジェスチャを識別できるようになるので
↓のような 3D ゲームのカメラ操作を実装できるようになります
今回はこの Easy Touch を使用してカメラを操作するスクリプトを紹介します
検証環境
- Unity 5.6.2f1
- Easy Touch 5 : Touchscreen & Virtual Controls 5.0.17
使い方
まず、こちらの GitHub に公開されている TouchManager.cs を Unity プロジェクトに追加します

そして、シーンの階層を下記のようにします

| オブジェクト | 内容 |
|---|---|
| CameraAxis | カメラの軸となるオブジェクト カメラの Y 座標を設定します |
| Main Camera | カメラ本体 カメラの Z 座標を設定します |
| TouchManager | TouchManager.cs をアタッチしたオブジェクト カメラの操作に関するパラメータを設定します |
CameraAxis はカメラの Y 座標を下記のように設定します

Main Camera はカメラの Z 座標を次のように設定します
必要であれば Y 軸方向の回転角も 180° 回転させておきます

TouchManager には TouchManager.cs と EasyTouch.cs をアタッチします

あとは、TouchManager.cs の各種パラメータを変更してカメラの操作性を設定します
| 項目 | 内容 |
|---|---|
| Camera Axis | CameraAxis オブジェクトを設定 |
| Camera | Main Camera オブジェクトを設定 |
| Move Speed | カメラの移動速度 |
| Rotate Speed | カメラの回転速度 |
| Zoom Speed | カメラのズーム速度 |
| Min Pos X | カメラを移動できる X 座標の最小値 |
| Max Pos X | カメラを移動できる X 座標の最大値 |
| Min Pos Y | カメラを移動できる Y 座標の最小値 |
| Max Pos Y | カメラを移動できる Y 座標の最大値 |
| Min Field Of View | カメラをズームできる視野角の最小値 |
| Max Field Of View | カメラをズームできる視野角の最大値 |
| Min Rotate X | カメラを回転できる上方向の限界値 |
| Max Rotate X | カメラを回転できる下方向の限界値 |
| Mouse Speed | マウスでカメラを回転する時の速度 |
| Wheel Speed | マウスでカメラを拡大する時の速度 |
Unity エディタ上で動作確認する時は下記のように操作します
| 項目 | 操作方法 |
|---|---|
| 回転 | ドラッグ |
| 移動 | Ctrl キーを押しながらドラッグ |
| ズーム | Alt キーを押しながらドラッグ |
以上で Easy Touch 5 を用いたカメラ操作を Unity に組み込み完了です
まとめ
Easy Touch 5 を使用すると 1 つのスクリプトで簡単にカメラ操作が実装できます
今回はジェスチャー機能を使用したカメラ操作を紹介させていただきましたが
Easy Touch 5 は他にもジョイスティックの機能などが入っています
興味がある方は購入してみて頂ければと思います
