2016-12-17 4 views
3

さてさて、私は、クリップそれがトリガされ(オフセット)毎回の別の位置からC#でのユニティで私のアニメーションコントローラからの私のアニメーションクリップを開始しようとしていますが、イムはサイクルが(はっきり)作品を相殺する方法を理解していないと私クリップはとにかく最初から始まるようです。ユニティ・オフセット・サイクルは常に最初から始まりますか?

私はキャラクターが動いているかどうかによってブールがオフになりますが、キャラクターが交互になるようにしようとしている歩行サイクルです(フルウォークサイクルをプレイしますが、キャラクターが動いているときにのみ演奏されるために演奏されます)。それ以外の場合は、アイブ氏はこれを実行しようとしたどのような奇妙な

に見えることは、これまで彼らは移動時間が浮くフロートと増加を持っている、と私のアニメーションのサイクルオフセットにそのフロートを割り当てることです。そうすることで、次回アニメーションがトリガーされたときに、そのアニメーションが中断した場所から開始されます。

オフセットた場合、私はわからないよ、時間、フレーム、またはパーセンテージを意味し、私はちょうど今のところ、これをやった:

if (animOffset >= 1f) { //was full clip 
      animOffset = 0.0f; 
     } 

     //anim help 
     currentPos = transform.position; 

     if (currentPos != lastPos) { 
      //print ("moving now"); 
      animator.SetBool ("isWalking", true); 
      if (InputManager.stepCount % 2 != 0) { 
       print ("moving right"); 
       animator.SetFloat ("walkOffset",animOffset); 

      } else { 
       print ("moving left"); 
       animator.SetFloat ("walkOffset",animOffset); 

      } 
      animOffset += 0.1f; 
     } else { 
      animator.SetBool ("isWalking", false); 
     } 
     lastPos = currentPos; 

問題は、イムは、所望の効果を取得し、アニメーションコントローラ、それを見ていませんクリップは、常に最初から行くようで、次を参照してください。

enter image description here

小さな青いバーが常に最初から開始します。私はここで間違って何をしていますか?正確な実行サイクル・オフセットを作るにはどうすればよいですか?

+0

(0..1.0)それは割合を指し、「オフセットた場合、私はわからないよ、時間、フレーム、またはパーセンテージを指し、」 – Bijan

答えて

関連する問題