問題タブ [farseer]

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

windows-phone-7 - マンゴーを搭載したFarseerphysicsEngine 3.1

マンゴーをターゲットにしたWP7ゲームでfarseerのプロジェクトを参照しようとすると、これらのプロジェクトが「更新レベル」で異なるというエラーが発生します。

NoDoゲームとの統合は正常に機能します。

これをどのように解決すればよいですか?NoDoゲームを作ってしまいたくない...

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

c# - Farseer メーター/ピクセル比

私は c++ で box2d を使って多くのことを行ってきましたが、C# を試しています。Box2Dの代わりにFarseerが一般的に使われているようです(Box2DXNAは知っていますが、少し古いようです)。私が C++ と Box2D を使用していたとき、誰もが常に 1 ピクセル/メートルの比率を使用しないようにアドバイスし (理由はわかりません)、通常は 30 ピクセル/メートル程度を使用することを提案しました。Farseer について調べていると、矛盾する意見がたくさん見られました。1 ピクセル/メートルを使用すると言う人もいれば、スケールを使用すると言う人もいれば、ConvertUnits.ToSimUnits と ConvertUnits.ToDisplayUnits を使用すると言う人もいます。

それで、私は何を使うべきですか?現在、ConvertUnits を使用していますが、すべてが変な場所にレンダリングされます。事実上の標準または私が従うべきものはありますか? 前もって感謝します。

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

c# - FarSeer : マウスクリックでオブジェクトを削除

FarSeer Engine 3.3 を使用してマウスでクリックしたときにボックスを削除したい [解決策がある場合は、既に 3.1 を使用している可能性があります]

例のソースを見せないでください[私はそれらをすべて持っていて、深く掘り下げました]オブジェクトとマウスの衝突をチェックすることで問題が解決しません。FarSeer では、すべてのオブジェクトが 1 つの世界で相互作用しています。マウスをこの世界に渡さなければなりません。そこでは、私が望む以外のことは何もできないかもしれません。

FarSeer で IsTheObjectClicked [右または左マウスで] 関数を成功させるにはどうすればよいですか。

(さらに、更新されていないFarSeerのWebページからドキュメントを提供しないでください]ありがとう

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

iphone - Farseer Physics Engineの設定を変更して、パフォーマンスを向上させます

私はFarseerを使用して、 XNAを使用してゲームの1つを開発することに成功しました。ゲームはWindowsとWP7の魅力のように実行されます。私は現在、MonotouchMonogameを使用してIOSにゲームを移植する作業を行っています。私は、MonotouchとMonogameに移植されたゲームの最初のバージョンでも、Farseerをコンパイルして使用しました。パフォーマンスを除いて、すべて正常に動作します。iPhoneデバイスでは、ゲームの実行速度が大幅に低下します。私はいくつかのコード調査を行いましたが、主なボトルネックはFarseerのようです。単一の固定具を取り付けた状態で5〜6体以上を管理する必要がある場合(円)、非常に遅くなります。

ドキュメントを読んで、Farseerを調整するために、Setting静的クラスから値を変更できることに気付きました。

パフォーマンス

エンジンを最大限に活用するには、以下のガイドラインに従ってください。

睡眠を有効 にする睡眠を使用すると、世界中に多数の体を置くことができます。また、ボディのスタック内の小さな動きがスタック内に広がらないため、エンジンの安定性を高めることができます。眠っている体は頭上がほとんどないので、それを有効にすることをお勧めします。

CCD 連続衝突検出を無効にすると、トンネリングは防止されますが、パフォーマンスが低下します。トンネリングに問題がない場合は、CCDを一度に無効にする必要があります。

位置と速度 の反復回数を最小限に抑える反復回数が多いと、パフォーマンスが犠牲になりますが、エンジンがより安定します。ゲームに合わせて値を微調整する必要があります。

悪いニュースは、そのクラスの値を変更しても何も起こらないように見えることです。私は次のように値を変更しようとしました:

VelocityIterations = 1のように低い値でも試しましたが、何も変わらないようです。

パフォーマンスを向上させるために設定クラスの値をすでに変更している人はいますか?

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

vb.net - VB.NET.XNA で Farseer Physics を使用した Raycast の欠落検出

