問題タブ [box2dweb]

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 に答える
54 参照

javascript - オブジェクトが特定の位置でスリープ状態になったかどうかを検出するにはどうすればよいですか?

私は現在box2dwebで小さなゲームを書いていますが、これには何らかの方向性が必要です。ボックスまたはボールを投げて、投げられたオブジェクトが動かなくなったときに特定の場所をヒットしてイベントをトリガーする必要があります。」眠りに落ちた」と言う。

このための適切な方法/ベストプラクティスは何ですか?

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

html - Box2dWebにApplyLinearImpuse()メソッドとApplyAngularImpulse()メソッドがありませんか?

私は、XNA/FarseerのバックグラウンドからのHTML5ゲームの作成に取り掛かろうとしています。

box2dwebにApplyLinearImpuse()メソッドとApplyAngularImpulse()メソッドがないようです。

私はここでソースを見たことがありますが、そうであるようです。

これらのメソッドが提供されない理由を誰かが知っていますか?

0 投票する
0 に答える
113 参照

javascript - ボックス 2d: 重力と衝突

私はbox2dweb 2.1a3と問題を使用しています(Angry Birdsを再現したい):

レベルのあるファイルを読み込んで、box2d 本体 (#1) が他のもの (#2) と衝突したときに、最初の本体 (#1) を破壊したい。しかし、b2d bony を別の b2d ボディに配置すると、これらが衝突することがあります (レベルはピクセル パーフェクトでした)。

もちろん、コードの一部を投稿することもできます。

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

javascript - Box2dWeb 動的ボディと静的ボディの復元

いくつかのダイナミック ボディを使用した Box2dWeb シミュレーションがあります。次のように、すべての動的ボディに同じフィクスチャを使用しました。

反発力を 0 に設定するとバウンスを防ぐことができると思いましたが、ダイナミック ボディのスタックをスポーンすると、スプリングのように機能します。例はこちらです。私は何が欠けていますか?

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

javascript - 衝突後に Box2dWeb でボディを削除するにはどうすればよいですか

Update 関数内で、2 つのボディが衝突した場合、それらを削除します (または、削除する必要があるとマークして、タイム ステップの最後に削除します)。どうすればこれを達成できますか?

更新機能で私が試します

ただし、それらは削除されません。それらを削除しようとすると、 this.IsLocked() が true に設定されているようです。

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

kineticjs - KineticJS での変換マトリックスの使用

Box2Dweb でシミュレートされたボディと、ボディに添付された画像があります。体の変換行列を取得し、画像に変換を適用して (変換を使用して画像を描画)、画面上の位置と向き (相対) が体の位置と向きに一致するようにします。KineticJS の変換行列で使用する関数が見つかりません。移動と回転には別々の関数があり、Kinetic.Transform内部に「行列」を保持するクラスがありますが、それをどうするかわかりません。どこかに関数もありますが、これも_setTransform使い方がわかりません (アンダースコアは、直接呼び出してはならないことを示していますか?)。

このコードを使用して、プレーンな Javascript でボディに画像を描画しました。

KineticJS で同じことを行うにはどうすればよいですか?

編集: どうやら、Box2d から取得できる唯一の変換は平行移動と回転です。これは、Box2d 本体でGetPosition()GetAngle()を呼び出して取得し、 と で KineticJS イメージに適用しsetX(), setY()ますsetRotation()。したがって、ここではマトリックス形式での変換は必要ありません。それでも、好奇心旺盛です。

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

javascript - JavaScriptで親クラスを子クラスにキャストする方法

私はbox2dwebで作業しており、「ボディ」形状に基づいて「ボディ」を描画する方法を追加する関数を作成しようとしています。

つまり、「b2BodyDef」を受け取ったときに形状を取得し、外部情報を使用して形状の仕様を取得します。これを行うには、「b2Shape」を「b2CircleShape」にキャストする必要があります。

C ++では、これは次のようになると思います

JavaScriptで同様のことを行うにはどうすればよいですか? これを行うには他にもたくさんの方法があることは知っていますが(この例で必要な半径をパラメーターとして渡すなど)、ハックではなく、自分が正しいと思うことをしたいと思います。

そして以前に私は持っています:

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

box2d - box2d のすべてのステップでコードを実行する

フレームごとに 1 回ではなく、box2d の各ステップ (ソルブ) でコードを実行する方法は何でしょうか。

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

box2d - Box2D - コインを集める

私は Box2D の初心者で、キャラクターがジャンプしてコインを選ぶ簡単なゲームを作ろうとしています。接触リスナーを作成し、接触が検出されたときにコインを削除することができました。問題は、キャラクターとコインが衝突したことです。私は彼らの接触を除外することができましたが、キャラクターがコインを打ったかどうかを判断することはできません. ほぼすべてのゲームに収集可能なアイテムがあるため、比較的簡単な方法があるに違いないと確信していますが、それを達成する方法が見つかりませんでした.

ご回答ありがとうございます。