API ReferenceGE ExtensionsClient
Basic Lighting - Shadow Filter
Two-pass (horizontal + vertical) Gaussian blur filter for Basic Lighting projected shadows.
Two-pass (horizontal + vertical) Gaussian blur filter for Basic Lighting projected shadows.
Module Overview
| Property | Value |
|---|---|
| Source | lua/ge/client/lighting/basic/shadowFilter.lua |
| Returns | - (side-effect module) |
| Dependencies | PFX_DefaultStateBlock from client/postFx |
Scene Objects Created
Shaders
| Object | Type | Defines | Description |
|---|---|---|---|
BL_ShadowFilterShaderV | ShaderData | BLUR_DIR=float2(1.0,0.0) | Vertical blur pass |
BL_ShadowFilterShaderH | ShaderData | BLUR_DIR=float2(0.0,1.0) | Horizontal blur pass (inherits from V) |
State Block
| Object | Type | Description |
|---|---|---|
BL_ShadowFilterSB | GFXStateBlockData | Inherits PFX_DefaultStateBlock, alpha-only write, blend enabled |
PostEffect Chain
| Object | Type | Description |
|---|---|---|
BL_ShadowFilterPostFx | PostEffect | Vertical blur (parent), contains horizontal blur child |
PostEffect Chain Structure
BL_ShadowFilterPostFx (vertical blur)
└── child (horizontal blur)
shader: BL_ShadowFilterShaderH
texture: $inTex → target: $outTexThe parent clears target on draw (PFXTargetClear_OnDraw, color 0 0 0 0).
Notes
- This PostEffect is NOT meant to be manually enabled - it's used directly by
ProjectedShadowinternally. - Color write is disabled (RGB channels masked off) - only alpha channel is written.
- Both passes use
$inTex→$outTexping-pong pattern.
See Also
- client/lighting/basic/init - Basic Lighting manager
Advanced Lighting - Shaders
Defines all shader data, state blocks, and custom materials for the Advanced Lighting deferred rendering pipeline: vector lights (sun), point lights, spot lights, and particle point lights.
Advanced Lighting - Shadow Visualization
Provides a shader and custom material for visualizing shadow maps in the editor/debug views.