Roblox Lighting & Atmosphere
When to Load
Load for Roblox lighting, atmosphere, day/night, or post-processing (Bloom, ColorCorrection, DepthOfField).
Quick Reference
Lighting Service
Lighting.ClockTime = 14 -- 0-24 numeric
Lighting.Brightness = 2 -- 0-10, default 2
Lighting.Ambient = Color3.fromRGB(70, 70, 70) -- shadow fill
Lighting.OutdoorAmbient = Color3.fromRGB(128, 128, 128)
Lighting.GlobalShadows = true
Lighting.ShadowSoftness = 0.2 -- 0=sharp, 1=soft
-- Configure tech/style/quality in Studio; these properties are not script-writable.
-- Verify enum values and device behavior against current Creator Hub docs before setting them.
Atmosphere
local atmo = Instance.new("Atmosphere")
atmo.Density = 0.3 -- 0=clear, 1=opaque (keep <0.5)
atmo.Offset = 0.25 -- 0=ground, 1=sky
atmo.Color = Color3.fromRGB(199, 199, 199) -- near fog
atmo.Decay = Color3.fromRGB(92, 92, 92) -- far/horizon
atmo.Glare = 0 -- 0-10
atmo.Haze = 0 -- 0-10
atmo.Parent = Lighting
Post-Processing (all parented to Lighting)
| Effect |
Key Properties |
BloomEffect |
Intensity (0-1), Size (px), Threshold (>0.7 recommended) |
ColorCorrectionEffect |
Brightness, Contrast, Saturation (-1 to 1), TintColor |
DepthOfFieldEffect |
FarIntensity, FocusDistance, InFocusRadius, NearIntensity |
SunRaysEffect |
Intensity (0-1), Spread (0-1) |
Day/Night Cycle
local CYCLE_SPEED = 1 -- minutes per full day
task.spawn(function()
while true do
Lighting.ClockTime += (task.wait() / 60) * (24 / CYCLE_SPEED)
if Lighting.ClockTime >= 24 then Lighting.ClockTime -= 24 end
end
end)
Local Lights
| Light |
Use |
Key Props |
PointLight |
Lamps, torches |
Range, Brightness, Color |
SpotLight |
Flashlights |
Range, Angle, Face |
SurfaceLight |
Screens, panels |
Range, Angle, Face |
Perf: Limit shadow-casting lights to 4-6 visible. Use Shadows=false on most. Neon material = cheap glow.
MCP: Inspect, change minimally, capture, check performance.
Common Pitfalls
- Brightness >3 washes out. Density >0.5 = soup. Max 2-3 post effects.
- Avoid black Ambient. Technology is deprecated; it and its replacements are Studio-only.
References
- Mood presets (Day, Golden Hour, Night, Horror, Underwater, Sci-Fi), zone tweens, full examples:
references/full.md
1---2name: roblox-lighting3description: "Use for Roblox lighting, atmosphere, day/night, or post-processing effects."4last_reviewed: 2026-07-265sources:6 - https://raw.githubusercontent.com/Roblox/creator-docs/main/content/en-us/environment/lighting.md7 - https://raw.githubusercontent.com/Roblox/creator-docs/main/content/en-us/environment/atmosphere.md8 - https://raw.githubusercontent.com/Roblox/creator-docs/main/content/en-us/environment/post-processing-effects.md9---1011# Roblox Lighting & Atmosphere1213## When to Load1415Load for Roblox lighting, atmosphere, day/night, or post-processing (Bloom, ColorCorrection, DepthOfField).1617## Quick Reference1819### Lighting Service20```luau21Lighting.ClockTime = 14 -- 0-24 numeric22Lighting.Brightness = 2 -- 0-10, default 223Lighting.Ambient = Color3.fromRGB(70, 70, 70) -- shadow fill24Lighting.OutdoorAmbient = Color3.fromRGB(128, 128, 128)25Lighting.GlobalShadows = true26Lighting.ShadowSoftness = 0.2 -- 0=sharp, 1=soft27-- Configure tech/style/quality in Studio; these properties are not script-writable.28-- Verify enum values and device behavior against current Creator Hub docs before setting them.29```3031### Atmosphere32```luau33local atmo = Instance.new("Atmosphere")34atmo.Density = 0.3 -- 0=clear, 1=opaque (keep <0.5)35atmo.Offset = 0.25 -- 0=ground, 1=sky36atmo.Color = Color3.fromRGB(199, 199, 199) -- near fog37atmo.Decay = Color3.fromRGB(92, 92, 92) -- far/horizon38atmo.Glare = 0 -- 0-1039atmo.Haze = 0 -- 0-1040atmo.Parent = Lighting41```4243### Post-Processing (all parented to Lighting)44| Effect | Key Properties |45|--------|---------------|46| `BloomEffect` | Intensity (0-1), Size (px), Threshold (>0.7 recommended) |47| `ColorCorrectionEffect` | Brightness, Contrast, Saturation (-1 to 1), TintColor |48| `DepthOfFieldEffect` | FarIntensity, FocusDistance, InFocusRadius, NearIntensity |49| `SunRaysEffect` | Intensity (0-1), Spread (0-1) |5051### Day/Night Cycle52```luau53local CYCLE_SPEED = 1 -- minutes per full day54task.spawn(function()55 while true do56 Lighting.ClockTime += (task.wait() / 60) * (24 / CYCLE_SPEED)57 if Lighting.ClockTime >= 24 then Lighting.ClockTime -= 24 end58 end59end)60```6162### Local Lights63| Light | Use | Key Props |64|-------|-----|-----------|65| `PointLight` | Lamps, torches | Range, Brightness, Color |66| `SpotLight` | Flashlights | Range, Angle, Face |67| `SurfaceLight` | Screens, panels | Range, Angle, Face |6869**Perf:** Limit shadow-casting lights to 4-6 visible. Use `Shadows=false` on most. Neon material = cheap glow.7071**MCP:** Inspect, change minimally, capture, check performance.7273### Common Pitfalls74- Brightness >3 washes out. Density >0.5 = soup. Max 2-3 post effects.75- Avoid black Ambient. Technology is deprecated; it and its replacements are Studio-only.7677### References78- Mood presets (Day, Golden Hour, Night, Horror, Underwater, Sci-Fi), zone tweens, full examples: `references/full.md`