Roblox 的內置攝影機支持預設的 第三人稱 模式和可選的 第一人稱 模式,因此您不需要構建自己的下一個攝影機。對於更多自訂的情況,您可以在 Camera 調整預設屬性或完全替換它,如過肩、是ometric和武器瞄準視圖。
基本設定
您可以直接在 Studio 的 StarterPlayer 對物件中配置常見攝影機設定。這些設定包括縮放距離和各種相機、遮蔽和運動模式。
在 導航器 窗口中,選擇 新手玩家 對物件。
在 屬性 窗口中,向下捲動以找到 相機 部分。您可以直接配置以下屬性或通過腳指令碼配置。
縮放距離
一起,CameraMaxZoomDistance 和 CameraMinZoomDistance 設置玩家可以對相機進行縮放的範圍,與他們的玩家角色相關。設置非常高的最大值,例如 500,可讓玩家將相機放大到太空間中。如果您想將相機鎖定在特定距離以外的角色,並防止縮放,請將這兩個屬性設置為相同值。
本地腳本 - 相機縮放範圍
local Players = game:GetService("Players")local player = Players.LocalPlayerplayer.CameraMaxZoomDistance = 25player.CameraMinZoomDistance = 50
相機模式
CameraMode 屬性設置相機的整體行為在兩個選項之間:
設置 | 說明 |
---|---|
經典 | 可以縮放到第一人稱的經典 Roblox 第三人稱攝影機。允許玩家縮放 (除非縮放鎖定) 和旋轉相機,以便在角色周圍旋轉相機。 |
鎖定第一人稱 | 將相機鎖定為第一人稱模式。當使用此模式時,玩家角色的所有部分/元素對他們都隱形,除了配備的 Tools 。 |
遮蓋模式
屬性控制玩家無法看到他們的角色時,攝影機的行為,例如當它被 遮蓋時。
設置 | 說明 |
---|---|
縮放 | 如果玩家的角色移動到與 Transparency 小於 0.25 的物體後面,相機會縮放到角色非常接近,以便可以看到。一旦角色回到可視位置,相機就會縮小。 |
隱形相機 | 如果玩家的角色移動到與 Transparency 小於 0.75 的物體後面,相機將不動,但物體變得半透明,便能看到角色。一旦角色回到可見位置,物件就會回到正常的隱藏程度。 |
移動模式
玩家的 DevComputerCameraMovementMode (電腦) 和 DevTouchCameraMovementMode (手機/平板) 決定玩家如何移動相機。
設置 | 說明 |
---|---|
使用者選擇 | 相機會根據玩家在體驗中的攝影機設定來移動。 |
經典 | 相機保持在其 縮放距離 ,追蹤玩家的角色在世界各地移動時。玩家也可以將相機視圖向上或向下傾斜,並將其繞著角色進行軌道旋轉。 |
跟隨 | 與 經典 相似,但攝影機可能會稍微旋轉以面對玩家的角色,如果他們在任何方向上移動不平行於攝影機的方向。 |
軌道 | 相機保持在固定的縮放距離,並跟隨玩家的角色在世界上移動。玩家可以繞著相機轉到他們的角色周圍,但不能調整視角向上或向下。 |
相機切換 | 只能在電腦上(不是手機/平板)通過 DevComputerCameraMovementMode 使用功能。當玩家按下右鍵時,相機會切換到 經典 模式和一種 "免費查看" 模式,其中移動滑鼠看到世界各地。 |
腳本攝影機
每個玩家 客戶 有自己的 Camera 對象住在本地 Workspace 中,可通過 Workspace.CurrentCamera 屬性訪問。您可以通過設置其 CameraType 為 Scriptable 來覆蓋 Roblox 的預設攝影機腳本,然後,最常見的是通過以下屬性來控制攝影機。
屬性 | 說明 |
---|---|
Camera.CFrame | 相攝影機的 CFrame 。這是在體驗中定位和旋轉 Scriptable 相機最常使用的屬性。 |
Camera.FieldOfView | 在 Camera.FieldOfViewMode 定義的方向之間,可以在畫面上看到的可觀察 3D 空間的範圍,測量為 1–120 度。預設值為 70。 |
Camera.CameraType | 在 Enum.CameraType 中切換各種相機行為,其中一些模仿可選擇的 運動模式 。將它設為 Scriptable 可讓您完全控制相攝影機。 |
Camera.Focus | 相機正在查看的 3D 空間點。如果你設置了 Camera.CameraType 為 Scriptable,你應該每一個框架更新此屬性,因為某些視覺效果會根據它們與焦點的距離更加詳細。 |