// Update is called once per frame void Update() { //QuPlaySimtools.QuSimtools_SendTelemetry( // Random.RandomRange(-180, 180), // Random.RandomRange(-180, 180), // Random.RandomRange(-180, 180), // Random.RandomRange(-180, 180), // Random.RandomRange(-180, 180), // Random.RandomRange(-180, 180), // Random.RandomRange(-180, 180), // Random.RandomRange(-180, 180), // Random.RandomRange(-180, 180)); Debug.Log(string.Format("Sending Telemetry data : {0} : {1} : {2}", sliderRoll.value, sliderPitch.value, sliderYaw.value)); QuPlaySimtools.QuSimtools_SendTelemetry( sliderRoll.value, sliderPitch.value, sliderYaw.value, 0f, 0f, 0f, Random.RandomRange(-180, 180), Random.RandomRange(-180, 180), Random.RandomRange(-180, 180)); }
// Update is called once per frame void Update() { QuPlaySimtools.QuSimtools_SendTelemetry( Random.RandomRange(-180, 180), Random.RandomRange(-180, 180), Random.RandomRange(-180, 180), Random.RandomRange(-180, 180), Random.RandomRange(-180, 180), Random.RandomRange(-180, 180), Random.RandomRange(-180, 180), Random.RandomRange(-180, 180), Random.RandomRange(-180, 180)); }
void FixedUpdate() { steeringWheel.transform.localEulerAngles = new Vector3(0, 0, Logitech.wheel * 270f); engineRPM *= .99f; engineRPM += Logitech.accel * engineConst; if (engineRPM < idleEngineRPM) { engineRPM = idleEngineRPM; } engine.pitch = 1f + engineRPM / 8000 * 2f; velocity = new Vector3(Car.velocity.x, 0, Car.velocity.z).magnitude * 3600 / 1000; acceleration = (velocity - lastVelocity) / Time.fixedDeltaTime; lastVelocity = velocity; angleVelocity = Car.angularVelocity.magnitude; angleAcceleration = (angleVelocity - lastAngleVelocity) / Time.fixedDeltaTime; lastAngleVelocity = angleVelocity; //Reverse float reverse = Logitech.reverse ? -1f : 1f; //GearChange(); Car.drag = gearConst[gear]; for (int i = 0; i < Wheels.Length; i++) { //Front Wheel if (i < 2) { Wheels[i].steerAngle = Logitech.wheel * steerConst; } //Rear Wheel if (i > 1) { if (Logitech.brake < 0.001f) { Wheels[i].motorTorque = Wheels[i].motorTorque * .995f + (engineRPM * .005f * reverse); //Wheels[i].motorTorque * .999f + } if (Logitech.brake > 0.001f) { Wheels[i].motorTorque -= Logitech.brake * reverse * brakeConst; if (Wheels[i].motorTorque * reverse < 0) { Wheels[i].motorTorque = 0f; } } //Debug.Log(Wheels[3].motorTorque); } //Brake //Wheels[i].brakeTorque = Logitech.brake * brakeConst; //Wheel graphics Vector3 pos; Quaternion quat; Wheels[i].GetWorldPose(out pos, out quat); WheelsGraphics[i].SetPositionAndRotation(pos, quat); //Debug.Log(Wheels[i].isGrounded); } roll = Car.transform.localEulerAngles.z * rollConst; pitch = Car.transform.localEulerAngles.x * pitchConst; sway = sway * .95f + (angleAcceleration * swayConst) * .05f; //surge = surge * .98f + (Logitech.accel -Logitech.brake)* 32767f *reverse * .02f; surge = surge * .95f + ((acceleration) * surgeConst) * .05f; //surge /= .95f; //surge += (Logitech.accel - Logitech.brake) * 327f; QuPlaySimtools.QuSimtools_SendTelemetry( roll, //roll -32767 ~ 32767 car body rot pitch, //pitch -32767 ~ 32767 car body rot 0, //heave 0, //yaw sway, //sway -32767 ~ 32767 accel surge, //surge -32767 ~ 32767 accel 0, //extra1 0, //extra2 0); //extra3 }
void FixedUpdate() { normalized_y_increase = map(transform.position.y - offset_start); QuPlaySimtools.QuSimtools_SendTelemetry(0, transform.position.y - offset_start, 0, 0, 0, 0, 0, 0, 0); }