Raycastでの目標位置のずれ【UUJ】

■質問

TPSを作成していて、
敵とプレーヤーとの間に障害物がないか確認するために、敵からプレーヤーに向かってレイを飛ばしています。
プレーヤーの移動がゆっくりな時は問題ないのですが、横に移動したりすると上手くいきません。

敵キャラにアタッチしたコードは下記
front = target.position(プレーヤー) – transform.position(敵キャラ);
frontObjHit = Physics.Raycast (transform.position, front, out frontHit, 100);
下記コードで視覚的にも確認しています。
lineRenderer.SetPosition (0, transform.position);
lineRenderer.SetPosition (1, frontHit.point);
プレーヤーはメッシュコライダーなどはつけておらずCharacterControllerをつけて
SphereCastを使うべきでしょうか、それともPhysicsに関する問題なのでFixedUpdateが関係しているのでしょうか?

■回答

target.positionの位置と、プレーヤーの当たり判定を行うcolliderかrigidbodyの位置がずれていませんか?
よくある状態だと、target.posはキャラの中心足元にあるため、足を開いて歩いているとその位置には当たり判定がない、というものがあります。

Comments

comments

スポンサーリンク
336*280px
336*280px

フォローする

スポンサーリンク
336*280px