###前提・実現したいこと
Unityで、animatorを使ってアニメーションの遷移を行っています。
アニメーションは、モーションキャプチャーで収録しており、アニメーション自身位置情報を持っています。
アニメーション(アニメーション名:Moving)を何も手を加えずに動かした場合、A点(0.2480868f, -0.8502287f,-0.5622884f)の点に動きます。
しかし、今回はその点ではなく、アニメーションさせながら、B点(0.04f, -0.8502287f, -0.31f)に動かしたいのですが、うまくB点へ移動させることができません。
何か、良い方法があればお教え願いたいです。
###発生している問題・エラーメッセージ
(a,b,ratio)=(1.679446E-05,1.094708,1.53415E-05)
###該当のソースコード
if (stateInfo.nameHash == Animator.StringToHash ("Base Layer.Moving")) {
if (isMoving == true) { isMoving = false; mode = 1; Vector3 p0 = pos1; Vector3 p1 = new Vector3 (0.2480868f, -0.8502287f,-0.5622884f); Vector3 cp = GameObject.Find ("Ren").transform.position; float a = Vector3.Distance (p0, cp); float b = Vector3.Distance (p0, p1); float ratio = a / b; Vector3 p2 = new Vector3 (0.04f, -0.8502287f, -0.31f); Vector3 targetPos = p0 + (p2 - p0) * ratio; GameObject.Find ("Ren").transform.position = targetPos; if (ratio == 1) { mode = 2; pos1 = p2; } Debug.Log ("(a,b,ratio)=(" + a + "," + b + "," + ratio + ")"); } }
###試したこと
iTweenなど様々移動を行うことのできるものは試してみたのですが、うまく移動させることができませんでした。
###補足情報(言語/FW/ツール等のバージョンなど)
C#,Unity5.3.5p
あなたの回答
tips
プレビュー