Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
31 commits
Select commit Hold shift + click to select a range
327a319
Create PlayerModule.md
karl-police Feb 27, 2026
95e5051
Rename PlayerModule.md to PlayerModule.md
karl-police Feb 27, 2026
4cb381e
Create index.md
karl-police Feb 27, 2026
a0fd0fa
Rename PlayerModule.md to playermodule.md
karl-police Feb 27, 2026
b8bb6a9
Update and rename content/en-us/roblox-scripts/playermodule.md to con…
karl-police Feb 27, 2026
9ccefb0
Update guides.yaml
karl-police Feb 27, 2026
d44e86e
Create placeholder.png
karl-police Feb 27, 2026
1e40975
Delete content/en-us/assets/roblox-scripts/placeholder.png
karl-police Feb 27, 2026
176b607
Update .gitattributes
karl-police Feb 27, 2026
290d4b8
Add files via upload
karl-police Feb 27, 2026
a0908a0
Update index.md
karl-police Feb 27, 2026
c0b83f4
Update index.md
karl-police Feb 27, 2026
b6075ff
Update index.md
karl-police Feb 27, 2026
de54506
Add files via upload
karl-police Feb 27, 2026
35246ab
Rename starterplayer_scripts.png to starterplayerscripts.png
karl-police Feb 27, 2026
aa42c4d
Add files via upload
karl-police Feb 27, 2026
a41bb68
Update index.md
karl-police Feb 27, 2026
c975cc4
Create CameraModule.md
karl-police Feb 27, 2026
b2fbdaa
Update CameraModule.md
karl-police Feb 27, 2026
db048cd
Update .gitattributes
karl-police Feb 27, 2026
beee4c7
Update CameraModule.md
karl-police Feb 27, 2026
09540f4
Update index.md
karl-police Feb 27, 2026
fc0a4b8
Update index.md
karl-police Feb 27, 2026
e860dbf
Update CameraModule.md
karl-police Feb 27, 2026
887df05
Update CameraModule.md
karl-police Feb 27, 2026
de1f38f
Update CameraModule.md
karl-police Feb 27, 2026
6fbdfa4
Update index.md
karl-police Feb 27, 2026
a7d1c84
Update index.md
karl-police Feb 27, 2026
d7b050b
Update CameraModule.md
karl-police Feb 28, 2026
6857223
Update CameraModule.md
karl-police Feb 28, 2026
dec4db1
Merge branch 'main' into roblox-scripts-docs
karl-police Mar 2, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
10 changes: 10 additions & 0 deletions content/common/navigation/engine/guides.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -582,6 +582,16 @@ navigation:
path: /cloud-services/extended-services
- title: Cross-server communication
path: /cloud-services/cross-server-messaging
- title: Roblox Standard Scripts
section:
- title: Overview
path: /roblox-scripts
- title: PlayerModule
section:
- title: Overview
path: /roblox-scripts/PlayerModule
- title: CameraModule
path: /roblox-scripts/PlayerModule/CameraModule
- title: Roblox for Unity developers
path: /unity
- title: Roblox for Unreal developers
Expand Down
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
29 changes: 29 additions & 0 deletions content/en-us/roblox-scripts/PlayerModule/CameraModule.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
---
title: CameraModule
description: Overview about the CameraModule
---

<i>This ModuleScript implements a singleton class to manage the selection, activation, and deactivation of the current camera controller, character occlusion controller, and transparency controller. This script binds to RenderStepped at Camera priority and calls the Update() methods on the active controller instances.</i>

<i>The camera controller ModuleScripts implement classes which are instantiated and activated as-needed, they are no longer all instantiated up front as they were in the previous generation of PlayerScripts.</i>

## cameraRenderUpdate

``cameraRenderUpdate`` is the RenderStep name used and bound with by the ``CameraModule`` with the priority ``Enum.RenderPriority.Camera.Value``, through Class.RunService:BindToRenderStep()|:BindToRenderStep().

For custom camera or other behavior, it is recommended to keep the **``Enum.RenderPriority``** in mind. The MicroProfiler can be used to debug which render steps are running in which order.

The order is important. For instance, if the ``CameraModule`` changes the ``Datatype.CFrame`` of the camera,
you want to ensure that anything that's meant to change the ``Datatype.CFrame`` again runs first, before reading the ``Datatype.CFrame``, if you're expecting a different your custom modified values.

``Class.RunService:BindToRenderStep()|:BindToRenderStep()`` runs before ``Class.RunService.RenderStep``.

## MouseLockController

### BoundKeys

By default, the ``MouseLockController`` will create a ``Class.StringValue`` named ``BoundKeys``, placed under the module. By default it is set to ``"LeftShift,RightShift"`` with comma-separated values. They're named based off `Enum.KeyCode` and the values can be overwritten to change the bindings that should be used to trigger Mouse Lock <i>(Shift-Lock)</i>.

### CursorImage

``CusorImage`` is a ``Class.StringValue`` that is placed under the module. The value by default contains ``rbxasset://textures/MouseLockedCursor.png`` and can be overwritten. It's not present until Mouse Lock is triggered for the first time, but any ``StringValue`` with the same name can be placed under the module to overwrite the image ahead.
13 changes: 13 additions & 0 deletions content/en-us/roblox-scripts/PlayerModule/index.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
---
title: Standard PlayerModule
description: Overview of the PlayerModule.
---

<i>The ``PlayerModule`` is initialized by ``PlayerScriptsLoader``.
``PlayerScriptsLoader`` is a script which requires and instantiates the ``PlayerModule`` singleton.</i>

``PlayerModule`` comes with two further modules, [``CameraModule``](./CameraModule.md) and ``ControlModule``.

## PlayerModule

This module requires and instantiates the camera and control modules, and provides getters for developers to access methods on these singletons without having to modify Roblox-supplied scripts.
14 changes: 14 additions & 0 deletions content/en-us/roblox-scripts/index.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
---
title: Roblox Standard Scripts
description: Overview of Roblox Standard Scripts
---

By default, Roblox creates default scripts that provide behavior for things such as the Camera and Character Controls.

<figure>
<img src="../assets/roblox-scripts/starterplayerscripts.png" width="200" alt="Showcase of some standard Roblox Scripts." />
</figure>

By starting a playtest <kbd>F5</kbd>, you can find the inserted scripts and copy them through the Explorer, and then stop the playtest and paste the scripts in, in order to optionally modify them, if preferred.

These standard scripts can be overwritten by placing an Instance with the same name, located at the same path.