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 Turbulence Effect

Screen-space turbulence distortion post-processing effect. Applies a heat-haze or ripple distortion to the back buffer.

Screen-space turbulence distortion post-processing effect. Applies a heat-haze or ripple distortion to the back buffer.


Overview

Declarative setup script (no M module). Registers:

  • PFX_TurbulenceStateBlock - Z-disabled, linear clamp sampler
  • PFX_TurbulenceShader - Turbulence distortion pixel shader
  • TurbulenceFx - PostEffect (disabled by default, priority 0.5)

Scene Objects

ObjectTypeDefault EnabledPriorityDescription
TurbulenceFxPostEffectfalse0.5Screen turbulence distortion
PFX_TurbulenceStateBlockGFXStateBlockData--Z-test disabled, linear clamp sampler
PFX_TurbulenceShaderShaderData--Turbulence pixel shader

Configuration

-- Turbulence renders after glow objects but before other post effects
turbulenceFx:setField("renderTime", 0, "PFXAfterBin")
turbulenceFx:setField("renderBin", 0, "GlowBin")
turbulenceFx.renderPriority = 0.5  -- Renders after the glows themselves

Notes

  • Unlike most PostFx effects, this one allows reflection passes (allowReflectPass = true)
  • Renders after GlowBin with priority 0.5 (after glow at priority 1)
  • Z-buffer testing and writing are both disabled
  • Reads from $backBuffer
  • The effect is disabled by default and must be explicitly enabled

Usage Example

-- Enable turbulence effect (e.g., near heat sources)
local turbFx = scenetree.findObject("TurbulenceFx")
if turbFx then turbFx:enable() end

See Also

  • PostFx Glow - Glow/bloom (shares GlowBin)
  • PostFx Flash - Screen flash overlay

PostFx SSAO (Screen-Space Ambient Occlusion)

Dual-radius screen-space ambient occlusion effect. Provides small-radius detail occlusion and large-radius contact shadows with configurable quality levels.

PostFx Utilities

Utility module for loading and saving post-processing effect preset files via file dialogs.

On this page

OverviewScene ObjectsConfigurationNotesUsage ExampleSee Also