問題タブ [physics-engine]

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.

0 投票する
1 に答える
272 参照

random - AwayPhysics、または一般的な物理エンジンにランダムな要素がありますか?

立方体を投げて、それが45、45、0回転(角)で地面に落ちたとしましょう。今、「完璧な」世界では、立方体は原子で構成されておらず、「完璧」であり、風(または空気の動きが少ない)などはありません。そして最終的に、立方体はその上にとどまります。コーナー。しかし、私たちはそのような退屈な「完璧な」世界に住んでいません。物理エミュレーターはこれを考慮に入れる必要があり、非常にうまく機能します。したがって、立方体はその側に倒れます。

今私の質問は、それはどれくらいランダムですか?立方体は常に左側に落ちますか?または多分それはMath.random()に依存しますか?または多分それは現在の時間に依存しますか?それとも、時間はかからないカスタムランダム関数に依存しますが、シードであるため、ステージ上のオブジェクトのパラメーターに依存しますか?

なぜ私がこの質問をしているのかというと、ランダム性が時間に基づいていない場合、アニメーションを最適化するために、特定の初期位置の衝突の結果(オブジェクトが停止したとき)をキャッシュできる可能性がありますか?アニメーション全体をキャッシュした場合は気になりませんが、最終結果のみをキャッシュした場合、まったく同じ2つの状況が異なる結果に評価され、もう一方がキャッシュされたバージョンに適合しないことに驚かれる可能性があります。

Math.random関数のソースを確認することもできますが、コードが確実に最適化され、高度なランダム化が必要ないため、個人的にはfallLeft = time%2のようなものを使用します。また、コードは時間とともに変化する可能性があります。

ここではAwayPhysicsについて何も見つかりませんでした。おそらく、それは誰にとっても新しいことです。そのため、括弧の部分を追加しました。私が1つのことを想定すれば、世界は爆発しません。AwayPhysicsではそれが逆になりますが、標準は何ですか?

0 投票する
1 に答える
324 参照

collision-detection - カメラ画像を物理エンジンに統合するには?

私は最近このビデオに出くわし、同様のものを実装したいと考えています。基本的なアプローチは明確です。画像にしきい値を設定し、仮想オブジェクトが残りの前景と衝突するかどうかを確認する必要があります。

物理演算を自分で実装する代わりに、Box2D のようなエンジンを使用したいと考えています。しかし、しきい値処理された画像を物理エンジンに統合して、仮想オブジェクトと対話できるようにするにはどうすればよいでしょうか?

0 投票する
1 に答える
59 参照

actionscript-3 - 特定の時間に物体に作用する個別の力 (b2Vec2 など) をすべて見つける方法はありますか?

私は Box2D (およびアクション スクリプト全般) の初心者であり、物理学の学生向けの一種の教育ツールを作成しています。特定の瞬間に物体に作用する力を (ベクトルとして) 表示できるようにしようとしています。物体に作用する個別のベクトル (摩擦、法線力、重力など) を見つけて、それらを使用できるようにする方法はありますか? どんな援助でも大歓迎です。

0 投票する
1 に答える
837 参照

iphone - Cocos2dシマリスの重力と衝突検出

Cocos2dChipmunkに次のタスクを含む簡単なアニメーションがあります。

  • 画面の中央に配置された1つの丸い形のスプライト、剛体タイプ。重心は、このスプライトの中心に配置する必要があります。
  • 画面のさまざまな側面から(自発的に、画面サイズを超えて)、他の硬い丸いスプライトが中央のスプライトに落ちて、目に見える画面スペースを埋める必要があります。
  • スプライトは互いに重なり合ってはなりません。

したがって、質問は次のとおりです。

  1. 重力のベクトルを画面の中心に再割り当てするにはどうすればよいですか?
  2. Cocos2d Chipmunkでリジッドボディタイプ間の衝突検出を実装するにはどうすればよいですか?

ありがとう、同僚!

0 投票する
2 に答える
1154 参照

javascript - 画像を使用して重力をシミュレートする 2D 物理エンジン

画像、できれば透明な PNG 画像を使用して重力をシミュレートする 2D 物理エンジンを探しています。したがって、エンジンは画像の不透明部分に基づいて衝突ベースを計算する方法を認識します。プリミティブな形状と基本的な HTML 要素で動作する Javascript エンジンのみを見つけましたが、画像では動作しません。

