Robloxの組み込みカメラは、デフォルトの三人称モードとオプションの一人称モードを提供しているため、自分で追従カメラを作成する必要はありません。よりカスタマイズされたシナリオでは、Cameraのデフォルトプロパティを調整するか、肩越し、等角、武器スコープビューなどのために完全に置き換えることができます。
基本設定
一般的なカメラ設定は、StudioのStarterPlayerオブジェクト内で直接構成できます。これらの設定には、ズーム距離やさまざまなカメラ、遮蔽、および移動モードが含まれます。
Explorerウィンドウで、StarterPlayerオブジェクトを選択します。

Propertiesウィンドウで、下にスクロールしてCameraセクションを見つけます。以下のプロパティを直接またはスクリプトを通じて構成できます。

ズーム距離
CameraMaxZoomDistanceとCameraMinZoomDistanceを組み合わせることで、プレイヤーがキャラクターに対してカメラをズームできる範囲を設定します。500のような非常に高い最大値を設定すると、プレイヤーはカメラを遠くにズームアウトできます。キャラクターから特定の距離にカメラを固定し、ズームを防ぎたい場合は、これらのプロパティを同じ値に設定します。
local Players = game:GetService("Players")
local player = Players.LocalPlayer
player.CameraMaxZoomDistance = 25
player.CameraMinZoomDistance = 50カメラモード
CameraModeプロパティは、カメラの全体的な動作を2つのオプションの間で設定します。
| 設定 | 説明 |
|---|---|
| クラシック | 一人称にズームできるクラシックなRoblox三人称カメラ。プレイヤーはズームインおよびズームアウト(ズームがロックされていない場合)でき、キャラクターの周りでカメラを回転させることができます。 |
| LockFirstPerson | カメラを一人称モードにロックします。このモードでは、装備されたToolsを除いて、プレイヤーのキャラクターのすべての部分/要素が見えなくなります。 |
遮蔽モード
DevCameraOcclusionModeプロパティは、プレイヤーがキャラクターを見ることができないときのカメラの動作を制御します。たとえば、BasePartによって隠されている場合です。
| 設定 | 説明 |
|---|---|
| ズーム | プレイヤーのキャラクターがTransparencyが0.25未満のオブジェクトの後ろに移動すると、カメラはキャラクターに非常に近づきます。キャラクターが視認可能な位置に戻ると、カメラは再びズームアウトします。 |
| Invisicam | プレイヤーのキャラクターがTransparencyが0.75未満のオブジェクトの後ろに移動すると、カメラは動かず、オブジェクトが半透明になり、キャラクターが見えるようになります。キャラクターが視認可能な位置に戻ると、オブジェクトは通常の不透明度に戻ります。 |
移動モード
DevComputerCameraMovementMode(コンピュータ)とDevTouchCameraMovementMode(電話/タブレット)は、プレイヤーがカメラをどのように移動できるかを決定します。
| 設定 | 説明 |
|---|---|
| UserChoice | カメラはプレイヤーのゲーム内カメラ設定に基づいて移動します。 |
| クラシック | カメラはそのズーム距離に留まり、プレイヤーのキャラクターを追跡します。プレイヤーはカメラの視点を上下に傾けたり、キャラクターの周りを回転させたりできます。 |
| フォロー | クラシックに似ていますが、カメラはプレイヤーのキャラクターがカメラの向きと平行でない方向に移動している場合、わずかに回転してキャラクターを向くことがあります。 |
| オービタル | カメラは固定されたズーム距離を保ち、プレイヤーのキャラクターを追跡します。プレイヤーはカメラをキャラクターの周りで回転させることができますが、視点を上下に傾けることはできません。 |
| CameraToggle | コンピュータ(電話/タブレットではない)でのみ機能し、DevComputerCameraMovementModeを通じて動作します。プレイヤーが右クリックすると、カメラはクラシックモードと「フリー ルック」モードの間で切り替わります。このモードでは、マウスを動かすことで世界を見回すことができます。 |
カメラをスクリプト化する
各プレイヤーのクライアントには、ローカルWorkspaceに存在する独自のCameraオブジェクトがあります。これはWorkspace.CurrentCameraプロパティを通じてアクセスできます。CameraTypeをScriptableに設定することで、Robloxのデフォルトカメラスクリプトをオーバーライドできます。その後、最も一般的には以下のプロパティを通じてカメラを制御します。
| プロパティ | 説明 |
|---|---|
| Camera.CFrame | カメラのCFrame。これは、ゲーム内でScriptableカメラを配置および向きを設定するために最も頻繁に使用されるプロパティです。 |
| Camera.FieldOfView | 画面上で見ることができる観測可能な3D空間の範囲で、Camera.FieldOfViewModeで定義された方向に対して1〜120度の間で測定されます。デフォルトは70です。 |
| Camera.CameraType | Enum.CameraTypeで概説されたさまざまなカメラ動作の間で切り替えます。これをScriptableに設定すると、カメラを完全に制御できます。 |
| Camera.Focus | カメラが見ている3D空間のポイント。Camera.CameraTypeをScriptableに設定した場合、このプロパティは毎フレーム更新する必要があります。なぜなら、特定のビジュアルは焦点に近いほど詳細になるからです。 |