Class
RenderSettings
NotCreatableServiceNotReplicatedNotBrowsable
A singleton settings class that exposes rendering configuration for graphics quality, framerate management, and debug visualization in Roblox Studio.
RenderSettings is a singleton class which lets developers debug components
of Roblox's graphics engine. It can be found in Roblox Studio's settings under
the Rendering tab.
Properties 15#
AutoFRMLevelint | Sets the starting quality level of the framerate manager.Read: PluginSecurityWrite: PluginSecurityReadSafe |
EagerBulkExecutionboolean | Whether all scene updates will be given an unlimited budget, regardless of how computationally expensive it may be.Read: PluginSecurityWrite: PluginSecurityReadSafe |
EditQualityLevelQualityLevel | Sets the graphics quality level in Roblox Studio.Read: PluginSecurityWrite: PluginSecurityReadSafe |
Enable VR Modeboolean | Toggles whether virtual reality (VR) mode is enabled.Read: PluginSecurityWrite: PluginSecurityReadSafe |
EnableFRMboolean | Toggles the enabled state of the framerate manager.Read: PluginSecurityWrite: PluginSecurityReadSafeHiddenNotReplicated |
ExportMergeByMaterialboolean | Sets whether materials should be generated per part, or per unique appearance in Roblox's exporter.Read: PluginSecurityWrite: PluginSecurityReadSafe |
FrameRateManagerFramerateManagerMode | Specifies the behavior of the framerate manager.Read: PluginSecurityWrite: PluginSecurityReadSafe |
GraphicsModeGraphicsMode | The graphics API that Roblox will use on startup.Read: PluginSecurityWrite: PluginSecurityReadSafe |
MeshCacheSizeint | The size in bytes of the mesh cache.Read: PluginSecurityWrite: PluginSecurityReadSafe |
MeshPartDetailLevelMeshPartDetailLevel | Studio only. Used to visually verify the quality of
MeshParts at lower level of detail at close range.Read: PluginSecurityWrite: PluginSecurityReadSafe |
QualityLevelQualityLevel | Controls the quality level in Roblox Studio.Read: PluginSecurityWrite: PluginSecurityReadSafe |
ReloadAssetsboolean | Whether Roblox Studio will automatically reload changes that are made to
files in Roblox's content folder.Read: PluginSecurityWrite: PluginSecurityReadSafe |
RenderCSGTrianglesDebugboolean | Whether a wireframe of polygons will be shown on all PartOperation
objects.Read: PluginSecurityWrite: PluginSecurityReadSafe |
ShowBoundingBoxesboolean | Whether bounding boxes are rendered around each individual rendered entity in the scene.Read: PluginSecurityWrite: PluginSecurityReadSafe |
ViewModeViewMode | Studio only. Selects a debug rendering visualization overlay for the viewport.Read: PluginSecurityWrite: PluginSecurityReadSafe |
AutoFRMLevel: int#
Read: PluginSecurityWrite: PluginSecurityReadSafe
Sets the starting quality level of the framerate manager when
EnableFRM is set to true.
EagerBulkExecution: boolean#
Read: PluginSecurityWrite: PluginSecurityReadSafe
When set to true, all scene updates will be given an unlimited budget,
regardless of how computationally expensive it may be. This ensures each
frame will look as it should, at the cost of a more unstable frame rate.
EditQualityLevel: QualityLevel#
Read: PluginSecurityWrite: PluginSecurityReadSafe
Sets the graphics quality level in Roblox Studio when
EnableFRM is set to false.
Enable VR Mode: boolean#
Read: PluginSecurityWrite: PluginSecurityReadSafe
When set to true, virtual reality (VR) mode is enabled. This property
reflects the same underlying setting as
UserGameSettings.VREnabled, so reading or writing it reads or
writes that shared value. Defaults to false.
EnableFRM: boolean#
HiddenNotReplicatedRead: PluginSecurityWrite: PluginSecurityReadSafe
When set to true, the framerate manager (FRM) dynamically adjusts the
rendering quality level during gameplay to maintain a stable framerate.
When set to false, the quality level is fixed at
RenderSettings.EditQualityLevel and no automatic adjustment
occurs. Defaults to true.
The AutoFRMLevel property reports the
current quality level that the FRM has assigned when this property is
enabled.
ExportMergeByMaterial: boolean#
Read: PluginSecurityWrite: PluginSecurityReadSafe
Controls how materials are written during .obj export from Studio. When
set to true, parts that share the same material appearance are merged
into shared material definitions in the exported .obj file, reducing
material count. When set to false, each part receives its own
independent material definition. Defaults to false.
FrameRateManager: FramerateManagerMode#
Read: PluginSecurityWrite: PluginSecurityReadSafe
Determines how the framerate manager (FRM) manages rendering quality using
a FramerateManagerMode value. When set to
FramerateManagerMode.Automatic, the engine decides whether to
enable FRM quality adjustment based on context (typically enabled during
gameplay). When set to FramerateManagerMode.On, the FRM is always
active. When set to FramerateManagerMode.Off, the FRM does not
adjust quality and block culling is forced to the lowest-quality distance
setting. Defaults to FramerateManagerMode.Automatic.
GraphicsMode: GraphicsMode#
Read: PluginSecurityWrite: PluginSecurityReadSafe
Determines which graphics rendering API Roblox uses on startup, specified
as a GraphicsMode value. When set to GraphicsMode.Automatic,
the engine selects the best available backend for the current platform.
Available options are platform-dependent; for example,
GraphicsMode.Metal is only available on macOS and
GraphicsMode.Direct3D11 is only available on Windows. If an
unsupported mode is selected, the engine silently falls back to
GraphicsMode.Automatic. Defaults to GraphicsMode.Automatic.
Because the graphics API is initialized at startup, changing this property only takes effect after restarting Roblox Studio.
MeshCacheSize: int#
Read: PluginSecurityWrite: PluginSecurityReadSafe
The size in bytes of the mesh cache. Defaults to 32 MiB.
MeshPartDetailLevel: MeshPartDetailLevel#
Read: PluginSecurityWrite: PluginSecurityReadSafe
Determines the mode for the selection of detail levels for mesh parts. For
a good balance between performance and fidelity, this should be set to
MeshPartDetailLevel.DistanceBased (default), which is what the
client uses.
Note that the MeshPart.RenderFidelity needs to be set to
RenderFidelity.Automatic for this to work. If you set it to
RenderFidelity.Precise, you will always see the higher resolution
version and the MeshPartDetailLevel value will be ignored for that
MeshPart.
QualityLevel: QualityLevel#
Read: PluginSecurityWrite: PluginSecurityReadSafe
If EnableFRM is set to true, this
property controls the quality level in Roblox Studio.
ReloadAssets: boolean#
Read: PluginSecurityWrite: PluginSecurityReadSafe
When set to true, Roblox Studio will automatically reload changes that
are made to files in Roblox's content folder.
RenderCSGTrianglesDebug: boolean#
Read: PluginSecurityWrite: PluginSecurityReadSafe
When set to true, a wireframe of polygons will be shown on all
PartOperation objects.
ShowBoundingBoxes: boolean#
Read: PluginSecurityWrite: PluginSecurityReadSafe
If set to true, renders bounding boxes around each individual rendered
entity in the scene.
ViewMode: ViewMode#
Read: PluginSecurityWrite: PluginSecurityReadSafe
Studio only. Determines which debug rendering visualization is drawn over
the viewport, using a value of ViewMode. Defaults to
ViewMode.None, which disables the overlay. Other values enable
overdraw visualizations for geometry complexity, transparency, or decals.
Methods 1#
| GetMaxQualityLevel | Returns the maximum quality level.PluginSecurity security |
GetMaxQualityLevel(): int#
PluginSecurity security
Returns the total number of quality levels available in the rendering
quality system. Quality levels are numbered from
QualityLevel.Automatic (0) through QualityLevel.Level21
(21), so this method returns 22. Use GetMaxQualityLevel() - 1 to obtain
the highest numeric quality level.
Returns
int— The total number of quality levels available in the rendering system.
Inherited members#
Inherited from Instance 58
Properties (10)
Archivable, archivable, Capabilities, IsInSandbox, Name, Parent, PredictionMode, RobloxLocked, Sandboxed, UniqueId
Methods (39)
AddTag, children, ClearAllChildren, Clone, clone, Destroy, destroy, FindFirstAncestor, FindFirstAncestorOfClass, FindFirstAncestorWhichIsA, FindFirstChild, findFirstChild, FindFirstChildOfClass, FindFirstChildWhichIsA, FindFirstDescendant, GetActor, GetAttribute, GetAttributeChangedSignal, GetAttributes, GetChildren, getChildren, GetDebugId, GetDescendants, GetFullName, GetStyled, GetStyledPropertyChangedSignal, GetTags, HasTag, IsAncestorOf, IsDescendantOf, isDescendantOf, IsPropertyModified, QueryDescendants, Remove, remove, RemoveTag, ResetPropertyToDefault, SetAttribute, WaitForChild