問題タブ [bulletphysics]

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

android - Augmented Reality + Bullet Physics - rayTest/Ray 選択の問題

Bullet Physics の世界でオブジェクトを選択しようとしていますが、選択できるのは床/地面だけです!!! Vuforia SDK を使用しており、ImageTargets デモ コードを変更しました。次のコードを使用して、タッチしたスクリーン ポイントを 3D 世界に投影しました。

私の物理学の世界で光線テストをしようとすると、地面にしか当たらないようです! レイ テスト コールのコードは次のとおりです。

私は主にトップダウンを見ていることを知っているので、地面にぶつかるはずです。少なくとも私のタッチが世界に正しく投影されていることは知っていますが、地面にあるオブジェクトがあり、そうではないようですそれらに触れることができます!どんなポインタでも大歓迎です:)

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

c++ - Bullet: 衝突形状のロード/保存

すべての三角形をループして、それぞれを btTriangleMesh に追加しようとしています。(ローディングだけが速くなければならず、保存速度は無視できます。)

ファイルから衝突データをロードする最速の方法は何ですか。次の 2 つはどうでしょうか。

  1. Vertex(bt3Vector) & Index(DWORD) 配列を保存し、読み込み時に btTriangleMesh のサイズを変更して、データを一度に設定します。

  2. readBulletSample のようなものを保存およびロードするために serializeSingleShape() を使用します (または、新しい btDynamicsWorld を初期化し、BulletWorldImporter でファイルを読み取り、衝突オブジェクトを取得し、btDynamicsWorld 変数をクリーンアップします)。

他に方法があれば教えてください。モデル ジオメトリには、次の 2 つのバッファーがあります。

0 投票する
3 に答える
1374 参照

java - 相対重力

最近、jMonkeyエンジンを使い始めました。とてもいいです。しかし、相対重力を実装しようとして立ち往生しました。

惑星を互いに周回させたい(必ずしも完全な円軌道である必要はなく、速度に依存する)。したがって、すべてのオブジェクトは他のオブジェクトに影響を与える必要があります。

私が今持っているもの:

グローバル重力をオフにする

球を初期化し、物理空間に追加する

RigidBodyControlクラスにメソッドsetGravityがあることに気づきましたが、それは方向を設定するだけです。したがって、オブジェクトは消えるまでそのように進みます。

私は本当に答えを楽しみにしています。

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

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

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

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

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

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

c++ - OgreBullet の HeightmapCollisionShape シェイプ スケールが正しくありませんか?

(ほとんど) デモ コードを使用して、OgreBullet に HeightmapTerrainShape をロードしようとしていますが、地形メッシュが HeightmapTerrainShape からオフセットされています。なぜこれが起こっているのかわかりません。これは私のコードです:

デバッグ ドロワーをオンにすると、次のようになります。 ここに画像の説明を入力 ここに画像の説明を入力 ここに画像の説明を入力

私の世界のサイズは 4096*600*4096 で、各チャンクは 64*600*64 です

0 投票する
3 に答える
5898 参照

bulletphysics - stepSimulationでは「step」は何を意味し、Bullet Physicsではそのパラメーターは何を意味しますか?

弾丸物理学で「STEP」という用語はどういう意味ですか?

関数stepSimulation()とそのパラメーターはどういう意味ですか?

ドキュメントを読みましたが、何も手に入れることができませんでした。

有効な説明は大いに役立ちます。

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

ios - btRigidBodyオブジェクトは、低速で衝突すると奇妙な動作をします

iOSゲームでBulletPhysicsを使用しようとしています。デモが正常に機能するという点で、エンジンは正しくコンパイルされているようです。

私のゲームでは、プレイヤーの船といくつかの敵の船があります。それらはbtRigidBodyオブジェクトとbtCollisionObjectsとして定義されており、衝突にはbtSphereShapesを使用しています。

「速い」速度では、衝突は賢明に発生するように見えます-物事は衝突し、何も「奇妙な」状態にはなりません。速度が非常に遅く、プレイヤーの船が動かないオブジェクトに触れた場合、衝突が発生しますが、その後、プレイヤーの船は次の数フレームにわたって信じられないほどの速度で移動し、衝突した場所から遠くに見えます-完全に釣り合いが取れていません衝突前の移動速度。

物事を移動するには、フレームごとにsetLinearVelocity()を使用し、物理エンジンにチェックマークを付けてから、getMotionState()を使用してレンダリングコードを更新します。

問題の一部は、正しい質量を設定する方法や、何かに使用するのに最適な速度が何であるかを完全に理解していないことかもしれません。私は主に数字を貼り付けて、何が起こるかを見ています。

Bulletをこのように使用する必要がありますか?オブジェクトの質量を決定するためのガイドラインはありますか?(私は、衝突時に重いオブジェクトが軽いオブジェクトをより多く動かすと仮定するのは正しいですか)

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

c++ - 空気抵抗を取り除くにはどうすればよいですか?

私は宇宙シミュレーションをしているので、明らかに重力や空気抵抗は必要ありません。重力をオフにするのは簡単でしたが、空気抵抗に相当するものが見つかりません。重力のような世界的な設定ではなく、体ごとに行われると思います。

確かにbtSoftBody、中密度の値があることがわかりますair_densityが、私はを使用していbtRigidBodyます。

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

java - (Java)クォータニオンをラジアン(または度)に変換しますか?

私はここ数日、OpenGLとJBulletをいじっています。何度もいじくり回した後、私はついにJBulletのかなりの数のバグを修正し、いくつかのデモで使用できるようにしました。私が現在抱えている問題は、翻訳を度に変換することができないということです。これまでのところ、次のコードを使用して、クォータニオンからラジアンに最高の結果が得られています。

私の唯一の成功はクォータニオンのX軸であり、それは他の軸での変換がないことであることに注意してください。言うまでもなく、0〜6度の範囲でずれています。

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

nan - BulletPhysicsとNANの値

Bullet Physicsでシミュレートされたワールドで、一部のオブジェクトがNAN値を取得する場合があります。(非常にまれです)それを処理する正しい方法は何ですか?NANウイルス効果を回避するために、そのようなオブジェクトを検出するためのBulletPhysics機能が組み込まれていますか。一部のオブジェクトがNANを取得している理由。私はNANの力や衝動を適用しません。同じ座標で2つのオブジェクトを作成することで、それを進めることができると思います。