Roblox 的內建相機提供了默認的 第三人稱 模式和可選的 第一人稱 模式,因此您不需要自己構建追隨相機。對於更自定義的場景,您可以調整 Camera 中的默認屬性,或完全替換它,例如肩過肩、等角和武器瞄準視圖。
基本設置
您可以直接在 Studio 的 StarterPlayer 物件中配置常見的相機設置。這些設置包括 縮放距離 以及各種 相機、遮擋 和 移動 模式。
在 資源管理器 窗口中,選擇 StarterPlayer 物件。

在 屬性 窗口中,向下滾動以找到 Camera 區段。您可以直接或通過腳本配置以下屬性。

縮放距離
CameraMaxZoomDistance 和 CameraMinZoomDistance 設置玩家可以根據其角色縮放相機的範圍。設置一個非常高的最大值,如 500,可以讓玩家將相機縮放得很遠。如果您想將相機鎖定在距離角色特定的距離並防止縮放,請將這兩個屬性設置為相同的值。
LocalScript - 相機縮放範圍local Players = game:GetService("Players")local player = Players.LocalPlayerplayer.CameraMaxZoomDistance = 25player.CameraMinZoomDistance = 50
相機模式
CameraMode 屬性設置相機的整體行為,有兩個選項:
| 設置 | 描述 |
|---|---|
| 經典 | 經典的 Roblox 第三人稱相機,可以縮放至第一人稱。允許玩家放大和縮小(除非鎖定縮放)並繞著他們的角色旋轉相機。 |
| 鎖定第一人稱 | 將相機鎖定在第一人稱模式下。在這種模式下,玩家角色的所有部件/元素對他們來說都是不可見的,除了裝備的 Tools。 |
遮擋模式
DevCameraOcclusionMode 屬性控制當玩家無法看到其角色(例如被 BasePart 遮擋時)時的相機行為。
| 設置 | 描述 |
|---|---|
| 縮放 | 如果玩家的角色移動到透明度低於 0.25 的物體後面,則相機會非常靠近角色進行縮放,以便能看到角色。一旦角色移動回可見位置,相機將恢復縮放。 |
| 隱形相機 | 如果玩家的角色移動到透明度低於 0.75 的物體後面,則相機保持不變,但該物體變為半透明,以便能看到角色。一旦角色移動回可見位置,該物體將恢復為正常不透明度。 |
移動模式
DevComputerCameraMovementMode(電腦)和 DevTouchCameraMovementMode(手機/平板)決定玩家如何移動相機。
| 設置 | 描述 |
|---|---|
| 用戶選擇 | 相機將根據玩家在體驗中的相機設置進行移動。 |
| 經典 | 相機保持在其 縮放距離,跟蹤玩家的角色隨著其在世界中移動。玩家還可以上下傾斜相機視圖,並繞著他們的角色旋轉。 |
| 跟隨 | 類似於 經典,但如果玩家的角色朝著與相機面朝方向不平行的任何方向移動,相機可能會稍微旋轉以面向該角色。 |
| 軌道 | 相機保持在固定的縮放距離,並隨著玩家的角色在世界中移動。玩家可以環繞角色旋轉相機,但不能將視圖上下傾斜。 |
| 相機切換 | 僅在電腦(不包括手機/平板)上通過 DevComputerCameraMovementMode 功能可用。當玩家單擊右鍵時,相機會在 經典 模式和“自由觀看”模式之間切換,移動滑鼠可以在世界中四處查看。 |
腳本控制相機
每個玩家 客戶端 擁有自己的 Camera 物件,位於本地的 Workspace 中,可以通過 Workspace.CurrentCamera 屬性訪問。您可以通過將其 CameraType 設置為 Scriptable 來重寫 Roblox 的默認相機腳本,然後通常通過以下屬性來控制相機。
| 屬性 | 描述 |
|---|---|
| Camera.CFrame | 相機的 CFrame。這是定位和定向 Scriptable 相機在體驗中最常用的屬性。 |
| Camera.FieldOfView | 可在螢幕上看到的可觀察 3D 空間的範圍,測量範圍為 1–120 度,方向由 Camera.FieldOfViewMode 定義。默認為 70。 |
| Camera.CameraType | 在各種相機行為之間切換,這些行為在 Enum.CameraType 中概述,其中一些模擬可選的 移動模式。將此設置為 Scriptable 使您可以完全控制相機。 |
| Camera.Focus | 相機正在看向的 3D 空間中的一點。如果您已將 Camera.CameraType 設置為 Scriptable,則應在每個幀更新此屬性,因為某些視覺效果的細節取決於它們距離焦點的遠近。 |