私の投稿を確認していただきありがとうございます。私は戦闘機のスタンスのためのミックスアイドルアイドル状態を持っているステージ上の2つの文字を持っています。ユニティアニメーションAxis LookAt Slerp。アイドルアニメーションが正しく表示されない
vuforiaで定義されたターゲットに文字を向き合わせて配置し、Slerpローテーションを使用して各文字を互いに向き合わせました。私が持っている問題は、アイドルアニメーションが始動すると直ちに、両方とも左に約45度に面していることです。私はアニメーションを見てどこでも回転を見ることができないので、私はそれが軸かもしれないと思っています。私はこの問題を示すために2つのスクリーンショットを以下に追加しました。
左の文字は、ゲームオブジェクトが実際に右の文字に直面していることを示す足の間に白い線があります。アニメーターを見ると、アイドルアニメーションが正しくループしていて、ルック・ローテーションの周りのキャラクターを動かしても、まだオフセットされています。
私はmixamoアニメーションをコピーして読み取り専用属性を削除し、修正できるかどうかを確認しました。私はちょうどどこでも回転を見ることができません。私は親の変換に文字を埋め込み、変換を喜びなく回転させようとしました。
私は再生モードに入り、アニメーションパネルを見ました。面白い何かが起こった。スクラバーを1フレーム動かすと、キャラクターは正しい向きの位置にジャンプしました。
下の図はこれを示しています。
は、突然の位置は、それが再生モードで再生しながらアニメーションを停止していても、上のスポットでした。これは私に、モデルの問題ではなく軸の問題だと思っていました。 私は各プレイヤーにスクリプトを添付しています。ここに更新方法があります。
void Update(){
if (!anim.GetCurrentAnimatorStateInfo(0).IsName("knocked_out")){
transform.position = new Vector3(transform.position.x,0,transform.position.z);
}
if (anim.GetCurrentAnimatorStateInfo(0).IsName("fight_idle")){
Vector3 direction = enemy.position - this.transform.position;
direction.y = 0;
this.transform.rotation = Quaternion.Slerp(this.transform.rotation, Quaternion.LookRotation(direction),0.1f);
}
if(Input.GetKeyUp(KeyCode.Space)){
reaction();
}
if(Input.GetKeyUp(KeyCode.K)){
flyingKick();
}
if(DefaultTrackableEventHandler.lostFound == true){
anim.SetBool("started", true);
GameObject theClone = GameObject.Find("UserDefinedTarget-1/Holder");
theClone.transform.localPosition = new Vector3(0,0,0);
}
}
それは少し狂気私を送っていますし、私はより多くのそれを壊すの時点でよ、私も別のアイドルアニメーションを試してみましたが、何かがオフに持つように同じ結果を持っていました。
これは、プレイモードに入る前の戦闘機のオリジナルの変形位置で、問題の原因を明らかにした場合に表示されます。
そして、ここでのアニメーションコントローラです。
私は子供がそれぞれの文字に変換を追加し、それをターゲットにしようとしましたが、文字が接近している時に子供がZ軸上相殺される必要がある、彼らはお互いに直面していません。
私はよく似たような質問をオンラインで見たことがありますが、ほとんどの場合、カメラを見たり、キャラクターを常に見てオブジェクトを取得したりしています。私はお互いに向かうためにこれらの人が必要です。彼らは、アニメーションなしで行います。私は喜んでもルートアニメーションのオン/オフを試してみました。
ヘルプありがとうございます。