//----------------------------------------------
// Realistic Car Controller
//
// Copyright © 2014 - 2023 BoneCracker Games
// https://www.bonecrackergames.com
// Buğra Özdoğanlar
//
//----------------------------------------------
using UnityEngine;
using System.Collections;
using System.Collections.Generic;
///
/// Ground materials for variable ground physics.
///
[System.Serializable]
public class RCC_GroundMaterials : ScriptableObject {
#region singleton
private static RCC_GroundMaterials instance;
public static RCC_GroundMaterials Instance { get { if (instance == null) instance = Resources.Load("RCC Assets/RCC_GroundMaterials") as RCC_GroundMaterials; return instance; } }
#endregion
[System.Serializable]
public class GroundMaterialFrictions {
public PhysicMaterial groundMaterial; // Physic material.
public float forwardStiffness = 1f; // Forward stiffness.
public float sidewaysStiffness = 1f; // Sideways stiffness.
public float slip = .25f; // Target slip limit.
public float damp = 1f; // Damp force.
[Range(0f, 1f)] public float volume = 1f; // Volume of the ground sound.
public GameObject groundParticles; // Ground particles.
public AudioClip groundSound; // Ground audio clip.
public RCC_Skidmarks skidmark; // Skidmarks.
public bool deflate = false; // Deflate the wheel?
}
public GroundMaterialFrictions[] frictions; // Ground materials.
///
/// Terrain ground materials.
///
[System.Serializable]
public class TerrainFrictions {
public PhysicMaterial groundMaterial;
[System.Serializable]
public class SplatmapIndexes {
public int index = 0;
}
public SplatmapIndexes[] splatmapIndexes;
}
public TerrainFrictions[] terrainFrictions; // Terrain ground materials.
}