RCC Settings Deep Dive

RCC_Settings is the master configuration file for the entire RCC package. Almost every global tuning option lives in it. This document walks through every section, what each field does, and when you should change it.

The asset lives at:

Assets/RealisticCarControllerV4/Resources/RCC Assets/RCC_Settings.asset

You can open it from the Project window, or use the shortcut: Tools → BoneCracker Games → Realistic Car Controller → Edit RCC Settings.

Important — Runtime Cloning

Before you start editing, understand one critical behavior: in Play mode, RCC_Settings clones itself into a runtime copy. Changes you make to settings while playing (programmatically or in the Inspector) modify the clone, not the on-disk asset. When you exit Play mode, the clone is discarded.

This is intentional: it prevents your Play-mode experiments from accidentally being persisted to your project. If you want a change to stick, exit Play mode and re-apply it to the asset.

This was added in commit 8b2c8bc (fix for "RCC_Settings runtime changes persisting after exiting Play mode") — it's now an explicitly-supported behavior.

Section: General Settings

Behavior Selected Index

The default behavior preset for new scenes. 0 = first preset, 4 = fifth. See 10 — Behavior Presets.

You can switch this at runtime: RCC.SetBehavior(int).

Override Behavior

When on, the selected preset overrides per-vehicle settings. When off, each vehicle uses its own configured values. Default on.

If your game has many different vehicle types with different feels (a hatchback that should always feel sluggish vs a sports car that should feel nimble), turn this off.

Override FPS / Max FPS

When on, RCC caps the application's target frame rate to maxFPS. Default on, max 60.

Capping FPS is useful because:

For a high-end PC release, set max FPS to 144 or unlock it entirely by turning off the override.

Override Fixed TimeStep / Fixed Time Step

When on, RCC sets Time.fixedDeltaTime to the configured value. Default on, value 0.02 (50 Hz physics).

The default of 50 Hz is a good balance. For mobile, 25 Hz (0.04) is acceptable to save battery. For high-precision simulators, go to 100 Hz (0.01) at the cost of doubled physics work.

Max Angular Velocity

The rigidbody's maximum angular velocity in radians/second. Default 6.

This is what prevents a vehicle from spinning faster than physically reasonable on a collision. Lower values clamp tighter (less spinning); higher values allow extreme spin.

Use Shortcuts

When on, RCC enables editor keyboard shortcuts:

Off by default to avoid conflicts with other shortcuts. Turn on if you use these regularly.

Section: Behavior Types

The behaviorTypes[] array holds the available driving behavior presets. Each entry is a BehaviorType with fields covering:

See 10 — Behavior Presets for the full explanation of what each preset does.

To add a new preset, expand the array, add an element, and configure it. Switch to it at runtime via RCC.SetBehavior(newIndex).

Section: Vehicle Defaults

Use Fixed Wheel Colliders

When on, RCC overrides Unity WheelCollider defaults with values tuned for stable physics (higher mass per wheel collider, etc.). Default on.

Turn off only if you've manually tuned every wheel collider on every vehicle and don't want RCC overriding.

Lock And Unlock Cursor

When on, the cursor is locked during gameplay (cursor disappears, mouse motion is delta-mode) and unlocked when paused. Default on.

Turn off for games that always need a visible cursor (menus, point-and-click sub-games).

Auto Reset

When on, vehicles that end up upside down automatically flip back upright after a few seconds. Default on.

Turn off for games where flipping is part of the gameplay (destruction derbies, off-road exploration where you might want to call a tow truck).

Section: UI Settings

Units

The speed unit displayed on the dashboard:

Default KMH.

UI Type

Use Telemetry

When on, a telemetry overlay (real-time speed / RPM / gear / wheel slip / forces) appears during gameplay. Default off.

Mostly for debugging — keep off for shipping builds.

Section: Mobile Settings

Mobile Controller Enabled

The master switch for mobile input. When on, RCC reads input from the mobile UI instead of the Input System. See 18 — Mobile Setup.

Mobile Controller

The mobile steering style:

UI Button Sensitivity / UI Button Gravity

Tuning for the on-screen throttle / brake buttons. See 18 — Mobile Setup.

Gyro Sensitivity

Multiplier on gyroscope-based steering.

Section: Lights

Use Head/Brake/Reverse/Indicator/Other Lights As Vertex Lights

Toggles converting each light type from pixel to vertex lighting for performance. See 14 — Lights System.

Generally:

LensFlare URP

Reference to the lens flare asset used for headlights and other lights. RCC ships defaults for Built-in / URP / HDRP.

