PhysXPanel - superclass:ReferenceTarget; super-superclass:MAXWrapper - 35:0 - classID:#(721879680, 1682575996)
3ds Max 2012 の新機能: このクラスは、[MassFX ツール]フローティング ダイアログを実装します。
コンストラクタ:
このクラスのインスタンスを作成することは可能ですが、MassFX システムが実際の[MassFX ツール]ダイアログのインスタンスを独自に作成するので、ユーザーが作成しても無意味です。
PhysXPanelInterface インタフェースを使用して、[MassFX ツール]ダイアログの既存のインスタンスにアクセスしてください。
PhysXPanelInterface.instance
プロパティ:
[シーン設定]ロールアウト
グラウンド平面コントロール
<PhysXPanel>.useGroundPlane BooleanClass default: true -- boolean
[グラウンド平面を使用]オプションの状態を取得/設定します。
true に設定すると、XY グラウンド平面が衝突オブジェクトとして使用されます。
false に設定すると、グラウンド平面はシミュレートされません。
[重力]コントロール グループ
<PhysXPanel>.enableGravity BooleanClass default: true -- boolean
[重力有効]チェックボックスの状態を取得/設定します。
true に設定すると、
.gravityDirection
および
.gravity
プロパティで定義されている重力がシミュレーションに適用されます。
false に設定すると、重力はシミュレートされません。
<PhysXPanel>.gravityDirection Integer default: 3 -- integer
[方向]ラジオ ボタンの状態を取得/設定します。
有効な値は次のとおりです。
1 - X
2 - Y
3 - Z(既定値)
<PhysXPanel>.gravity Float default: -386.221 -- float
単位/秒² の単位でアクセラレーション値を取得/設定します。1 標準単位が 1 インチの場合、既定値は -386.221 インチ/秒² であり、これは 9.81 m/秒² に相当します。
[リジッド ボディ]コントロール グループ
<PhysXPanel>.subStepsInteger default: 3 -- integer
フレームごとのサブステップの数を取得/設定します。
各グラフィカル更新の間に実行されるシミュレーション ステップの数は、「(サブステップ + 1) * フレーム レート」という式で決まります。フレーム レートが 30 fps で 0 サブステップの場合は、1 秒間に 30 シミュレーション ステップ、1
サブステップの場合は 1 秒間に 60 ステップ、2 サブステップの場合は 1 秒間に 180 シミュレーション ステップ、などとなります。サブステップの最大値は 159 であり、これは 30 fps のアニメーションで 1 秒間に 4,800
シミュレーション ステップになります。サブステップの値を大きくするほど衝突とコンストレイントの精度は高くなりますが、パフォーマンスは低下します。
<PhysXPanel>.solverIteration Integer default: 30 -- integer
ステップごとのソルバ反復の回数を取得/設定します。
これは、衝突とコンストレイントを適用するときにコンストレイント ソルバが実行する反復の回数のグローバル設定です。シミュレーションで使用されるコンストレイントが多い場合、または結合エラーの許容値が非常に小さい場合は、この値を高くすることが必要になる場合があります。通常、この値を
30 より大きくする必要はありません。
<PhysXPanel>.enableCCD BooleanClass default: false -- boolean
[高速度衝突]チェックボックスの状態を取得/設定します。「CCD」は「Continuous Collision Detection」(持続衝突検出)の略です。この方法は、2 つのサンプル ステップ間を高速移動するリジッド ボディ オブジェクトのモーション
パスをカバーする単純化されたジオメトリ ハルを使用して、経路内の他のリジッド ボディと正確に衝突させます。
[拡張設定]コントロール グループ
[スリープ設定]コントロール グループ
<PhysXPanel>.sleepThresholdsAutomatic Integer default: 1 -- integer
スリープ モードのラジオ ボタンの状態を取得/設定します。
有効な値は次のとおりです。
1 - 自動 - MassFX は、それを超えるとスリープが適用される、線形と角速度の両方に対する妥当なスリープ スレッショルド値を、自動的に計算します。そのためには、実験的つまり経験に基づく方法が使用されます。
2 - 手動 -
.sleepSpeed
および
.sleepSpin
プロパティを使用して、オブジェクトが「スリープ」モードに移行する線形スピードと角度スピードのスレッショルドを定義します。
<PhysXPanel>.sleepSpeed Float default: 1.9685 -- worldUnits
[最低スピード]プロパティの値を取得/設定します。
.sleepThresholdsAutomatic
プロパティが 1 に設定されているときに、その値より小さくなるとリジッド ボディが「スリープ」モードに移行してスピードが計算されなくなる、線形スピードのスレッショルドを決定するために使用されます。値の単位は単位/秒です。
<PhysXPanel>.sleepSpin Float default: 5.0 -- float
[最低スピン]プロパティの値を取得/設定します。
.sleepThresholdsAutomatic
プロパティが 1 に設定されているときに、その値より小さくなるとリジッド ボディが「スリープ」モードに移行してスピードが計算されなくなる、角度スピードのスレッショルドを決定するために使用されます。値の単位は度/秒です。
[高速度衝突]コントロール グループ
<PhysXPanel>.ccdMinSpeedAutomatic Integer default: 1 -- integer
[高速度衝突]の自動/手動モードのラジオ ボタンの状態を取得/設定します。
有効な値は次のとおりです。
1 - 自動
2 - 手動
<PhysXPanel>.ccdMinSpeedThreshold Float default: 5.0 -- float
[最低スピード]スレッショルド値を取得/設定します。
このプロパティは、
.ccdMinSpeedAutomatic
が 2 に設定され、
.enableCCD
が true に設定されているときに使用されます。
[バウンス設定]コントロール グループ
<PhysXPanel>.bounceMinSpeedAutomatic Integer default: 1 -- integer
リジッド ボディが相互にバウンドするときを決定するバウンスの最低スピード方法の状態を取得/設定します。
有効な値は次のとおりです。
1 - 自動- MassFX は、経験的なアルゴリズムを使用して、それより大きくなるとバウンスを適用する妥当な最低スピード スレッショルドを計算します。
2 - 手動 - スピードの経験的な値を上書きするには、[手動]を選択して、適当な[最低スピード]の値を設定します。
<PhysXPanel>.bounceMinSpeedThreshold Float default: 5.0 -- float
バウンスの最低スピード スレッショルドを取得/設定します。
このスピード(単位/秒で指定)より速く移動するシミュレーション内のリジッド ボディは、衝突すると相互にバウンドします。この値の設定が高すぎると、高速移動するオブジェクトが別のオブジェクトと衝突してもバウンドしなくなります。この値の設定が低すぎると、低速で移動するオブジェクトのバウンドが増加するため、シミュレーションのパフォーマンスが低下し、ジッターが発生する可能性があります。この値を
0.0 に設定すると、移動するすべてのオブジェクトについてバウンスが有効になります。
[シミュレーション設定]ロールアウト
[再生]コントロール グループ
<PhysXPanel>.onLastFrame Integer default: 1 -- integer
[再生] > [最終フレーム]ラジオ ボタンの状態を取得/設定します。
有効な値は次のとおりです。
1 - シミュレーションを継続 - タイム スライダが最終フレームに達した後も、シミュレーションの実行を継続します。
2 - シミュレーションを終了 - タイム スライダが最終フレームに達したら、シミュレーションを停止します。
3 - ループ アニメーション ... - タイム スライダが最終フレームに達したらアニメーションを繰り返し、
.loopAnimation
プロパティ(後述)に従って動作します。
<PhysXPanel>.loopAnimation Integer default: 1 -- integer
[ループ アニメーション ...]ラジオ ボタンの状態を取得/設定します。
有効な値は次のとおりです。
1 - シミュレーションをリセット - タイム スライダが最終フレームに達したら、シミュレーションをリセットし、アニメーションを第 1 フレームに戻します。同じシミュレーションを繰り返し実行して結果を分析するときに便利です。
2 - シミュレーションを継続 - タイム スライダが最終フレームに達したら、シミュレーションの実行を継続したまま、アニメーションを第 1 フレームに戻します。ループの境界を越えてシミュレーションを続行するときの短いループ アニメーション(キャラクタの歩行サイクルなど)に便利です。
[エンジン]ロールアウト
[オプション]コントロール グループ
<PhysXPanel>.useMultiThread BooleanClass default: false -- boolean
[マルチ スレッディング使用]オプションの状態を取得/設定します。
true に設定すると、シミュレーションはマルチ スレッド化されて、パフォーマンスが向上します。
<PhysXPanel>.useHardwareScene BooleanClass default: false -- boolean
サポートされるハードウェアが検出されたときに使用できる[ハードウェア アクセラレーション]オプションの状態を取得/設定します。
true に設定すると、シミュレーションはハードウェア アクセラレーションを使用し、パフォーマンスが向上します。
[リジッド ボディ]ロールアウト
[物理的メッシュ]コントロール グループ
<PhysXPanel>.physicalMeshes Integer default: 1 -- integer
[物理的メッシュ]ドロップダウン リストの状態を取得/設定します。
有効な値は次のとおりです。
1 - 選択のみ表示 - 選択したリジッド ボディ オブジェクトについてのみ、物理的メッシュを表示します。
2 - すべての物理的メッシュ表示 - 選択に関係なく、すべての物理的メッシュを表示します。
3 - すべての物理的メッシュ非表示 - 物理的メッシュを表示しません。
[MassFX ビジュアライザー]ロールアウト
[オプション]コントロール グループ
<PhysXPanel>.visualizerEnable BooleanClass default: false -- boolean
[ビジュアライザーを有効化]チェックボックスの状態を取得/設定します。
<PhysXPanel>.visualizerScale Float default: 1.0 -- worldUnits
[スケール]スピナーの値を取得/設定します。軸などのビューポート ベースのインジケータの相対サイズを制御します。
[オブジェクト プロパティ]コントロール グループ
<PhysXPanel>.bodyAxis BooleanClass default: true -- boolean
[ローカル軸]チェックボックスの状態を取得/設定します。true に設定すると(既定値)、リジッド ボディ オブジェクトのローカル軸がシミュレーションの間にビューポートに表示されます。
<PhysXPanel>.bodyLinearVel BooleanClass default: false -- boolean
[オブジェクト線形速度]チェックボックスの状態を取得/設定します。true に設定すると、リジッド ボディ オブジェクトの線形速度がシミュレーションの間にビューポートに表示されます。
<PhysXPanel>.bodyAngularVel BooleanClass default: false -- boolean
[オブジェクト矩形速度]チェックボックスの状態を取得/設定します。true に設定すると、リジッド ボディ オブジェクトの角速度がシミュレーションの間にビューポートに表示されます。
[結合プロパティ]コントロール グループ
<PhysXPanel>.jointLocalAxis BooleanClass default: false -- boolean
[ローカル軸]チェックボックスの状態を取得/設定します。true に設定すると、結合のローカル軸がシミュレーションの間にビューポートに表示されます。
<PhysXPanel>.jointWorldAxis BooleanClass default: false -- boolean
[ワールド軸]チェックボックスの状態を取得/設定します。true に設定すると、結合のワールド軸がシミュレーションの間にビューポートに表示されます。
<PhysXPanel>.jointLimits BooleanClass default: false -- boolean
[結合制限]チェックボックスの状態を取得/設定します。true に設定すると、結合の制限がシミュレーションの間にビューポートに表示されます。
[コンタクト マーカ]コントロール グループ
<PhysXPanel>.contactPoints BooleanClass default: false -- boolean
[コンタクト ポイント]チェックボックスの状態を取得/設定します。true に設定すると、リジッド ボディの衝突の位置がシミュレーションの間にビューポートに表示されます。
<PhysXPanel>.contactNormal BooleanClass default: false -- boolean
[コンタクト法線]チェックボックスの状態を取得/設定します。true に設定すると、リジッド ボディの衝突の法線がシミュレーションの間にビューポートに表示されます。
<PhysXPanel>.contactForce BooleanClass default: false -- boolean
[コンタクト フォース]チェックボックスの状態を取得/設定します。true に設定すると、リジッド ボディの衝突の力の大きさがシミュレーションの間にビューポートに表示されます。
[衝突マーカ]コントロール グループ
<PhysXPanel>.collisionShapes BooleanClass default: true -- boolean
[衝突メッシュ]チェックボックスの状態を取得/設定します。オン(既定)にすると、シミュレートされるすべてのオブジェクトのリジッド ボディ メッシュがビューポートに表示されます。
<PhysXPanel>.collisionCompounds BooleanClass default: false -- boolean
[衝突グループ]チェックボックスの状態を取得/設定します。
<PhysXPanel>.collisionSpheres BooleanClass default: false -- boolean
[衝突球]チェックボックスの状態を取得/設定します。オン(既定)にすると、リジッド ボディ オブジェクトのバウンディング球が表示されます。バウンディング球を使用すると、2 つのリジッド ボディの衝突をリジッド ボディ メッシュ レベルで検査するかどうかを指定できます。2
つの球が交差しない場合は、正確で時間のかかる衝突探知を実行する必要はありません。
その他のプロパティ
次のプロパティは UI には表示されません。
<PhysXPanel>.skinWidth Float default: 0.0393701 -- worldUnits
<PhysXPanel>.useFirst BooleanClass default: true -- boolean