CameraSettingsの使い方【Vket Cloudのワールド設定機能一覧】

:::note info
本記事は、Vket Cloud Settings を使ってワールド設定を変更する【Vket Cloudのワールド設定機能一覧】の記事の一部です。

本記事に掲載されている情報はVketCloudSDK12.3.4のものです。
バージョンにより見た目や表示情報が変化する場合がございます。

VR法人HIKKYのorganization下のQiita/Zenn両方に投稿しております。
:::

# はじめに

Vket Cloud Settingsの子オブジェクトにある、**CameraSettings**を編集することで、ワールドでのカメラ挙動に関連する設定を行うことが可能です。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3763860/4c2088a7-33f0-b57b-4a45-e872f41752f2.png)


::: note info
**表示されない場合**

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3763860/c7775a17-a085-cb0a-2be8-aee55211c8f4.png)


CameraSettingsはAdvanced設定となります。
表示されない場合はVket Cloud Settingコンポーネントの設定モードを**Advanced**にすることで表示されます。
:::

本ページではCameraSettingsが持つWorld Camera Settingコンポーネントで行うことのできる設定機能の詳細について紹介します。

## CameraSettings

CameraSettingsオブジェクトの中には、World Camera Settingコンポーネントが入っています。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3763860/bc95f230-a2b0-1c58-2813-6fe0783d0762.png)

### スムーズ

有効化すると上下方向のカメラ追従がゆっくりになります。
そのため、ジャンプや坂道移動時に画面上のプレイヤーの位置が変動します。遠景が大きく動くことが無くなるため、3D酔いに弱い方に対し優しくなります。一方、高低差の激しいワールドではプレイヤーを見失いやすくなります。

初期設定では無効になっています。

![スクリーンショット 2024-06-11 101646.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3763860/cbabde95-f71e-b19f-c50d-865199d93b3c.png)
↑スムーズを有効にしたワールドでのジャンプ前後の画面比較。
プレイヤー位置は大きく動くが、遠景は全く動かない。


### 遠方オフセット / 近傍オフセット
TPSカメラの注視点を上下に調整する設定です。特に効果はありませんが、FarはNearの5倍の値を指定してください。

初期値は両方0です。

### カメラの移動可能半径

カメラモード時のカメラの移動範囲の半径(単位:UnityScale)の設定です。カメラを起動した地点を中心とする、指定した半径の球内をカメラは移動することができます。

- 大きくするほど遠くから撮影が可能になります。その分、カメラを移動させられる範囲が増えるので、想定していないアングルからの撮影も出来るようになります。

初期値は20です。

![スクリーンショット 2024-06-11 102655.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3763860/92b52e41-035d-c159-face-048e8f0031c7.png)


### レイキャストの最大距離

どれだけ離れたオブジェクトをクリックすることができるか(単位:UnityScale)の設定です。
高い場所にあるクリック判定を遠くからクリックしたい場合などに設定を変更します。

初期値は50です。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3763860/f69af642-8799-0c86-c2e1-b3136a2851b0.png)
↑公式ワールド「テクノカインド」より。通常の3倍の150に設定されているため、スポーン地点からワールド最奥の「クリックすると手元に缶が飛んでくるギミック」を動作させることができる

#### 値を変更することによるメリット / デメリット

- **大きくするメリット**: 遠くのクリック判定をクリックできるようになる
- **大きくするデメリット**: 意図しない操作で遠くのクリック判定が反応してしまう、クリック時の負荷が少しだけ重たくなる
 　
- **小さくするメリット**: カメラから近いクリック判定のみクリックできるようになる、クリック時の負荷が少しだけ軽くなる
- **小さくするデメリット**: 遠くのクリック判定がクリックできなくなる



### TPSの最大画角

三人称カメラの最大角の設定です。0のときプレイヤーは画面中央に表示され、大きくすると下に、小さくすると上に表示されます。

初期値は6です。

また、Vket CloudのMENU > 設定 > カメラのアイレベルにて、「低い」「普通」「高い」を選択することによりプレイ中の視点位置を変更することが可能です。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3763860/8bf2f674-0264-23e6-4880-f5c2c562ad9e.png)


![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3763860/213053f8-46bc-8d3a-d95d-bcf032e36400.png)
↑設定値を0にしたとき。プレイヤーが中央に表示されている


### TPSカメラの最大距離

三人称視点カメラをどこまでズームアウトすることができるかの設定です。大きくしてもカメラの初期位置は変わりません。

初期値は10です。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3763860/3fbfda04-973f-565d-571d-00906ef75343.png)
↑設定値を100にし、最大までズームアウトしたとき。
プレイヤーが立っている地形のScaleは(x,y,z) = (10,1,10)


### デフォルトTPSカメラ

デフォルトの三人称視点位置を調整します。「TPS左」ではプレイヤー位置が左寄り、「TPS右」ではプレイヤー位置が右寄りとなります。

初期値はプレイヤー位置が中央となる「TPS中」です。

また、Vket CloudのMENU > 設定 > カメラの三人称視点位置にて、「左寄り」「中央」「右寄り」を選択することによりプレイ中の視点位置を変更することが可能です。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3763860/8bf2f674-0264-23e6-4880-f5c2c562ad9e.png)

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3763860/30da3cd5-38f5-6fe5-a9b4-8da805db3fb8.png)
↑TPS左 設定時

## まとめ

カメラ設定は、ゲームのプレイ感や視覚的な体験に大きな影響を与えます。各設定を理解し、適切に調整することで、プレイヤーにとって最適な視点や視覚体験を提供できます。ぜひ、これらの設定を活用して、より良いカメラ操作を実現してください。

## Vket Cloud について
ブラウザからアクセスできる“Webメタバース”を作成するサービスです。 Vket Cloudで制作された空間は、アプリレスでWebブラウザから簡単にアクセスできるため、プラットフォームの制限の中で限られたユーザーにだけでなく、インターネットに存在するすべてのユーザーに対してオープンなコンテンツ・サービスを届けることが可能です。

https://cloud.vket.com/

**前：** [RenderingSettingsの使い方](<https://qiita.com/vket_chan/private/424f78cd3464cf86bbf8>)
**次：** [AvatarSettings・MyAvatarsSettingsの使い方](<https://qiita.com/vket_chan/private/8b80d224cad3b63c27e5>)