質問: enemyMissile.GetComponent(); enemyMissileRb.AddForce(transform.forward * missileSpeed); Destroy(enemyMissile, 3.0f); } } } ``` すると、発射された敵弾は、ペラペラの紙がくるくると回るように飛んできてしまいました。 以下gif画像です。 ![イメージ説明](https://teratail-v2.storage.googleapis.com/uploads/contributed_images/13534d2dd996fa255c05e1c8393fb0e0.gif) そうではなく、一般的な2Dシューティングのように、弾が常に真上(カメラ)の方を向きながら飛んでくるようにしたいです。 もしくは、どうして回転してしまうのかの理由が知りたいです。 ・試したこと 弾を発生させているオブジェクトのColliderを消してみる 弾にアタッチされているRigidBodyのConstraintからFreeze Rotationにチェックを入れてみる 弾にビルボード機能を持たせてみる よろしければ解決方法を教えていただきたいです。 よろしくお願いいたします。
回答: 足りない情報から推測しますけど、多分弾が生成された瞬間に弾を発射しているものと衝突して回転が与えられているんでしょうね。 それで、弾自体は「球体」ではなくて「ペラペラの絵に立体の衝突判定を追加したオブジェクト」だから回転すると変な感じになるんでしょう。 弾にアタッチされた Rigidbody の Constraint で Rotation を全部制限して、それでもうまくいかないなら弾をビルボードにする(※)ととりあえず現状よりはましになるんじゃないかと思います。 だけど多分それができたとしてもまたいろいろとこうしたい(自分の理想と違う)が出てくると思うので、そうしたらまた問題を立てて質問したらいいと思います。 あとはこういう問題の場合は問題発生時の gif 動画くらいは欲しいですね。 (※)【Unity】ビルボードで常にカメラの方に向く木を作る