Skip to content

Neon (for Vehicles)

Caner Karaca edited this page Oct 8, 2026 · 1 revision

Available from v3.0+

💡 Overview

Neon / Underglow adds high-definition, dynamic ground illumination beneath vehicles in GTA: San Andreas. The neon projection automatically adapts to any vehicle's 3D bounding box dimensions (width and length) and geometry without requiring any 3D model (DFF) editing.

Neon lights automatically synchronize with the vehicle's headlight status (including high-beam and fog light toggles), tilt naturally with motorcycle lean angles (CBike), and cleanly disable during critical edge cases (vehicle destruction, submerged in water, or flipped upside down).


🚀 Key Features

  • Zero DFF Modification: Works out-of-the-box on any vanilla or modded vehicle model purely via JSONC configuration.
  • Auto-Scaling Projection: Dynamically scales to match the exact collision width and length of any car, truck, or bike.
  • Dynamic Vehicle Color Sync ("vehicle" / "primary" / "secondary"): Automatically reflects the car's real-time paint colors, Pay 'n' Spray resprays, and ModelExtras Carcols variations.
  • Multi-Color Transitions: Automatically cycles across 2, 3, or 4 colors if the vehicle is multi-toned (e.g. two-tone classics, race stripes).
  • Rainbow Mode: Features continuous full-spectrum RGB cycling.
  • Smooth Fade vs. Instant Step: Switch between silky smooth color interpolation ("smooth": true) and instant discrete step color shifting ("smooth": false).
  • Motorcycle Lean Physics: Adapts rotation matrix during cornering and banking.
  • Distance Falloff: Seamlessly fades out with camera distance matching global light shadow range.

⚙️ JSONC Configuration

Configure neon underglow in your vehicle's .jsonc file located in ModelExtras/data/ (or any subfolder):

1. Minimal Shorthand Formats

You can enable neon with a single line using color keywords or hex codes:

{
  // Automatically cycle through all distinct vehicle paint colors
  "neon": "vehicle"
}
{
  // Follow vehicle's primary body paint color
  "neon": "primary"
}
{
  // Full-spectrum rainbow mode
  "neon": "rainbow"
}
{
  // Fixed custom hex color
  "neon": "#00E5FF"
}

2. Full Object Configuration

For advanced customization (speed, transition style, dimensions):

{
  "neon": {
    "color": "vehicle",     // Color mode or custom hex (see table below)
    "smooth": true,         // true: smooth color fade / breathe, false: instant discrete step
    "speed": 1.0,           // Color cycle speed multiplier (default: 1.0)
    "size": 1.0             // Uniform scale (float) or independent axes (see below)
  }
}

3. Custom Width & Length Sizing

You can optionally override or fine-tune the width ($X$) and length ($Y$) scale independently:

{
  "neon": {
    "color": "vehicle",
    "size": {
      "x": 1.05,            // Width multiplier (left-to-right)
      "y": 1.15             // Length multiplier (front-to-back)
    }
  }
}

🎨 Color Modes & Formats

Mode / Value Description
"vehicle" / "all" / "dual" Adaptive Vehicle Colors: If single-color, stays solid. If 2, 3, or 4 colors are present on the vehicle, smoothly cycles through all of them.
"primary" / "body" Locks to the vehicle's primary paint color (Slot 0).
"secondary" / "roof" Locks to the vehicle's secondary/roof/stripe color (Slot 1).
"tertiary" Locks to the vehicle's tertiary paint color (Slot 2).
"quaternary" Locks to the vehicle's quaternary paint color (Slot 3).
"rainbow" Cycles through full RGB rainbow spectrum.
"#RRGGBB" / "#RGB" Custom hex color code (e.g. "#FF007F", "#0FF").
"#RRGGBBAA" / "#RGBA" Custom hex color with custom alpha/intensity.
[255, 200, 0] RGB array format ([red, green, blue, (alpha)]).
{ "red": 255, "green": 0, "blue": 128 } RGB / RGBA object format.

💡 Activation & In-Game Behavior

  • Illumination: Neon lights turn on when:
    • Headlights are active (nighttime or low ambient light).
    • High beams are toggled on (Default key: G).
    • Fog lights are toggled on (Default key: J).
  • Deactivation Guards: Automatically turns off when:
    • Vehicle engine is off and headlights are deactivated.
    • Vehicle health reaches $0.0$ (destroyed/exploded).
    • Vehicle is flipped upside down (IsUpsideDown()).
    • Vehicle is submerged in water (bSubmergedInWater).

🛠️ INI Master Toggle

Ensure the feature is enabled in ModelExtras.ini:

[FEATURES]
Neon = 1

Clone this wiki locally