0 投票する
2 に答える
959 参照

javascript - D3 の Force-directed Layout の基本

私は d3.js を使用して、強制指向レイアウトのエキサイティングな世界に足を踏み入れています。d3 の基礎は理解できましたが、強制的にレイアウトを設定するための基本的なシステムがわかりません。

現在、いくつかの接続されていない泡が中心に浮かぶ単純なレイアウトを作成しようとしています。かなり単純ですよね!? 正しい円が作成されますが、何も起こりません。

編集: force.nodes() が初期データ配列を返すことが問題のようです。作業中のスクリプトでは、force.nodes() はオブジェクトの配列を返します。

これが私のコードです:

0 投票する
1 に答える
196 参照

objective-c - スプライトをタッチしたポイントに移動すると、タッチが長くなるほど速度が上がります

スプライトを x 軸上のタッチ ポイントに移動して、velocity.x を増加させるにはどうすればよいですか。タッチが長ければ長いほど速度が速くなり、タッチポイントの特定の範囲に入るか、ユーザーが指を離すと、再び速度が低下しますか?

update メソッドで更新される速度値を持つプレーヤー クラスのセットアップがありますが、タッチ メソッドで必要な動作を取得する方法がわかりません。

乾杯、

ルイス

0 投票する
1 に答える
1285 参照

c++ - オブジェクトの回転/移動後に AABB を正しく再計算する

ここでこのトピックを見てきましたが、問題を解決するのに実際には役立ちませんでした:(コードを同じように実装しようとしましたが、何かが正しく機能していません。残念ながら、 glLoadIdentity( を使用できません) libqglviewer を使用しているため、何か奇妙な理由で glLoadIdentity() を使用すると、オブジェクト (通常の立方体) が消えます :( したがって、私の回避策は、glPopMatrix と glPushMatrix を使用して、必要なたびにワールド マトリックスをそのまま維持することです。オブジェクトの平行移動/回転 元のマトリックスは保存されており、平行移動/回転が完了したら、もう一度ポップします。

これまでのところうまくいきましたが、バウンディング ボックスの再計算を実装しようとすると、ボックスは立方体と同じ位置から始まりますが、回転を開始するとバウンディング ボックスが「内破」することがあるため、最大値を確認する必要があります。 /min コーナーは立方体自体よりも小さくなりませんが、カメラを回転させるとバウンディング ボックスが片側または反対側に移動します。

私は GLM を使用してモデルをロードしていますが、残念ながらレガシー OpenGL を使用しています。レガシー OGL の仕組みにはある程度精通していますが、バウンディング ボックスが再計算されたときの計算に何か問題があると思います。

このコードは私のレンダー関数にあります:

これは、境界ボックスを設定するための私のコードです:

この最後の部分で、ボックスを再計算します。

私はこの投稿に従おうとしてきました 移動/回転後に軸に沿ったバウンディングボックスを再計算する方法は? しかし、上記のコードで動作させることができませんでした。

私がどこで間違っているのかについての指針は役に立ちます。

0 投票する
1 に答える
512 参照

ios - 加速度計を使用した iOS のスライド距離

加速度計を使用して、デバイスがスライドする距離を測定しようとしています。これが私がやっている方法です:

結果は非常に不安定で、実際の値の +/- 30% の範囲です。私の計算は正しいですか? もしそうなら、どうすればこのコードをより正確にできますか?

0 投票する
1 に答える
3374 参照

c++ - Bullet Physics リジッド ボディがサーフェスで跳ね返る

剛体を使用してプレイヤーに物理を与えるゲーム用のプレイヤー コントローラーを作成しました。反発力と摩擦力の両方を 0 に設定し、質量を 80 に設定しました。私の地形はまったく同じ特性を持っていますが、質量も 0 です。プレーヤーが非常に高いところから落下するたびに、地形面で数回跳ね返ります。これは、私がプレイヤーにどのように反応してもらいたいかということではありません。この種の動作を防ぐ方法はありますか?

ここに私の問題を説明するビデオがあります。QuickTime で録音したので少しラグがありますが、意味は通じるはずです。

http://www.youtube.com/watch?v=2eQ1cj7hpWw