The objective is to reduce the Point Light radius generated by the firing animation without removing the flash entirely (which is often restricted by anti-cheat) and to stabilize the frame-time spikes caused by dynamic lighting.
- Directory Path: Press
Win + R, type%LOCALAPPDATA%\Insurgency\Saved\Config\WindowsClient\, and hit Enter. - The Target: Open
Engine.iniwith a text editor. - The Procedure: Scroll to the bottom and ensure you have a
[SystemSettings]header. If it doesn’t exist, create it.
Optimized “Clear-Sights” Configuration Block
[SystemSettings]
r.MuzzleFlashQuality=1
r.PointLight.RadiusThreshold=2.0
r.Shadow.RadiusThreshold=0.03
r.BloomQuality=2
r.LenzFlare=0
r.DefaultFeature.LightShafts=0
r.ParticleLightQuality=0
r.LightMaxDrawDistanceScale=0.5
Configuration Breakdown & Technical Purpose
| Parameter | Recommended Value | Technical Purpose |
r.MuzzleFlashQuality | 1 | The Master Fix. Forces a simplified, less opaque flash sprite. |
r.PointLight.RadiusThreshold | 2.0 | Disables small, flickering lights from distant flashes to save CPU. |
r.BloomQuality | 2 | Reduces the “glow” around the flash that obscures the reticle. |
r.LenzFlare | 0 | Eliminates circular artifacts when firing toward light sources. |
r.ParticleLightQuality | 0 | Prevents the muzzle flash from casting dynamic shadows on your gun. |
HowTo: Engineering the Muzzle Visibility Pipeline
Follow these GameEngineer.net technical steps to reclaim your sight picture:
- The “Particle Light” Eradicator: The primary reason muzzle flashes blind you is the Dynamic Light they cast on the weapon’s receiver and optic. By setting
r.ParticleLightQuality=0, the flash still appears as a 2D effect, but it no longer “lights up” your screen, keeping your $Contrast\_Ratio$ stable during nighttime breaches. - Optic Clipping Fix: If you see the flash inside your red dot or 2x scope, it’s a Z-Buffer issue. In the in-game settings, ensure Scope Quality is set to High. Paradoxically, “Low” scope quality often causes the muzzle flash to render on top of the lens rather than in front of the barrel.
- Night Vision (NVG) Optimization: If you use NVGs, the muzzle flash bloom ($B_{flash}$) can be blinding. In your
Engine.ini, ensurer.BloomQualityis set to2. This maintains the tactical feel of the bloom without the “white-out” effect common in the default Unreal Engine 4 profile. - Hardware Acceleration (DX12): Ensure you are using
-dx12in your Steam Launch Options. DX12 handles the Command Buffer for particle effects more efficiently, which prevents the $1-2ms$ frame-time stutter that occurs exactly when you pull the trigger ($T_{trigger}$). - Suppressor Integration: For the ultimate visual fix, combine these
.initweaks with a Flash Hider or Suppressor in-game. Our settings will further reduce the “smoke puff” ($S_{puff}$) associated with these attachments, giving you the clearest possible view of your target.
Technical Explanation: Light Decay and Radius Thresholds
In Insurgency: Sandstorm, every muzzle flash is a “Point Light” with an intensity value ($I$).
$$Illumination = \frac{I}{Distance^2} + Global\_Ambient$$
By engineering the r.PointLight.RadiusThreshold to 2.0, you are telling the engine: “If this light source is too small or far away to contribute significantly to the scene, don’t render it.” This prevents the GPU from wasting cycles on hundreds of tiny light calculations during a firefight, which stabilizes your 1% Low FPS and keeps the muzzle flash from “bleeding” into adjacent pixels ($P_{adj}$).