MassFX_RBody : モディファイヤ
 
 
 
MassFX_RBody - superclass: modifier; super-superclass:MAXWrapper - 54:8 - classID: #(685326, 452282)

> MAXWrapper > モディファイヤ > MassFX_RBody

 

   

モディファイヤ クラス - クイック ナビゲーション

3ds Max 2012 の新機能: このクラスは、MassFX リジッド ボディ モディファイヤを実装します。

   

コンストラクタ:

MassFX_RBody ...

[リジッド ボディ プロパティ]ロールアウト

プロパティ:

<MassFX_RBody>.type     Integer    default: 1   --  integer; None

[リジッドボディタイプ]ドロップダウン リストの状態を取得/設定します。

有効な値は次のとおりです。

1 - ダイナミック (既定値) - リジッド ボディはシミュレーションによって制御されます。重力の影響を受け、他のリジッド ボディなどと衝突し、それに反応します。リジッド ボディ メッシュを凹型にすることはできません。

2 - キネマティクス - リジッド ボディは定義済み(通常はキーフレーム)のアニメーションによって制御されます。ダイナミック リジッド ボディを制御できますが、それ以外の場合は物理シミュレーションの影響を受けません。リジッド ボディ メッシュを凹型にすることはできません。

3 - 静止 - リジッド ボディは曲がりません。ダイナミック リジッド ボディと連動できますが、アニメートすることはできません。リジッド ボディ メッシュは凹型にすることができます。

   

<MassFX_RBody>.switchType     BooleanClass    default: false   --  boolean; None

[有効フレーム]チェックボックスの状態を取得/設定します。true に設定した場合、 .switchTypeAtFrame プロパティで指定した特定のフレームでリジッド ボディのタイプをキネマティクスからダイナミックに切り替えることができます。

   

<MassFX_RBody>.switchTypeAtFrame     Integer    default: 0   --  integer; None

.switchType プロパティが true に設定されている場合にリジッド ボディがキネマティクスからダイナミックに切り替えられるフレームを取得/設定します。

   

<MassFX_RBody>.baked     Integer    default: 0   --  integer; None

[ベイク]/[ベイクなし]ボタンの状態を取得/設定します。ベイクされている場合、ダイナミック リジッド ボディのアニメーションはキーフレームに変換されます。

有効な値は次のとおりです。

0 - ベイク解除 - このプロパティを 0 に設定すると、リジッド ボディがベイク解除され、ボタンのキャプションが「ベイク」に切り替わります。

1 - ベイク - このプロパティを 1 に設定すると、リジッド ボディがベイクされ、ボタンのキャプションが「ベイクなし」に切り替わります。

   

<MassFX_RBody>.EnableGravity     BooleanClass    default: true   --  boolean; None

[重力を使用]オプションの状態を取得/設定します。

true に設定し、[MassFX ワールド]パネルのグローバルな[重力]スイッチがオンになっている場合、ダイナミック リジッド ボディは重力の影響を受けます。

   

<MassFX_RBody>.ContinuousCollisionDetection     BooleanClass    default: false   --  boolean; None

[高速度衝突]オプションの状態を取得/設定します。

true に設定し、[MassFX ワールド]パネルのグローバルな[高速度衝突]スイッチがオンになっている場合、ダイナミック リジッド ボディは継続的な衝突探知を実行します。

   

<MassFX_RBody>.SleepAtStart     BooleanClass    default: false   --  boolean; None

[スリープ モードで開始]オプションの状態を取得/設定します。

true に設定した場合、ダイナミック リジッド ボディは、シミュレーションの開始時に、グローバル スリープ モード設定を使用してスリープ モードになります。つまり、ダイナミック リジッド ボディは、スリープになっていないリジッド ボディと衝突するまで動きません。

   

<MassFX_RBody>.CollideWithRigidBodies     BooleanClass    default: true   --  boolean; None

[リジッド ボディと衝突]オプションの状態を取得/設定します。

true に設定した場合、リジッド ボディは他のリジッド ボディと衝突します。false に設定した場合、リジッド ボディは衝突しません。

   

[物理的マテリアル]ロールアウト

プロパティ:

<MassFX_RBody>.density     Float    default: 0.5   --  float; None

