示例#1
0
        /// <summary>
        /// Drive mechanism by velocity.
        /// </summary>
        /// <param name="velocity">Velocity of drive.</param>
        /// <param name="mode">Mode of drive.</param>
        /// <returns>Drive is unrestricted?</returns>
        protected override bool OnDrive(float velocity = 0, DriveMode mode = DriveMode.Ignore)
        {
            joint.position = transform.position;

            var angle = -VectorUtility.ProjectAngle(joint.forward, ZeroAxis, Axis);
            var euler = new Vector3(transform.localEulerAngles.x, transform.localEulerAngles.y, angle);

            transform.localRotation = Quaternion.Euler(euler);

            return(true);
        }