コード例 #1
0
ファイル: DroneMove.cs プロジェクト: feofeona/DroneSim
 void MovemenForward()
 {
     if (Input.GetAxis("Vertical") != 0)
     {
         Tor = (1f / (2 * Mathf.PI)) * _constval.GetC_Pow() * _constval.GetAirDensity()
               * Mathf.Pow(rotationAmount, 2) * Mathf.Pow(_constval.GetPropellerDiameter(), 5) * Input.GetAxis("FlyUp");
         _rigidbody.AddRelativeForce(Vector3.forward * upForce * Mathf.Abs(Mathf.Sin(_rigidbody.rotation.eulerAngles.x * Mathf.PI / 180))
                                     * Input.GetAxis("Vertical"));
         _rigidbody.AddRelativeTorque(Vector3.forward * Tor);
         if (Input.GetAxis("Vertical") > 0)
         {
             tiltAmountForward = Mathf.SmoothDamp(tiltAmountForward, tiltAmount, ref tiltVelocityForward, 1f);
         }
         else if (Input.GetAxis("Vertical") < 0)
         {
             tiltAmountForward = Mathf.SmoothDamp(tiltAmountForward, -tiltAmount, ref tiltVelocityForward, 1f);
         }
     }
 }
コード例 #2
0
 void valueInitialize()
 {
     _Acceleration          = 0;
     oldXRotation           = transform.rotation.eulerAngles.x;
     oldYRotation           = transform.rotation.eulerAngles.y;
     oldZRotation           = transform.rotation.eulerAngles.z;
     _gravity               = _constval.GetGravity();
     propellerDiameter      = _constval.GetPropellerDiameter();
     propellerVelocity      = _constval.GetAngularVelocity();
     maxRPM                 = _constval.GetMaxRPM();
     airDensity             = _constval.GetAirDensity();
     thrustCoefficient      = _constval.GetC_T();
     powerCoefficient       = _constval.GetC_Pow();
     linearDragCoefficient  = _constval.GetClin();
     AngularDragCoefficient = _constval.GetC_AngularDrag();
 }