リジッド ボディの密度を取得/設定します。密度は 1 立方センチメートルあたりのグラムで測定されます。この値を変更すると、オブジェクトの正確な質量がオブジェクトの体積に基づいて自動的に計算されます。

   

<MassFX_RBody>.mass     Float    default: 1.0   --  float; None

リジッド ボディの質量(キログラム単位)を取得/設定します。

   

<MassFX_RBody>.staticFriction     Float    default: 0.3   --  float; None

リジッド ボディの物理的マテリアルの静止摩擦値を取得/設定します。

静止摩擦は、2 つのリジッド ボディが互いにスライドを開始する難易度を表します。値 0.0 は摩擦がないことを示し、値 1.0 は完全な摩擦を示します。2 つのリジッド ボディ間の有効な静止摩擦係数は、両者のリジッド ボディの静止摩擦値の積です。一方のリジット ボディの静止摩擦係数が 0.0 の場合、もう一方の値がいくつであっても関係ありません(濡れた氷の上では何でもスライドします。紙やすりでもスライドします)。2 つのオブジェクトがスライドを開始すると、動的摩擦(以下参照)が代わりに適用されます。

   

<MassFX_RBody>.dynamicFriction     Float    default: 0.3   --  float; None

物理的マテリアルの動的摩擦値を取得/設定します。

動的摩擦は、2 つのリジッド ボディが互いにスライドを継続する難易度を表します。正確には、このパラメータは「キネマティクス摩擦係数」と呼ばれます。値 0.0 は摩擦がないことを示し、値 1.0 は完全な摩擦を示します。現実の世界では、この値は静摩擦係数より小さくなります。オブジェクトを動かし続けるよりもオブジェクトを動かし始めるほうが難しいからです。静止摩擦に関して、2 つのリジッド ボディ間の係数値は各値の積になります。

   

<MassFX_RBody>.bounciness     Float    default: 0.5   --  float; None

リジッド ボディの物理的マテリアルの弾力性値を取得/設定します。

この値は、オブジェクトが別のリジッド ボディとぶつかったときにどの程度跳ね返るかを制御します。正確には、このパラメータは「反発係数」と呼ばれます。値が 0.0 の場合、バウンドしないことを示します。また、値が 1.0 の場合、オブジェクトが衝突するのと同じように強くバウンドすることを示します。2 つのリジッド ボディ間の有効な弾力性は、両者のリジッド ボディの弾力性値の積です。

   

[物理的メッシュ]ロールアウト

プロパティ:

<MassFX_RBody>.meshType     Integer    default: 4   --  integer; None

有効な値は次のとおりです。

1 -

2 - ボックス

3 - カプセル

4 - 凸型(既定値)

5 - 合成

6 - オリジナル

7 - カスタム

   

<MassFX_RBody>.meshOverrideMaterial     BooleanClass    default: true   --  boolean; None; 

このプロパティは、[物理的マテリアルを上書き]チェックボックスのパラメータによって公開されていますが、使用することはできません。

各メッシュの[物理的マテリアルを上書き]オプションを取得および設定するには、次で説明する .GetRBMeshOverrideMasterMat() および .SetRBMeshOverrideMasterMat() メソッドを使用します。

   

メソッド:

<integer><MassFX_RBody>.GetRBMeshCount()

リジッド ボディ メッシュの数を返します。

   

<integer><MassFX_RBody>.AddRBMesh()

リジッド ボディ メッシュを追加し、そのインデックスを返します。

   

<string><MassFX_RBody>.GetRBMeshName <integer>meshIndex

インデックスで指定されたリジッド ボディ メッシュの名前を返します。

   

<boolean><MassFX_RBody>.SetRBMeshName <integer>meshIndex <string>meshName

インデックスで指定されたリジッド ボディ メッシュの名前を、2 番目の引数で渡された文字列に設定します。

   

<boolean><MassFX_RBody>.DeleteRBMesh <integer>meshIndex

インデックスで指定されたリジッド ボディ メッシュを削除します。

成功した場合は true を、失敗した場合は false を返します。

   

<boolean><MassFX_RBody>.ClipboardCopyRBMesh <integer>meshIndex

インデックスで指定されたリジッド ボディ メッシュをクリップボードにコピーします。

成功した場合は true を、失敗した場合は false を返します。

   

<boolean><MassFX_RBody>.ClipboardPasteRBMesh()

