Esempio n. 1
0
    void GetAxis()
    {
        // Get state of Controller with port number : 0
        rudder = s3DRudderManager.Instance.GetRudder(IndexRudder);
        if (UseCurve)
        {
            axis = rudder.GetAxisWithCurve(ModeAxis, curves);
        }
        else
        {
            axis = rudder.GetAxis(ModeAxis);
        }

        // Get the direction of Controller and multiply by deltatime and speed
        if (CanMove)
        {
            if (Move3D)
            {
                translation = Vector3.Scale(rudder.GetAxis3D(axis), SpeedTranslation * Time.deltaTime);
            }
            else
            {
                translation.x = axis.GetXAxis() * SpeedTranslation.x * Time.deltaTime;
                translation.z = axis.GetYAxis() * SpeedTranslation.z * Time.deltaTime;
            }
        }
        if (CanRotate)
        {
            rotation *= Quaternion.AngleAxis(axis.GetZRotation() * SpeedRotation * Time.deltaTime, Vector3.up);
        }
    }