Help us understand the problem. What is going on with this article?

Unityで再生しているアニメーションをスキップする方法

More than 5 years have passed since last update.

@yomogi_ft さんからおしえてもらった方法の備忘録

主に↓を使うとかの話
http://docs.unity3d.com/Documentation/ScriptReference/Animation.html

Unityで演出にAnimationを使っていてスキップする方法がぱっと見つからなかったので聞いてみたらススッと答えが返って来てコレが上手く動いてくれたのでシェア(掲載許可はもらいずみ)

なおMecanim のAnimatorだと使えないのでご注意。

SkipCurrentAnimation.cs
void SkipCurrentAnimation()
 {
  // 現在再生中のアニメーションクリップ名を取得
  // もっとよい方法があれば...
  var clipName = "";
  foreach(AnimationState state in this.animation) {
   if (this.animation.IsPlaying(state.name)) {
    clipName = state.name;
    break;
   }
  }

  //clipNameが現在の再生クリップと一致していればうまいこと動作する
  this.animation[clipName].time = this.animation.GetClip(clipName).length;
 }

超カンタンにできたのでもし同じ事やろうとして見つからなかった人は是非。
あとこの方法だとこういう問題あるよ!!とかあればだれか突っ込んくださいm(_ _)m

ではでは٩( 'ω' )و

enpel
unity-game-dev-guild
趣味・仕事問わずUnityでゲームを作っている開発者のみで構成されるオンラインコミュニティです。Unityでゲームを開発・運用するにあたって必要なあらゆる知見を共有することを目的とします。
https://unity-game-dev-guild.github.io/
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away