リジッド ボディ メッシュをクリップボードから貼り付けます(貼り付け可能な場合)。

成功した場合は true を、失敗した場合は false を返します。

   

<string><MassFX_RBody>.GetRBMeshType <integer>meshIndex

インデックスで指定されたリジッド ボディ メッシュのタイプを返します。

   

<boolean><MassFX_RBody>.SetRBMeshType <integer>meshIndex <integer>meshType

インデックスで指定されたリジッド ボディ メッシュのタイプを、2 番目の引数で渡された整数に設定します。

   

<node><MassFX_RBody>.RBMeshConvertToCustomMesh <integer>meshIndex

インデックスで指定されたリジッド ボディ メッシュをカスタム メッシュに変換し、それをノードとして返します。

   

<boolean><MassFX_RBody>.GetRBMeshOverrideMasterMat <integer>meshIndex

インデックスで指定されたリジッド ボディ メッシュの[マスター マテリアルを上書き]プロパティをブール値として返します。

   

<boolean><MassFX_RBody>.SetRBMeshOverrideMasterMat <integer>meshIndex <boolean>overrideIt

インデックスで指定されたリジッド ボディ メッシュの[マスター マテリアルを上書き]を、2 番目の引数で渡されたブール値に設定します。

   

<&matrix3><MassFX_RBody>.GetRBMeshTM <integer>meshIndex

インデックスで指定されたリジッド ボディ メッシュの変換行列を返します。

   

<boolean><MassFX_RBody>.SetRBMeshTM <integer>meshIndex <&matrix3>pose

pose is In and Out parameter

インデックスで指定されたリジッド ボディ メッシュの変換行列を、2 番目の参照引数で渡された matrix3 値に設定します。

   

<mesh><MassFX_RBody>.GetRBMeshShape <integer>meshIndex

インデックスで指定されたリジッド ボディ メッシュのシェイプを TriMesh 値として返します。

   

<boolean><MassFX_RBody>.SetRBMeshShape <integer>meshIndex <mesh>newMesh

インデックスで指定されたリジッド ボディ メッシュのシェイプを、2 番目の引数で渡された triMesh 値に設定します。

   

<void><MassFX_RBody>.RBMeshRegenerate <integer>meshIndex

インデックスで指定されたリジッド ボディ メッシュを再生成します。

[拡張]ロールアウト

プロパティ:

<MassFX_RBody>.EnableAdvancedSettings     Integer    default: 1   --  integer

   

コントロールの[シミュレーション]グループ

プロパティ:

メソッド:

   

コントロールの[初期のモーション]グループ

プロパティ:

<MassFX_RBody>.InitialMotionStyle     Integer    default: 1   --  integer

初期のモーション スタイルのラジオ ボタンの状態を取得/設定します。

有効な値は次のとおりです。

0 - 絶対

1 - 相対

   

<MassFX_RBody>.InitialVelocityX     Float    default: 1.0   --  float; None
<MassFX_RBody>.InitialVelocityY     Float    default: 0.0   --  float; None
<MassFX_RBody>.InitialVelocityZ     Float    default: 0.0   --  float; None

リジッド ボディの初期の速度 X、Y、および Z 値を取得/設定します。これらは初期の速度の方向を定義します。

   

   

<MassFX_RBody>.velocitySpeed     Float    default: 0.0   --  float; None

リジッド ボディの初期の速度のスピード値を取得/設定します。これは初期の速度の大きさを定義します。

   

<MassFX_RBody>.InitialSpinX     Float    default: 0.0   --  float; None
<MassFX_RBody>.InitialSpinY     Float    default: 1.0   --  float; None
<MassFX_RBody>.InitialSpinZ     Float    default: 0.0   --  float; None

リジッド ボディの初期のスピン X、Y、および Z 値を取得/設定します。これらは初期のスピンの軸を定義します。

   

<MassFX_RBody>.spinSpeed     Float    default: 0.0   --  float; None

リジッド ボディの初期のスピンのスピード値を取得/設定します。

   

コントロールの[重心]グループ

プロパティ:

<MassFX_RBody>.MassCenterX     Float    default: 0.0   --  float; None
<MassFX_RBody>.MassCenterY     Float    default: 0.0   --  float; None
<MassFX_RBody>.MassCenterZ     Float    default: 0.0   --  float; None

