万年素人からHackerへの道

万年素人がHackerになれるまで殴り書きするぜ。

今再生しているアニメーション名を取得 Unity C#

d.hatena.ne.jp

↑この記事のC#

”今、再生している”アニメーション名を取る

ただanimationで取れなくなったので、

docs.unity3d.com

Animation animation GetComponent<Animation>();

しておき、

 string GetCertainlyAnimationName ()
        {
        var bestWeight = -1.0;
        string playing = string.Empty;
        foreach (AnimationState s in animation)
        {
            if (s.enabled && s.weight > bestWeight)
                {
                playing = s.name;
                bestWeight = s.weight;
            }
        }

        return playing;
    }

「アニメーションが有効になってる」、かつ、「ウエイトが一番大きい」のが今再生しているアニメーションらしい。

全部のアニメーションを捜査してから決定・・。