前提・実現したいこと
3Ⅾ空間で敵が弾をプレイヤーに向かって撃ってくるいわゆる自機狙いみたいなものを作りたいです。
LookAtは使わないで作りたいです。
発生している問題・エラーメッセージ
エラーは吐いていませんがプレイヤーが弾よりも低いと弾がプレイヤーの方へ飛んで行ってくれません ベクトル計算?がよくわかっていなくてプレイヤーのポジションから弾のポジションを引き算してnomalizeすれば大丈夫だと思っていましたができなくて詰まってしまいました。
該当のソースコード
unity
1 public void ShotAttack() 2 { 3 Vector3 pos = ShotCreatePos.position; 4 5 GameObject ShotPrefabObj = (GameObject)ShotPrefabPath; 6 GameObject ShotPrefab = Instantiate(ShotPrefabObj, pos, Quaternion.identity, ShotManager); 7 8 Rigidbody rbShot = ShotPrefab.gameObject.GetComponent<Rigidbody>(); 9 10 heading = PlayerObj.transform.position - gameObject.transform.position; 11 heading = heading.normalized; 12 13 rbShot.AddForce(heading * 2f,ForceMode.Impulse); 14 }
試したこと
いろんなサイトを見て正常に飛ぶか試しましたがうまくできなかったです;;
補足情報(FW/ツールのバージョンなど)
ここにより詳細な情報を記載してください。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2021/11/04 05:08