オブジェクト スペース内におけるリジッド ボディの重心の X、Y、および Z 座標を取得/設定します。

リジッド ボディのメッシュに基づいてこれらの値を自動的に設定する方法については、次の .CalculateMassCenter() メソッドを参照してください。

   

メソッド:

<Point3><MassFX_RBody>.CalculateMassCenter()

重心を計算し、 .MassCenterX .MassCenterY 、および .MassCenterZ の各プロパティを設定します。結果を Point3 値として返します。

   

コントロールの[ダンピング]グループ

プロパティ:

<MassFX_RBody>.LinearDamping     Float    default: 0.0   --  float; None

線形ダンピング値を取得/設定します。

   

<MassFX_RBody>.AngularDamping     Float    default: 2.86479   --  float; None

角ダンピング値を取得/設定します。

   

[球の物理的メッシュ パラメータ]ロールアウト

プロパティ:

<MassFX_RBody>.meshRadius     Float    default: 0.01   --  float; None

半径スピナーのトラック値を公開します。特定のメッシュのメッシュ半径値を取得および設定するには、次で説明するメソッドを代わりに使用する必要があります。

   

メソッド:

<float><MassFX_RBody>.GetRBMeshRadius <integer>meshIndex

インデックスで指定されたリジッド ボディ メッシュの半径を返します。

   

<boolean><MassFX_RBody>.SetRBMeshRadius <integer>meshIndex <float>radius

インデックスで指定されたリジッド ボディ メッシュの半径を、2 番目の引数で渡された浮動小数点値に設定します。

   

[ボックスの物理的メッシュ パラメータ]ロールアウト

プロパティ:

<MassFX_RBody>.meshWidth     Float    default: 0.01   --  float; None
<MassFX_RBody>.meshHeight     Float    default: 0.01   --  float; None
<MassFX_RBody>.meshLength     Float    default: 0.01   --  float; None

これらのプロパティは、UI で見つかった長さ、幅、および高さスピナーを公開します。特定のメッシュの長さ、幅、および高さを取得および設定するには、次で説明するメソッドを代わりに使用する必要があります。

   

メソッド:

<float><MassFX_RBody>.GetRBMeshLength <integer>meshIndex

インデックスで指定されたリジッド ボディ メッシュの長さを返します。

   

<boolean><MassFX_RBody>.SetRBMeshLength <integer>meshIndex <float>Length

インデックスで指定されたリジッド ボディ メッシュの長さを、2 番目の引数で渡された浮動小数点値に設定します。

   

<float><MassFX_RBody>.GetRBMeshWidth <integer>meshIndex

インデックスで指定されたリジッド ボディ メッシュの幅を返します。

   

<boolean><MassFX_RBody>.SetRBMeshWidth <integer>meshIndex <float>Width

インデックスで指定されたリジッド ボディ メッシュの幅を、2 番目の引数で渡された浮動小数点値に設定します。

   

<float><MassFX_RBody>.GetRBMeshHeight <integer>meshIndex

インデックスで指定されたリジッド ボディ メッシュの高さを返します。

   

<boolean><MassFX_RBody>.SetRBMeshHeight <integer>meshIndex <float>Height

インデックスで指定されたリジッド ボディ メッシュの高さを、2 番目の引数で渡された浮動小数点値に設定します。

   

[カプセルの物理的メッシュ パラメータ]ロールアウト

プロパティ:

<MassFX_RBody>.meshRadius     Float    default: 0.01   --  float; None

   

<MassFX_RBody>.meshHeight     Float    default: 0.01   --  float; None

   

[凸型の物理的メッシュ パラメータ]ロールアウト

プロパティ:

<MassFX_RBody>.compositeInflation     Float    default: 0.0   --  float

   

<MassFX_RBody>.meshConvexStyle     Integer    default: 0   --  integer; None

   

<MassFX_RBody>.meshVerticesLimit     Integer    default: 32   --  integer; None

   

メソッド:

<float><MassFX_RBody>.GetRBMeshInflation <integer>meshIndex

インデックスで指定されたリジッド ボディ メッシュの膨張値を返します。

   

<boolean><MassFX_RBody>.SetRBMeshInflation <integer>meshIndex <float>Inflation

