public void Init(VehicleSetUpData vehicleSetUpData, AxleData axleData) { //m_vehicleInput = vehicleInput; //VehicleData m_maxBrakingTorque = vehicleSetUpData.MaxBrakingTorque; m_handBrakeTorque = vehicleSetUpData.HandBrakeTorque; m_maxEngineTorque = vehicleSetUpData.MaxEngineTorque; //WheelData m_maxWheelAngle = axleData.MaxSteerinAngle; m_collider = gameObject.AddComponent <WheelCollider>(); //Protperties m_collider.mass = axleData.WheelData.WheelMass; m_collider.radius = axleData.WheelData.WheelRadius; m_collider.wheelDampingRate = axleData.WheelData.WheelDampingRate; m_collider.suspensionDistance = axleData.WheelData.SuspensionDistance; m_collider.forceAppPointDistance = axleData.WheelData.ForceAppPointDistance; m_collider.center = axleData.WheelData.Center; //Spring JointSpring tempSpring = m_collider.suspensionSpring; tempSpring.spring = axleData.WheelData.Spring; tempSpring.damper = axleData.WheelData.Damper; tempSpring.targetPosition = axleData.WheelData.TargetPosition; m_collider.suspensionSpring = tempSpring; //forward WheelFrictionCurve forwardFriction = m_collider.forwardFriction; forwardFriction.extremumSlip = axleData.WheelData.ExtremiumSlipForward; forwardFriction.extremumValue = axleData.WheelData.ExtremiumValueForward; forwardFriction.asymptoteSlip = axleData.WheelData.AsymptoteSlipForward; forwardFriction.asymptoteValue = axleData.WheelData.AsymptoteValueForward; m_collider.forwardFriction = forwardFriction; //Sideways WheelFrictionCurve sidewaysFriction = m_collider.sidewaysFriction; sidewaysFriction.extremumSlip = axleData.WheelData.ExtremiumSlipSideways; sidewaysFriction.extremumValue = axleData.WheelData.ExtremiumValueSideways; sidewaysFriction.asymptoteSlip = axleData.WheelData.AsymptoteSlipSideways; sidewaysFriction.asymptoteValue = axleData.WheelData.AsymptoteValueSideways; m_collider.sidewaysFriction = sidewaysFriction; //VIEW m_model = Instantiate <GameObject>(axleData.WheelData.Model, Vector3.zero, Quaternion.identity, transform); m_model.transform.localScale = Vector3.one * axleData.WheelData.WheelRadius; UpdateModel(); }
public void Init(VehicleSetUpData setupData, VehicleInput vehicleInput, List <Axle> axles) { m_vehicleInput = vehicleInput; //m_maxWheelTorque = setupData.MaxEngineTorque; m_rigidBody = GetComponent <Rigidbody>(); //m_rigidBody.centerOfMass = setupData. //TODO null check, should also be a list m_front = axles[0]; m_rear = axles[1]; }
public void Init(VehicleSetUpData vehicleSetUpData, AxleData axleData, List <Wheel> wheels) { m_steeringEnabled = axleData.SteeringEnabled; m_brakingEnabled = axleData.BrakingEnabled; m_eBrakingEnabled = axleData.EBrakingEnabled; m_driveEnabled = axleData.DriveEnabled; m_wheels = wheels; //m_vehicleInput = vehicleInput; /*foreach (WheelData wheelData in axleData.Wheels) * { * wheelData.Init(vehicleSetUpData,wheelData); * }*/ }
public void Init(VehicleSetUpData setupData) { m_engine = GetComponent <Drive>(); }