RLS Studios
ProjectsPatreonCommunityDocsAbout
Join Patreon
BeamNG Modding Docs

Guides

Reference

Server CommandsGE UtilitiesGame Engine MainNavigation GraphScreenshot CaptureServerServer ConnectionSpawnpoint ManagerSimulation TimeVehicle SpawningSuspension Frequency Tester
Activity ManagerAudio Bank ManagerAudio Ribbon SystemBus Route ManagerCamera SystemCore Chat (IRC)Core CheckpointsCore Command HandlerCoupler Camera ModifierDevices (RGB Peripherals)Dynamic PropsEnvironmentFlowgraph ManagerForestFun StuffGame ContextGame StateGround Marker ArrowsGround MarkersHardware InfoHighscoresHotlappingInventoryJob SystemLap TimesLevelsLoad Map CommandMetricsMod ManagerMultiseatMultiseat CameraMulti SpawnOnlinePaths (Camera Paths)Quick Access (Radial Menu)Recovery PromptRemote ControllerReplayRepositoryRope Visual TestScheme Command ServerCore SnapshotCore SoundsCore TerrainTraffic SignalsTrailer RespawnVehicle Active PoolingVehicle Bridge (GE ↔ VLua Communication)Vehicle MirrorsVehicle PaintsCore VehiclesVehicle TriggersVersion UpdateWeather SystemWindows Console
Settings AudioSettings GraphicGraphics Quality GroupLighting QualityMesh QualitySettings RallySettings (Core)Shader QualityShadows QualityTexture Quality

UI

Resources

BeamNG Game Engine Lua Cheat SheetGE Developer RecipesMCP Server Setup

// RLS.STUDIOS=true

Premium Mods for BeamNG.drive. Career systems, custom vehicles, and immersive gameplay experiences.

Index

HomeProjectsPatreon

Socials

DiscordPatreon (RLS)Patreon (Vehicles)

© 2026 RLS Studios. All rights reserved.

Modding since 2024

API ReferenceGE Extensionscoresettings

Graphics Quality Group

Reusable class for applying named quality presets to groups of TorqueScript console variables.

Reusable class for applying named quality presets to groups of TorqueScript console variables.


Overview

core/settings/graphicsQualityGroup - A class factory (not an extension). Instantiated by graphic.lua to manage lighting, shadows, shaders, textures, and mesh quality groups. Each instance loads a quality-levels definition module and applies named presets.


Class Methods

MethodDescription
C:init(filename, groupName)Loads quality levels from the given module and sets group name
C:applyLevel(levelString)Applies the named preset (e.g. "High") to console variables
C:getCurrentLevel()Returns the quality-level table for the current level
C:getCurrentLevelId()Returns the current level name string
C:apply(qualityLevel)Sets each key/value pair via TorqueScriptLua.setVar; calls onApply if changes detected

Constructor

local GraphicsQualityGroup = require('core/settings/graphicsQualityGroup')
local group = GraphicsQualityGroup('core/settings/lightingQuality', 'Lighting Quality')

Returns a new instance bound to the quality-levels module.


Quality Level Module Format

Each module (e.g. lightingQuality.lua) exports:

local M = {}
M.qualityLevels = {
  Low  = { ["$pref::someVar"] = value, ... },
  High = { ["$pref::someVar"] = value, ... },
}
M.onApply = function()
  -- optional callback after vars change
end
return M

Usage Example

-- Apply "Ultra" lighting quality
lightingQualityGroup:applyLevel('Ultra')

-- Check current level
local id = lightingQualityGroup:getCurrentLevelId() -- e.g. "Ultra"

See Also

  • Lighting Quality - Lighting quality level definitions
  • Shadows Quality - Shadows quality level definitions
  • Shader Quality - Shader quality level definitions
  • Texture Quality - Texture quality level definitions
  • Mesh Quality - Mesh quality level definitions

Settings Graphic

Manages all graphics settings: display mode, resolution, refresh rate, GPU selection, quality presets, reflections, mirrors, post-processing effects, and more.

Lighting Quality

Defines lighting quality presets for the GraphicsQualityGroup system.

On this page

OverviewClass MethodsConstructorQuality Level Module FormatUsage ExampleSee Also