インデックスで指定されたリジッド ボディ メッシュの膨張を、2 番目の引数で渡された浮動小数点値に設定します。

   

<integer><MassFX_RBody>.GetRBMeshVertexLimit <integer>meshIndex

インデックスで指定されたリジッド ボディ メッシュの頂点の制限を返します。

   

<boolean><MassFX_RBody>.SetRBMeshVertexLimit <integer>meshIndex <integer>VerticeLimit

インデックスで指定されたリジッド ボディ メッシュの頂点の制限を、2 番目の引数で渡された整数値に設定します。

   

[合成の物理的メッシュ パラメータ]ロールアウト

プロパティ:

<MassFX_RBody>.compositeMaxVertices     Integer    default: 128   --  integer

   

<MassFX_RBody>.compositeSplitLevel     Integer    default: 7   --  integer

   

<MassFX_RBody>.meshInflation     Float    default: 0.0   --  float; None

   

<MassFX_RBody>.compositeSizeDifference     Integer    default: 90   --  integer

   

<MassFX_RBody>.compositeShrinkWrap     Integer    default: 90   --  integer

   

<MassFX_RBody>.compositeGranularity     Integer    default: 90   --  integer

   

メソッド:

<boolean><MassFX_RBody>.RBMeshCompositeGenerate <integer>meshIndex

インデックスで指定されたリジッド ボディ メッシュの合成メッシュを生成します。

成功した場合は true を、失敗した場合は false を返します。

   

<integer><MassFX_RBody>.GetRBMeshCompositeMeshCount <integer>meshIndex

合成メッシュの数を返します。

   

<node><MassFX_RBody>.GetRBMeshCompositeMesh <integer>meshIndex <integer>index

最初の引数で指定されたリジッド ボディ メッシュの、2 番目の引数で指定されたインデックス付き合成メッシュを返します。

   

<MassFX_RBody>.bakeOnSimulate     BooleanClass    default: false   --  boolean

   

<MassFX_RBody>.extraShapes     UndefinedClass    default: undefined   --  string; None; !error setting value!

   

<MassFX_RBody>.manualSetup     BooleanClass    default: false   --  boolean; None

   

<MassFX_RBody>.materialId     Integer    default: 0   --  integer; None

   

<MassFX_RBody>.meshCustomMesh     UndefinedClass    default: undefined   --  node; None; !error setting value!

   

<MassFX_RBody>.SkinWidth     BooleanClass    default: false   --  boolean; None

   

<MassFX_RBody>.SkinWidthValue     Float    default: 1.0   --  float; None

   

<MassFX_RBody>.SolverIter     BooleanClass    default: false   --  boolean; None

   

<MassFX_RBody>.SolverIterValue     Integer    default: 4   --  integer; None

   

<MassFX_RBody>.volume     Float    default: 0.0   --  float; None

   

[カスタムの物理的メッシュ パラメータ]ロールアウト

メソッド:

<boolean><MassFX_RBody>.ExtractCustomMesh()

カスタム メッシュを抽出します。

成功した場合は true を、失敗した場合は false を返します。

   

<node><MassFX_RBody>.GetRBMeshCustomNode <integer>meshIndex

インデックスで指定されたリジッド ボディ メッシュのカスタム ノードを返します。

   

<boolean><MassFX_RBody>.SetRBMeshCustomNode <integer>meshIndex <node>CustomNode

インデックスで指定されたリジッド ボディ メッシュのカスタム ノードを、2 番目の引数で渡されたノード値に設定します。

   

MassFX_RBody インタフェース:

  Interface: PhysXModRBInterface

プロパティ:

<MassFX_RBody>.compositeMaxVertices : integer : Read|Write
<MassFX_RBody>.compositeSplitLevel : integer : Read|Write
<MassFX_RBody>.compositeInflation : float : Read|Write
<MassFX_RBody>.compositeSizeDifference : integer : Read|Write
<MassFX_RBody>.compositeShrinkWrap : integer : Read|Write
<MassFX_RBody>.compositeGranularity : integer : Read|Write
<MassFX_RBody>.bakeOnSimulate : boolean : Read|Write

このインタフェースによって公開されるプロパティの説明については、上記のセクションを参照してください。

メソッド:

このインタフェースによって公開されるすべてのメソッドについては、上記のセクションを参照してください。

   

関連事項