AIプログラムとかUnityゲーム開発について

探索や学習などを活用したAI系ゲームを作りたいと思います。

右手に銃を持たせる

f:id:yasu9780:20161009185257p:plain

 右手のボーンのtransformを取得し、読み込んだライフル銃を子供として配置。
 銃の向きを回転させて、位置を右手で持っているように見える位置に微調整。
 といったプロセスで銃を持たせてみました。
 違うキャラモデルだと微妙に位置が変わるので、キャラごとに微調整が入りますね。
 ただ、3Dソフトで右手に持たせて保存するって方向は面倒なので、コードでできるだけやりたいです。
 銃の変更もあるし。
 このへんはもっと何かいい方法があるのかな?

Transform RHand = anim.GetBoneTransform(HumanBodyBones.RightHand);
GameObject Gun = Instantiate((GameObject)Resources.Load("CQAssaultRifle"), Vector3.zero, Quaternion.identity) as GameObject;
Gun.transform.localScale *= 1.8f;
Gun.transform.SetParent(RHand);
Gun.transform.position = RHand.position;
Gun.transform.rotation = Quaternion.Euler(new Vector3(30f, 90f, 90f));

if(no==1)
    Gun.transform.localPosition = new Vector3(0.05f, -0.066f, -0.088f); // HalfUp
else if(no==2)
    Gun.transform.localPosition = new Vector3( 0f, 0.1f,0.1f); // Alicia


 もうちょい銃をでかくした。剣もやってみますかねえ。
f:id:yasu9780:20161009212133p:plain