問題タブ [physx]

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

c++ - PhysX データを使用してウェーバー数を計算するにはどうすればよいですか?

PhysX を基礎となる物理ソルバーとして (SPH シミュレーションを使用して) 使用して、非フォトリアリスティックな水のレンダリングのデモンストレーションを開発しており、そのビジュアルを強化するために泡と液滴のレンダリングを追加したいと考えています。

最初に、隣接する粒子の数をしきい値として使用して、それらをグループ (水、泡、液滴) に分け、各グループを異なる方法でレンダリングしましたが、いくつかの研究論文を読んで、より物理に基づいたものを使用するという結論に達しました。アプローチの方がよいので、ウェーバー数を入力します。

次のパラメーターは、ウェーバー数を取得するために使用されます。これらはすべて、特定の粒子または流体全体に関連しています。

  • 密度
  • 相対速度 (周囲の空気との関係)
  • 特性長さ
  • 表面張力

密度と相対速度は PhysX によって提供されており、既に取得しています。密度は float 値ですが、速度は 3D 空間の各軸 (x、y、z) に対応する 3 つの float 値のベクトルです。特徴的な長さと表面張力は提供されていません、タフです(または、提供されている場合、それらを取得する方法がわかりません)。

だから、私の質問は次のとおりです。

  • ウェーバー数は浮動小数点値でなければならないので、それをしきい値として使用して粒子をグループに分けることができると思います。ここでの最初の問題は、取得するには PhysX によって提供される相対速度を使用する必要があることです。これは 3 つの float 値を持つベクトルです。このベクトルの単一の float 値を取得して、ウェーバー数を求める方程式で使用するにはどうすればよいですか?
  • いくつかの研究論文 (特に、セクション 3.2.1 のこの論文)を読んで、粒子の特性長と表面張力に固定値を使用することにしました。問題は、どの値を使用すればよいかということです。これらに理想的な値があると仮定すると、これらの理想的な値に到達するにはどうすればよいでしょうか?
0 投票する
1 に答える
1285 参照

c++ - PhysX 地形 - Heightfield と TriangleMesh

PhysX アプリケーションで地形を作成する必要があるプロジェクトに取り組んでいます。

入力データとして、ファイル (標高) を dted しました。

PhysX で地形を作成するためのより良い方法はどれですか? 広い地形が必要です。

HeightField を作成しようとしましたが、サンプル配列の次元が 255.999 の値に制限されていることがわかりました (260.000 ではクラッシュします)。この観察は正しいですか?これは、大きな地形を作成するには複数の Heightfield が必要ということですか?

前もって感謝します

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

physx - Physxでのリディグ静的アクターとキネマティックリディグダイナミックの違いは何ですか?

それらはすべて静的に見えます。力で動かさないでください。また、プログラムで位置を設定することができます。

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

unreal-engine4 - UE4 で PhysX クロスのアニメーションを実現するには?

このhttps://youtu.be/dviWZcphcIQ?t=18sのように、UE4 で PhysX クロスのアニメーションを実現する方法は?

同じアニメーションのプロジェクトのソースはどこにありますか?

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

c++ - ベース ポインタをキャストする際のエラー: `抽象クラスをインスタンス化できません`

C++ で PhysX を使用していますcannot instantiate abstract classが、次のコードでエラーが発生します。

コードは一例です。PxD6joint は、 PxJoint を継承する抽象クラスです&jviaのパブリック メンバーにアクセスする何らかの方法があるに違いないと考えていますjoints[0]が、もしあれば、正しく行っていません。

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

physx - 更新されたクロス パーティクルの位置を読み取る方法

現在、Krishna Kumar の本「Learning Physics Modeling with PhysX」を読んでいます。

布の例のソース コードではgetRenderBuffer()、メッシュ記述用に定義した点、三角形、および四角形を取得する方法を使用していますが、彼の本ではこの方法について何も説明していません。

実際には何をしgetRenderBuffer()ますか?これは更新されたクロス パーティクルの位置を取得する (唯一の) 方法ですか? もしそうなら、これgetRenderBuffer()は PxScene オブジェクトのメソッドなので、シーンに布のアクターがたくさんいる場合はどうすればよいでしょうか?

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

unity3d - Unity3D はどのようにして PhysX をコンパイルできますか?

Unity3D は Mono を使用して、相互互換性のためにコードを純粋な中間言語にコンパイルします (間違っている場合は修正してください)。PhysX にはネイティブ コードが含まれており、その一部は純粋なマネージド コード (/clr:pure) では表すことができません。

ijw/native モジュールを純粋なモジュールにリンクできないことは承知しています。純粋なモードでネイティブ オブジェクト ファイルをリンクすることはできません。ただし、Unity3D は PhysX を含めることでこれを回避しているようです。どのように?

おそらくUnityとPhysXのパートナーシップによる特別なビルド以外に、これを説明できるリソースを見つけることができませんでした: How does Unity3D use PhysX without require the PhysX runtime?