問題タブ [collision]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
algorithm - 球体 - 球体衝突検出 -> 反応
2 つの球体が衝突したときと、衝突後すぐにどの方向に進むかを検出するアルゴリズムを作成する必要があります。
たとえば、ビリヤードの試合でテーブルを開いたときに、すべてのボールが「ランダムに」互いに衝突していると想像してください。
そのため、自分でコードを書き始める前に、これが既に実装されているかどうかを考えていました。
事前にthx!
Cyas.-
formula - 立方体を解いて、ある点に最も近い曲線上の点を見つけます
Ok、
次のように位置が定義されている発射体があります。
この発射体が環境内のどの障害物と衝突するかを予測できるようにしたいと思います。曲線上の最も近い点Aから点Pまでの距離を確認する予定です。
点Aで、曲線の接線はベクトルAPに垂直になり、 Aでの曲線の接線は、単にその点での発射物の速度Vになると思います。
APドットV =0
=>
APドットV =
ここから、これが3次関数であることがわかります。私はオンラインで調査することに時間を費やしましたが、根を見つけるための特定の値に対して機能すると思われる一般的な方程式があることがわかりました。
これは私が実装しようとしたプロセスです。 http://www.sosmath.com/algebra/factor/fac11/fac11.html
xを時間として曲線の元の方程式に戻すと、Aが得られるはずです。これは特定の値に対してはうまく機能するようですが、pyが特定の値を超える場合、2次方程式の平方根を取るための正の値がありません。
なぜこれが起こっているのか、または問題を解決するために何ができるのかを理解するのに十分な数学の理解がありません。
これに関する助けをいただければ幸いです。
アップデート:
複雑な根を処理するようにアルゴリズムを調整しましたが、まだ問題があります。これは、判別式が負の場合に私が今行うことです。
どういうわけか、これはまだ私が期待する結果を与えていません。ここで間違っていると目立つものはありますか?
actionscript-3 - Actionscriptの衝突:例外と奇妙なケースの解決
ピクセルを使用して衝突を検出するための衝突クラスを作成しました。私のクラスでは、衝突角度を決定するためのいくつかの関数も開発しました。これに基づいて、いくつかの例を作成しました。
http://megaswf.com/serve/25437/
http://megaswf.com/serve/25436/
(重力を変更するためのスペース、ボールにある程度の速度を与えるための右/左。)
お気づきかもしれませんが、奇妙なことが起こります。
- ボールスピードが非常に遅いとき
- ボールの方向が障害物にほぼ接しているとき。
衝突http://img514.imageshack.us/img514/4059/colisao.png
上の画像は、衝突角度の計算方法を示しています。私は赤い点をキーポイントと呼んでいます。キーポイントの最大数(通常は4つ)を検索します。2つ以上のキーポイントが見つかった場合は、最も遠い2つのキーポイントを選択します(青いオブジェクトの1つに示されています)。このようにして、オブジェクトが表面のどこに衝突したかに対する法線角度を見つけます。これが時代遅れのやり方かどうかはわかりません。
その角度に基づいて、速度ベクトルを回転させてバウンスを行います。
数学を行うためのコードはここにあります:
これは、新しい速度ベクトルが計算される方法です...
私の質問は、誰かがこの種の問題に直面したことがありますか、またはこれが起こらないようにする方法について何らかのアイデアを持っていますか?
cocos2d-iphone - シマリスの体は視差で動く?
私はCocos2D、SpaceManager、Chipmunkを使用しています。4層の視差ノードがあります。これは、再生可能なシマリスの体の位置に関連付けられています。このボディは、視差レイヤーの1つにある静的オブジェクトと衝突する必要があります。静的ボディは、画面から開始してから画面に移動して衝突する必要があります。
再ハッシュしない限り、シマリスで静止体を動かすことは想定されていません。ただし、フレームレートに対応するために1秒間に60回再ハッシュするのは、面倒なようです。誰かがこれを行う別の方法を考えることができますか?
乾杯。
c++ - 衝突応答として複数の長方形を移動する方法は?
ボックスを使用して敵をトラップできるゲーム(c ++でirrlichtエンジンを使用)を作成しようとしています。しかし、ユーザーと1つ以上のボックスとの衝突が検出されたときに、何を移動する必要があるかを検出する方法がわかりません。もう1つは、動きをブロックできるレンガと呼ばれるオブジェクトもいくつかあるということです。
私は物事を説明するのがあまり得意ではないので、画像を含めました。それで、私が何を意味するのかが明確になることを願っています:(出典:jrahmati.info)
私は自分のコードでいくつかのことを試しましたが、成功しませんでした。ですから、誰かがこの問題に答える努力をしてくれることを本当に望んでいます。前もって感謝します。ちなみに、私は必ずしもc ++で答えを必要としません、javaまたは.Net言語も大丈夫です。
コードに興味のある人のために:
プレイヤーからすべてを遠ざけようとするboolGame :: tryMove(user、dir)のコンテンツ
cocos2d-iphone - シマリスの体をスプライトの位置に移動
私は空間に体のあるシマリスの形をしています。体を配置して、重力などで落下させないように、空間から体を取り除きます。この体を動かせるようにする必要があるので、静止させません。
シーン内の Cocos2D スプライトの位置 + オフセットに従ってボディの位置を更新する必要があります。
私は体の位置を次のように設定しています:
collShape->body->p = collSprite.position; - これは動作しないようで、コンパイル エラーではなく、実行されますが、衝突形状は移動しません。
tick メソッドでスプライトの位置に基づいて衝突体を移動することは可能ですか?
algorithm - 掃引AABB衝突の擬似コード
スイープとは、オブジェクトが現在衝突しているかどうかだけでなく、オブジェクトがどこかで衝突するかどうかを判断することを意味すると思います。間違っている場合は教えてください。
軸上に配置された境界ボックスのあるオブジェクトがあります。オブジェクトのボックスはさまざまなサイズにすることができますが、常に長方形です。
ある時点で2つの移動するAABBオブジェクトが衝突するかどうかを判断するためのアルゴリズムを試してみましたが、非常に苦労しています。ある時点で2つのオブジェクトが通過する時間間隔を決定することについての質問をここで読みました。それを視覚化することに問題はありませんでしたが、それを実装することは別の話でした。例外が多すぎて、正しくやっていないようです。
オブジェクトは直線でしか移動できず(明らかに方向を変えることができますが、たとえば方向を変えることができますが、常に軸上にあります。軸をオフにしようとすると機能しません)、バインドされます軸に。それらの境界ボックスは回転したり、そのようなことをしたりしません。速度は変化する可能性がありますが、メソッドのポイントは、オブジェクトの現在の状態を考慮して、オブジェクトが「衝突コース」にあるかどうかを判断することであるため、問題ではありません。さらに情報が必要な場合はお知らせください。
誰かがいくつかの擬似コード(または実際のコード)を提供できれば、それは素晴らしいことです。凸オブジェクトの交差:軸を分離する方法というドキュメントを読みましたが、その中の擬似コードの一部を理解していませんでした(Unionの意味)?
どんな助けでもありがたいです、ありがとう。
c# - タイルマップ-衝突レイヤーが必要ですか?
2D横スクロールゲームを作成していますが、衝突について質問があります。私はさまざまな記事を読んでいますが、そのうちのいくつかは、衝突レイヤーが必要だと言っています。これは、タイルレイヤーとまったく同じスタイルですが、ビットを格納するだけです。私はこのロジックを理解していますが、タイルが実際には。というプロパティを含む構造体である場合はどうなりますかIsSolid
。isSolid
別のレイヤーを使用する代わりに、現在のタイルかどうかを単純に確認することはできませんか?または、衝突レイヤーがあると、私が見逃していたさらなる利点が得られますか?
助けてくれてありがとう
.htaccess - HTACCESS リダイレクト
私の htaccess ファイルには、次の 2 つのルールがあります。最初のものが一致しないという条件で2番目のものを発生させたいと思います。現在、両方とも実行されます。衝突を回避する方法はありますか?
前もって感謝します。
java - Java Map::hashCode() 衝突 - なぜ?
次のコードでは、2 つのマップに対して同じハッシュ コードが生成されます。アイデアはありますか?
結果は次のとおりです。
コードで 2 つの異なるハッシュ コードを生成するには、キー名を変更するだけで十分です。