ロープジョイントのアンカー位置を決定するためにレイキャストを使用しています。いくつかの単純なドロー コールを使用すると、レイキャストが返された時点でロープ ジョイントが確実に作成されていることがわかります。私の問題はリターンポイントにあります。ボディを通過することもあり、反対側の境界上のポイントを返したり、ボディの内部に到達することもあります。つまり、繰り返し通過するレイをキャストすると、通過し続け、同じ間違ったポイントを返します。これは、私の体に問題があると私に信じさせます。問題のボディに TextureToBody コンバーターを使用しています。

もう1つの、より小さな問題は、関節の位置から各方向に10/64を差し引いて、正確に取り付ける必要があることです. なぜこれが起こっているのか分かりません。(64 ピクセル = 1 メートルは、私が使用している変換比率です)

レイキャスト法:

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

c# - C# XNA Farseer - テクスチャからシェイプを作成する

読み込まれた Texture2D に従って、Farseer を使用して XNA でボディにアタッチするコリジョン頂点を作成したいと考えています。

まず、注意事項です。衝突以外の目的で Farseer を使用していないということです。レンダリングと他のすべてのゲーム コードは、独自のエンジンを使用して行われます。Farseer は、バックグラウンドの物理シミュレーターとしてのみ使用されます (衝突が発生した場合にのみ通知され、それを自分で処理します)。

ここで指摘しておきたいのは、私は 100% Farseer の初心者です。以前に使用したことはありません。

したがって、BayazitDecomposer.ConvexPartition(verts) を使用してリストを作成する場合、このデータを Texture2D オブジェクトと一緒に保存する必要があります。衝突可能なアクターを作成するときに、その場で List オブジェクトを作成しますか? それとも私は何か間違ったことをしていますか?

さらに、http://farseerphysics.codeplex.com/documentationの例では、頂点を Vertices.Scale() でスケーリングしています... すべての Farseer ボディをピクセル空間に保持する場合、これを行う必要がありますか?

ありがとうございました。

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

mono - どうすればFarseerをMonoTouch/ExEnアプリケーションで使用できますか?

ExEnとMonoTouchを使用して、XNAとFarseerPhysics3.3を使用してiOS用のゲームを構築しようとしています。理論的にはこれは問題なく動作するはずですが、FarseerをiPhoneで動作させるのに問題があります。

私はFarseerをMonoTouch/ExEn用にコンパイルしましたが、iPhoneシミュレーターでうまく機能します。しかし、実際のiPhoneに切り替えるとすぐに、プロジェクトはコンパイルされなくなります。この問題は、MonoDevelopリンカーで発生しているようです。コンパイラが「mtouchexitedwithcode 1」というメッセージで爆破し、次のリンカーエラー出力が表示されます:http://pastebin.com/y62ykJP2。プロジェクトオプションでリンクを無効にすると、アプリケーションがコンパイルされてiPhoneにデプロイされますが、クラッシュします。

Farseerによって定義されたオブジェクトをインスタンス化するすべてのコードをコメントアウトすると、リンカーエラーは発生せず、プログラムは正常にデプロイおよび実行されます。したがって、問題は明らかに、MonoTouch用のFarseerのビルドにあります。

残念ながら、ここからどこへ行けばいいのかわかりません。このようなリンカーエラーをどこから探し始めればよいですか?または、さらに良い方法:Farseer 3.3を正常にコンパイルし、MonoTouchおよびExEnで使用した人はいますか?

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

box2d - Farseer で 2 つの物体を衝突させて、2 番目の物体にインパルスを渡すにはどうすればよいですか?

パック (円形の器具) とバット (ユーザーのマウスの動きによって指示される) を備えたサンドボックスがあります。ユーザーがパックを打った場合、マウスの移動速度に基づいてインパルスを取得したいと考えています。しかし、私は問題があります:

  • コリジョン デリゲートでは、バットの線速度を確認すると、0|0 または完全にランダムなもののいずれかになります (らしい)。
  • パックに一定の衝撃を与えるだけなら、バットの移動速度は含まれません。
  • 衝撃をパックの中心ではなく、2 つのボディの接触点に適用したいと考えています。衝突が発生した場合、そのポイントの座標にアクセスする方法はありますか?

これを解決する正しい方法は何ですか?

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

collision-detection - Farseer: 衝突検出、ただしそれ以上の身体操作なし

迷路のような世界を転がるボールがあります。ボールが特定のラインを横切った場合にイベントが発生するようにします。この線にテクスチャを配置したくありません。また、ボールがそらされないようにします。どうすればそれができますか?

ありがとうございました!