Skip to content

Gauges & Meters

Grinch_ edited this page Feb 7, 2026 · 12 revisions

🚗 General Instructions for All Gauges & Meters

✨ You can add as many gauges/meters as you want.

⚙️ Analog Gauges

  • Place the node at the pivot point where the needle should rotate.
  • Make sure the pivot is at the needle base, so rotation sweeps correctly from Empty → Full.
  • Align the needle in 3D space so it points at 0 value initially.
  • Scale the needle to match your dashboard: adjust length & thickness.
  • Multiple needles? Add numbers: x_gauge_fixed1, x_gauge_fixed2, …
  • Each needle needs its own pivot node.

💻 Digital Meters

  • Create a parent node with child nodes representing digits or states.
  • Position & scale digits so they fit perfectly on your display.
  • Name children sequentially: 0, 1, 2… and assign textures/materials.

📁 JSON Files

All configurations go here:

ModelExtras/data/<model_id_or_model_name>.jsonc

Example: ModelExtras/data/522.jsonc

🔧 Adapting Gauges to Your Model

  • Match dashboard layout: pivot points, rotation angles, needle/digit positions.
  • Check rotation direction: clockwise or counter-clockwise.
  • Keep naming consistent if you have multiple gauges.
  • Test in-game to ensure proper sweep & alignment.

📊 Analog Gauges

1️⃣ Fixed Gauge – x_gauge_fixed

  • Displays a fixed/random value.
  • Set the value in JSON: (ME will choose a random value without that range)
{
    "gauges": {
        "x_gauge_fixed1": {
            "minangle": 20,
            "maxangle": 70
        }
    }
}

Speed Gauge

2️⃣ Speed Gauge – x_sm

  • Displays vehicle speed.
  • Make sure needle rotates correctly according to your model’s scale.
{
    "gauges": {
        "x_sm2": {
            "maxspeed": 100.0,
            "maxrotation": 100.0,
            "kph": true
        }
    }
}

RPM Gauge

3️⃣ RPM Gauge – x_rpm

  • Displays engine RPM (estimated).
  • Align needle pivot with your RPM dial.
{
    "gauges": {
        "x_rpm3": {
            "maxrpm": 100.0,
            "maxrotation": 100.0
        }
     }
}

4️⃣ Turbo Gauge – x_tm

  • Displays turbo pressure (estimated).
  • Align the needle to match turbo gauge scale.
{
    "gauges": {
        "x_tm4": {
            "maxturbo": 100.0,
            "maxrotation": 100.0  
        }
     }
}

💻 Digital Meters

5️⃣ Gear Indicator – x_gearmeter

  • Shows current vehicle gear using textures.

Setup:

  1. Create a parent object x_gearmeter.
  2. Add child nodes for each gear.
  3. Name children sequentially: 0, 1, 2…
  4. Assign number textures.
  5. Position & scale to fit the dashboard.

Hierarchy Example:

x_gearmeter
├── 0 (Texture: "0") // Reverse Gear
├── 1 (Texture: "1")
├── 2 (Texture: "2")
├── 3 (Texture: "3")
├── 4 (Texture: "4")
├── 5 (Texture: "5")

6️⃣ Mileage Indicator / Odometer – x_odometer

  • Measures distance traveled, up to 6 digits (999999 max).

Setup for Analog Odometer:

  1. Add dummy node x_odometer.
  2. Add 6 cylinder-shaped objects (10 faces each) for digits.
  3. Position, scale, and rotate cylinders to match dashboard.
  4. Ensure digits are visible to the driver.

Hierarchy Example:

x_odometer
├── Cylinder_6 (10 faces)
├── Cylinder_5 (10 faces)
├── Cylinder_4 (10 faces)
├── Cylinder_3 (10 faces)
├── Cylinder_2 (10 faces)
├── Cylinder_1 (10 faces)

JSON Example:

{
    "gauges": {
        "x_odometer5": {
            "kph": true
        }
     }
}

Visual References:

7️⃣ Digital Clock – x_dclock

In-game hour & minute for the vehicle dashboard.

You need 10 models, one for each number from 0 to 9.

  • These models will represent the digits of your speedometer.
  • The order of the models matters — make sure they are arranged from 0 to 9.
  • The position of digits doesn't matter; it will be deleted during the game.

Digit1, Digit2 are the positions for the hour & Digit3, Digit4 are for the minute.

image

JSON Example:

{
    "clocks": {
        "x_dclock1": {
            "12hformat": true
        }
     }
}

Clone this wiki locally