Settings and Configuration
Table of Contents
- Settings and Configuration
- Overview
- Behavior Presets
- What a Behavior Preset Controls
- Switching Behaviors at Runtime
- Per-Vehicle Behavior Override
- Global Physics Settings
- Auto-Reset
- Input Settings
- Display Settings
- Layer Configuration
- Resource Prefab References
- Camera Prefabs
- UI and System Prefabs
- Audio Clips
- Particle Prefabs
- Ground Materials
- Changeable Wheels
- Other Configuration Assets
- Next Steps
Overview
RCCP's global configuration is stored in RCCP_Settings, a ScriptableObject asset located at:
Assets/Realistic Car Controller Pro/Resources/RCCP_Settings.asset
This asset is loaded at runtime via Resources.Load and accessed as a singleton through RCCP_Settings.Instance.
Open it in the editor via Tools > BoneCracker Games > RCCP > RCCP Settings.
Behavior Presets
Behavior presets are the primary tuning mechanism in RCCP. Each preset defines a complete driving feel — from steering response to stability aid strengths to drift behavior. You can have multiple presets and switch between them at runtime.
What a Behavior Preset Controls
| Category | Parameters |
|---|---|
| Stability Aids | ABS, ESP, TCS, steering helper, traction helper, angular drag helper toggles and strengths |
| Drift System | Drift mode, angle limits, yaw torque, forward/sideways forces, min speed, friction settings, recovery |
| Steering | Steering curve (speed-based), sensitivity, counter-steering, min/max steering limits |
| Differential | Default differential type (Open, Limited, Locked, Direct) |
| Wheel Friction | Forward and sideways friction curves for front and rear tires (extremum/asymptote values) |
| Gearbox | Shift thresholds, shift delays, gear change timing |
| Other | Anti-roll bar minimums, angular drag values |
Switching Behaviors at Runtime
// By name
RCCP.SetBehavior("Drift");
RCCP.SetBehavior("Race");
// By index
RCCP.SetBehavior(0);
// Query
int index = RCCP.GetBehaviorIndexByName("Sport");
RCCP_Settings.BehaviorType behavior = RCCP.GetBehaviorByName("Normal");
Per-Vehicle Behavior Override
Individual vehicles can ignore the global behavior preset:
vehicle.ineffectiveBehavior = true; // Ignore global preset
vehicle.useCustomBehavior = true; // Use per-vehicle preset
vehicle.customBehaviorIndex = 2; // Which preset to use
Global Physics Settings
| Setting | Description |
|---|---|
multithreading | Enable async processing where supported |
useFixedWheelColliders | Physics optimization for wheel colliders |
overrideFPS / maxFPS | Limit maximum framerate (up to 120) |
overrideFixedTimeStep / fixedTimeStep | Override Unity's physics timestep |
Auto-Reset
| Setting | Description |
|---|---|
autoReset | Automatically flip the vehicle right-side-up if it rolls over |
This can also be toggled per-vehicle via the RCCP_AeroDynamics component.
Input Settings
| Setting | Description |
|---|---|
mobileControllerEnabled | Enable mobile on-screen controls |
mobileController | Mobile input mode: TouchScreen, Gyro, SteeringWheel, Joystick |
gyroSensitivity | Sensitivity of gyroscope steering |
autoSaveLoadInputRebind | Automatically save/load custom key bindings |
Display Settings
| Setting | Description |
|---|---|
useMPH | Display speed in miles per hour instead of km/h |
useTelemetry | Show telemetry overlay during play mode |
useInputDebugger | Show input visualization overlay |
Layer Configuration
RCCP uses specific physics layers for collision detection between vehicles, wheels, detachable parts, and world objects:
| Setting | Purpose |
|---|---|
RCCPLayer | Main vehicle body layer |
RCCPWheelColliderLayer | Wheel collider physics layer |
RCCPDetachablePartLayer | Detachable body parts (bumpers, doors) |
RCCPPropLayer | Scene props |
RCCPObstacleLayer | AI obstacles |
These layer names are configured in the settings asset and applied automatically at runtime.
Resource Prefab References
RCCP Settings holds references to all prefabs that get instantiated at runtime:
Camera Prefabs
| Setting | Prefab |
|---|---|
RCCPMainCamera | Main camera with RCCP_Camera |
RCCPHoodCamera | First-person camera mount |
RCCPWheelCamera | Wheel-level camera mount |
RCCPCinematicCamera | Cinematic path camera |
RCCPFixedCamera | Fixed trackside camera |
UI and System Prefabs
| Setting | Prefab |
|---|---|
RCCPCanvas | Main UI canvas |
RCCPTelemetry | Telemetry display |
skidmarksManager | Tire marks renderer |
exhaustGas | Exhaust gas particle |
wheelBlur | Wheel motion blur |
Audio Clips
The settings asset also references default audio clips for engine sounds (idle, low/mid/high RPM, starter), gear shift, turbo, NOS, brake squeal, wind noise, crash impact, exhaust flame, and horn.
Particle Prefabs
Contact particles, scratch particles, and wheel sparkle effects are referenced here.
Ground Materials
Surface friction and audio are configured in RCCP_GroundMaterials, another ScriptableObject loaded from Resources. It defines per-surface settings:
- Friction coefficients for each terrain/material type (asphalt, grass, gravel, sand, etc.)
- Audio clips for tire-on-surface sounds
- Particle effects for surface contact (dust on dirt, spray on water, etc.)
Access via Tools > BoneCracker Games > RCCP > Ground Physics.
Changeable Wheels
RCCP_ChangableWheels defines the registry of available wheel models for the customization system. Each entry includes the wheel mesh, material, and sizing data.
Access via Tools > BoneCracker Games > RCCP > Wheel Configurations.
Other Configuration Assets
| Asset | Purpose |
|---|---|
RCCP_Records | Saved recording/replay clips |
RCCP_DemoVehicles | Demo vehicle prefab registry |
RCCP_DemoScenes | Demo scene references |
RCCP_CustomizationSetups | Preset customization loadouts |
Next Steps
- 13_API.md — Complete scripting API
- 11_SceneManagement.md — Vehicle spawning and management