問題タブ [impactjs]

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 投票する
2 に答える
804 参照

javascript - Box2D でその場で衝突を無効にする: エンティティが既に衝突している場合は機能しません

Impactjs を使用してゲームを作成しており、Box2D を物理エンジンとして使用しています (具体的には Box2DFlash)。そのため、プレイヤーが敵と衝突してはならない場所への移動があります。これを実現するには、コリジョン フィルタリングが最適な方法のようです。

だから私は敵のフィクスチャを設定しました:

そしてプレーヤーのために:

プレイヤーと敵の衝突のオン/オフを切り替えたいときは、次の関数を呼び出します。

そして、それは機能しています...ただし、互いに衝突していない場合のみです。壁に面していて、categoryBits を に設定すると、同じ問題が発生します0x0000

アップデート

わかりました、私は汚いハックでそれを修正しました: 問題は、連絡先がまだ存在していたので、どうにかしてそれらを削除しなければならないということでした. 最初は手動で削除しようとしましたが失敗しました。

Box2D のマニュアルには次のように書かれています。

AABB が重複しなくなると、連絡先が破壊されます。

そのため、プレイヤーが直面しているディレクトリ内でプレイヤーを約 6px (動作するように見える最小量) 移動する関数を作成しました (その時点で壁に衝突していない場合)。これにより、エンティティがオーバーラップし、問題が解決します。

問題の関数は次のとおりです。

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

javascript - ImpactJS - クラス コンストラクターに渡されるまで有効な変数値が NaN になる

長文で申し訳ありませんが、できるだけ詳しく書きたいと思います

そこで、いくつかのカスタムig.Classインスタンスを使用してプラグインを作成しています。1 つは Vector の実装です。Vec2の場合、パーティクル クラスがあります。

次に、別のクラス内にこのタイヤ関数があります。

最後に、タイヤ関数と同じクラス内のこの更新関数:

私が取得しているエラーは、更新関数のこの行にあります。具体的には、未定義のvar velocity = particles[i].pos.sub(particles[i].last).scale(this.friction);メソッドを呼び出すことができないというエラーです。sub上記のタイヤの方法を次のように変更して、デバッグできるようにしました。

pos変数をログに記録すると、適切な値がコンソールに出力されますが、それでもエラーが発生する場合。pos私が考えることができる唯一のことは、メソッドで変数が作成された場所tireと、コンストラクターで変数が渡されて割り当てられた場所の間のどこかで、Particleその値が失われ、pos.x / pos.yログに記録したときに確認できる NaN の値を持つ粒子になるということですparticlesエラー行の上のvar ( var velocity = particles[i].pos.sub(particles[i].last).scale(this.friction);)。Particleコンストラクターのパラメーターの割り当てを変更して、pos複数の方法で割り当てようとしましたが(Vec2.mutableSet()メソッドと設定を直接使用して)、何をしても粒子の NaN 値が得られます。

私ではないものが見える人はいますか? ありがとう

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

php - Impact エンジンで JavaScript から php コードを実行します

Staroidsというインパクトゲームエンジンを使ってゲームを作りました。

ハイスコ​​アを保存するデータベースを作成しました。

この以前の回答に書かれていることを実行し、他のいくつかの解決策を見ましたが、うまくいかないようです!

次のコードを含むphpファイルを実行しようとしています:

JavaScript ファイルで実行するコードは次のとおりです。

このコードに到達すると、コンソールに次のエラーが表示されます。

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

javascript - Impactjs でレベルが読み込まれない

ImpactJs を使用してレベルをロードする際に問題が発生しました。レベルにロードしようとすると、コンソールに次のエラーが表示されます。

Uncaught リソースの読み込みに失敗しました: loader.js:91 ig.Loader.ig.Class.extend._loadCallback loader.js:91 ig.Image.ig.Class.extend.onerror

レベル フォルダーに保存された map1 というレベルと、それをロードする次のコードがあります。

誰かが私が間違っているところを見ることができますか? ありがとうございました :)