/// <summary> /// Return value to make rigidebody move with constant speeds for positive and negative axis movemant in case of AddRelative() and ForceMode as Accelaration regarding User Input value(1|0|-1) /// </summary> public float GetVelocityForAcceleratonByControl(float directionFlag, SpaceObjectAxisVelocity velocities, float rigDrag) { float velocity = 0f; if (directionFlag > 0) velocity = velocities.Positive; if (directionFlag < 0) velocity = velocities.Negative; return directionFlag * (GetVelocityChange(velocity, rigDrag) / Time.fixedDeltaTime); }
public ShipDriveVelocities( SpaceObjectAxisVelocity backForthVelocities , SpaceObjectAxisVelocity horizStrafeVelocities , SpaceObjectAxisVelocity verticStrafeVelocities , SpaceObjectAxisVelocity horizTorqueVelocities , SpaceObjectAxisVelocity verticTorqueVelocities , SpaceObjectAxisVelocity rollTorqueVelocities ) { this.BackForthVelocities = backForthVelocities; this.HorizStrafeVelocities = horizStrafeVelocities; this.VerticStrafeVelocities = verticStrafeVelocities; this.HorizTorqueVelocities = horizTorqueVelocities; this.VerticTorqueVelocities = verticTorqueVelocities; this.RollTorqueVelocities = rollTorqueVelocities; }