以下の内容はhttps://baba-s.hatenablog.com/entry/2022/09/16/090000より取得しました。


【Unity】DOTween の Rotate 系の拡張メソッドで X・Y・Z を個別指定できるようにする拡張メソッド

ソースコード

using DG.Tweening;
using DG.Tweening.Core;
using DG.Tweening.Plugins.Options;
using UnityEngine;

namespace Kogane
{
    public static class DOTweenRotateExtensionMethods
    {
        public static TweenerCore<Quaternion, Vector3, QuaternionOptions> DORotateX
        (
            this Transform self,
            float          endValue,
            float          duration,
            RotateMode     mode = RotateMode.Fast
        )
        {
            return self.DORotate
            (
                endValue: new Vector3( endValue, 0, 0 ),
                duration: duration,
                mode: mode
            );
        }

        public static TweenerCore<Quaternion, Vector3, QuaternionOptions> DORotateY
        (
            this Transform self,
            float          endValue,
            float          duration,
            RotateMode     mode = RotateMode.Fast
        )
        {
            return self.DORotate
            (
                endValue: new Vector3( 0, endValue, 0 ),
                duration: duration,
                mode: mode
            );
        }

        public static TweenerCore<Quaternion, Vector3, QuaternionOptions> DORotateZ
        (
            this Transform self,
            float          endValue,
            float          duration,
            RotateMode     mode = RotateMode.Fast
        )
        {
            return self.DORotate
            (
                endValue: new Vector3( 0, 0, endValue ),
                duration: duration,
                mode: mode
            );
        }

        public static TweenerCore<Quaternion, Vector3, QuaternionOptions> DOLocalRotateX
        (
            this Transform self,
            float          endValue,
            float          duration,
            RotateMode     mode = RotateMode.Fast
        )
        {
            return self.DOLocalRotate
            (
                endValue: new Vector3( endValue, 0, 0 ),
                duration: duration,
                mode: mode
            );
        }

        public static TweenerCore<Quaternion, Vector3, QuaternionOptions> DOLocalRotateY
        (
            this Transform self,
            float          endValue,
            float          duration,
            RotateMode     mode = RotateMode.Fast
        )
        {
            return self.DOLocalRotate
            (
                endValue: new Vector3( 0, endValue, 0 ),
                duration: duration,
                mode: mode
            );
        }

        public static TweenerCore<Quaternion, Vector3, QuaternionOptions> DOLocalRotateZ
        (
            this Transform self,
            float          endValue,
            float          duration,
            RotateMode     mode = RotateMode.Fast
        )
        {
            return self.DOLocalRotate
            (
                endValue: new Vector3( 0, 0, endValue ),
                duration: duration,
                mode: mode
            );
        }

        public static TweenerCore<Quaternion, Vector3, QuaternionOptions> DORotateX
        (
            this GameObject self,
            float           endValue,
            float           duration,
            RotateMode      mode = RotateMode.Fast
        )
        {
            return self.transform.DORotateX( endValue, duration, mode );
        }

        public static TweenerCore<Quaternion, Vector3, QuaternionOptions> DORotateY
        (
            this GameObject self,
            float           endValue,
            float           duration,
            RotateMode      mode = RotateMode.Fast
        )
        {
            return self.transform.DORotateY( endValue, duration, mode );
        }

        public static TweenerCore<Quaternion, Vector3, QuaternionOptions> DORotateZ
        (
            this GameObject self,
            float           endValue,
            float           duration,
            RotateMode      mode = RotateMode.Fast
        )
        {
            return self.transform.DORotateZ( endValue, duration, mode );
        }

        public static TweenerCore<Quaternion, Vector3, QuaternionOptions> DOLocalRotateX
        (
            this GameObject self,
            float           endValue,
            float           duration,
            RotateMode      mode = RotateMode.Fast
        )
        {
            return self.transform.DOLocalRotateX( endValue, duration, mode );
        }

        public static TweenerCore<Quaternion, Vector3, QuaternionOptions> DOLocalRotateY
        (
            this GameObject self,
            float           endValue,
            float           duration,
            RotateMode      mode = RotateMode.Fast
        )
        {
            return self.transform.DOLocalRotateY( endValue, duration, mode );
        }

        public static TweenerCore<Quaternion, Vector3, QuaternionOptions> DOLocalRotateZ
        (
            this GameObject self,
            float           endValue,
            float           duration,
            RotateMode      mode = RotateMode.Fast
        )
        {
            return self.transform.DOLocalRotateZ( endValue, duration, mode );
        }
    }
}



以上の内容はhttps://baba-s.hatenablog.com/entry/2022/09/16/090000より取得しました。
このページはhttp://font.textar.tv/のウェブフォントを使用してます

不具合報告/要望等はこちらへお願いします。
モバイルやる夫Viewer Ver0.14