RLS Studios
ProjectsPatreonCommunityDocsAbout
Join Patreon
BeamNG Modding Docs

Guides

Reference

server/commands - Camera & Input Commandsge_utils - Game Engine Utility Functionsmain.lua - GE Lua Entry Point & Game Loopmap.lua - Navigation Graph (AI Road Map)screenshot.lua - Screenshot Systemserver/server - Level Loading & Game ServerserverConnection - Client-Server Connection Manager`setSpawnpoint` - Default Spawn Point Persistence`simTimeAuthority` - Simulation Time & Bullet Time Control`spawn` - Vehicle Spawning & Safe Placement`suspensionFrequencyTester` - Suspension Natural Frequency Analysis
Client CanvasCaustics PostFXChromatic Lens PostFXClient CoreDepth of Field PostFXEdge AA PostFXPostFx Flash EffectPostFx Fog EffectsPostFx FXAA Anti-AliasingGamma PostFXPostFx Glow EffectShadow Maps InitClient LightingPostFx Light Ray EffectAdvanced Lighting - Light VisualizationPostFx Masked Screen BlurMotion Blur PostFXObjects Required for StartupClient Parse ArgsClient PostFX ManagerRender ManagerAdvanced Lighting - ShadersBasic Lighting - Shadow FilterAdvanced Lighting - Shadow VisualizationPostFx SMAA Anti-AliasingPostFx SSAO (Screen-Space Ambient Occlusion)PostFx Turbulence EffectPostFx Utilities

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 ExtensionsClient

PostFx Glow Effect

Multi-pass glow/bloom post-processing effect using Gaussian blur. Downsamples the glow buffer, applies vertical and horizontal blur passes, then composites back with additive blending.

Multi-pass glow/bloom post-processing effect using Gaussian blur. Downsamples the glow buffer, applies vertical and horizontal blur passes, then composites back with additive blending.


Overview

Declarative setup script (no M module). Registers a 4-stage glow pipeline:

  1. Downsample - Passthrough shader copies #glowbuffer at 50% scale
  2. Vertical Blur - Gaussian blur in Y direction
  3. Horizontal Blur - Gaussian blur in X direction
  4. Upsample & Combine - Additive blend back to $backBuffer

Scene Objects

ObjectTypeDescription
PFX_GlowBlurVertShaderShaderDataGaussian blur (vertical direction)
PFX_GlowBlurHorzShaderShaderDataGaussian blur (horizontal direction, inherits vert)
PFX_GlowCombineStateBlockGFXStateBlockDataAdditive blend (One + One), alpha test ≥ 1
GlowPostFxPostEffectRoot glow effect, enabled by default, priority 1

Pipeline

#glowbuffer → Downsample (50%) → Blur Y → Blur X → Additive Combine → $backBuffer

Shader Configuration

-- Vertical blur direction
pfxGlowBlurVertShader:setField("defines", 0, "BLUR_DIR=float2(0.0,1.0)")

-- Horizontal blur direction (inherits from vertical)
pfxGlowBlurHorzShader:setField("defines", 0, "BLUR_DIR=float2(1.0,0.0)")

Combine State Block

The final composite uses additive blending with alpha test:

pfxGlowCombineStateBlock.blendEnable = true
pfxGlowCombineStateBlock:setField("blendSrc", 0, "GFXBlendOne")
pfxGlowCombineStateBlock:setField("blendDest", 0, "GFXBlendOne")
pfxGlowCombineStateBlock.alphaTestEnable = true
pfxGlowCombineStateBlock.alphaTestRef = 1

Notes

  • Renders after GlowBin to process glow-tagged geometry
  • Reflection passes excluded (allowReflectPass = false)
  • The downsample to 50% reduces blur cost while maintaining visual quality
  • Child PostEffects are added via gammaPostFX:add() to form the chain

See Also

  • PostFx Light Ray - Volumetric light rays
  • PostFx SSAO - Screen-space ambient occlusion

Gamma PostFX

Gamma correction post-processing effect with color correction ramp support.

Shadow Maps Init

Registers the box-filter blur shader used for shadow map processing.

On this page

OverviewScene ObjectsPipelineShader ConfigurationCombine State BlockNotesSee Also