うなじの弾丸の予想軌道を計算する簡単な方法はありますか? このパスのようなものを構築する必要があります。ビリヤードゲームのように。私のゲームには重力がありません。
1 に答える
静止した長方形から始めます。弾丸がどちらの端に当たるかを判断できると思います。水平エッジ (一定の Y) に当たる場合は、軌道の Y 成分を逆にします。垂直エッジ (定数 X) に当たる場合は、速度の X 成分を逆にします。
円の場合、円の中心から衝突点までの光線を見つけてから、その光線に平行な速度の成分を逆にする必要があります (ベクトルに平行なベクトルの成分を見つける方法を知っていますか?指定されたベクトル?)。
オブジェクトが動くことができ、弾丸の速度がオブジェクトの速度よりもはるかに速い場合、必要なのはオブジェクトの瞬間的な位置だけです。弾丸に関する限り、オブジェクトは静止しています。
オブジェクトが弾丸の速度に匹敵する速度で移動している場合、オブジェクトのフレームに出入りするには、単純な座標変換を実行できなければなりません。たとえば、オブジェクトの速度が (2,3) で弾丸の速度が (-5, 9) の場合、オブジェクトのフレーム内ではオブジェクトは静止しており、弾丸の速度は (-7, 6) です。次に、このフレーム (オブジェクトが静止している場所) での衝突を計算してから、元に戻すことができます。たとえば、オブジェクトが長方形で、弾丸がその下端に当たった場合、弾丸の速度は (-7, -6) になり、これをワールド フレーム (-5, -3) に変換します。