Section: Layers

Set Layers

When on, RCC auto-assigns custom physics layers to vehicle GameObjects on creation. Default on.

RCC Layer / WheelCollider Layer / Detachable Part Layer / Prop Layer

The layer names RCC assigns to:

These must match layer names in your project's Tags & Layers. RCC creates them on import; if you rename them in Unity's Tags & Layers, update the strings here to match.

Section: Physics Materials

Collider Material

The PhysicMaterial used on the main vehicle body. Affects how the body slides along walls or other vehicles.

The default has low friction (so a vehicle scraping a wall doesn't yank to a stop). You can swap in a custom material for game-specific behavior.

Section: Prefab References

RCC_Settings holds references to many prefabs that RCC instantiates at runtime:

Field Prefab
Contact Particles Sparks spawned at collision contact points.
Scratch Particles Particles spawned during scraping collisions.
Wheel Deflate Particles Particles when a wheel pops.
Exhaust Gas Smoke prefab for exhausts.
Skidmarks Manager The scene's skidmarks pool.
Head Lights / Brake Lights / Reverse Lights / Indicator Lights / Interior Lights Light component prefabs added when the "Add Lights" menu is used.
Mirrors Side mirror prefab.
RCC Main Camera The follow camera prefab.
Hood Camera The hood camera component prefab.
Cinematic Camera The cinematic camera.
RCC Canvas The HUD canvas prefab.
RCC Telemetry The telemetry overlay prefab.

Don't change these references unless you've created your own custom versions. The RCC menu items use these references to spawn instances.

Section: Particle Effects

Don't Use Any Particle Effects

When on, all particle effects are disabled — exhaust smoke, contact sparks, wheel dust, etc. Default off.

Turn on for performance on low-end mobile.

Don't Use Skidmarks

When on, skidmark rendering is disabled. Default off.

Turn on for low-end mobile or to remove visual clutter.

Section: Audio

Audio Mixer

The AudioMixerGroup that all RCC sounds route through. Use this to apply a single volume slider to all vehicle audio in your settings menu.

Shared Audio Clips

Several audio clips used globally:

Max Volumes

These cap how loud each category can get regardless of how the audio source's volume curve is configured.

Section: Render Pipeline

HDRP Volume Profile Prefab

A reference to an HDRP Volume Profile that ships with RCC. Used by the HDRP path of the Render Pipeline Converter to set up correct lighting volumes.

Default Decal Material / Default Neon Material

Materials used by the customization system for decals and neon underglow respectively.

Section: Editor State

The bottom of the asset has several foldX booleans (Fold General Settings, Fold Behavior Settings, etc.). These store which sections of the Inspector are folded open or closed. Don't worry about these — they're cosmetic editor state, not gameplay tuning.

Worked Examples

Example 1: Making a Mobile-Optimized Build

Override FPS = on, max 30 (saves battery)
Override Fixed Time Step = on, value 0.04 (25 Hz physics, halves physics work)
Mobile Controller Enabled = on
Mobile Controller = Touch Screen
Use Brake/Reverse/Indicator Lights As Vertex Lights = on
Don't Use Any Particle Effects = on
Don't Use Skidmarks = on

Example 2: Maxed-Out PC Simulator

Override FPS = off (let it run at monitor refresh rate)
Override Fixed Time Step = on, value 0.01 (100 Hz physics for crisp feel)
Behavior Selected Index = 0 (Realistic preset)
Override Behavior = on
Use Telemetry = on
Use Lens Flare = on for all lights

Example 3: Casual Arcade Racer

Behavior Selected Index = 4 (Arcade preset)
Auto Reset = on
Lock And Unlock Cursor = on
Mobile Controller Enabled = off (desktop)
Don't Use Skidmarks = off (visible skidmarks for fun)

Common Settings Issues

"My change didn't persist after exiting Play mode"

By design. Make the change outside Play mode (in Edit mode), or write it to the asset programmatically with EditorUtility.SetDirty().

"I added a behavior preset but it doesn't appear when I press a hotkey"

The hotkey is wired to call RCC.SetBehavior(int) with a fixed index. Update your hotkey wiring to pass the new index, or just call RCC.SetBehavior(N) from your UI.

"The layer names in RCC_Settings don't match my project's layers"

RCC creates the layers on import. If you've renamed them in your Tags & Layers, either rename back, or update the strings here to match.

"Mobile mode is enabled but no buttons appear"

You also need the RCC_Canvas (AIO).prefab in the scene. Mobile setting alone changes input source; the UI is separate.

Next Steps