MaxscriptParticleContainer インタフェースは、パーティクル コンテナによって公開され、Particle Script ハンドラで使用できます。
プロパティ:
<particeContainer>.useTime : boolean : Read|Write
true に設定された場合、スクリプトによるアクセスに、時間チャネルを使用できます。
<particeContainer>.useAge : boolean : Read|Write
true に設定された場合、スクリプトによるアクセスに、エージ チャネルを使用できます。
<particeContainer>.useLifespan : boolean : Read|Write
true に設定された場合、スクリプトによるアクセスに、スパン期間チャネルを使用できます。
<particeContainer>.useEventTime : boolean : Read|Write
true に設定された場合、スクリプトによるアクセスに、イベント時間チャネルを使用できます。
<particeContainer>.usePosition : boolean : Read|Write
true に設定された場合、スクリプトによるアクセスに、位置チャネルを使用できます。
<particeContainer>.useSpeed : boolean : Read|Write
true に設定された場合、スクリプトによるアクセスに、速度チャネルを使用できます。
<particeContainer>.useAcceleration : boolean : Read|Write
true に設定された場合、スクリプトによるアクセスに、加速度チャネルを使用できます。
<particeContainer>.useOrientation : boolean : Read|Write
true に設定された場合、スクリプトによるアクセスに、方向チャネルを使用できます。
<particeContainer>.useSpin : boolean : Read|Write
true に設定された場合、スクリプトによるアクセスに、スピン チャネルを使用できます。
<particeContainer>.useScale : boolean : Read|Write
true に設定された場合、スクリプトによるアクセスに、スケール チャネルを使用できます。
<particeContainer>.useTM : boolean : Read|Write
true に設定された場合、スクリプトによるアクセスに、TM (変換行列) チャネルを使用できます。
<particeContainer>.useSelected : boolean : Read|Write
true に設定された場合、スクリプトによるアクセスに、選択チャネルを使用できます。
<particeContainer>.useShape : boolean : Read|Write
true に設定された場合、スクリプトによるアクセスに、シェープ チャネルを使用できます。
<particeContainer>.useMtlIndex : boolean: Read|Write
true に設定された場合、スクリプトによるアクセスに、マテリアル インデックス チャネルを使用できます。
<particeContainer>.useMapping : boolean: Read|Write
true に設定された場合、スクリプトによるアクセスに、マッピング チャネルを使用できます。
<particeContainer>.useInteger : boolean : Read|Write
true に設定された場合、スクリプトによるアクセスに、整数チャネルを使用できます。
<particeContainer>.useFloat : boolean : Read|Write
true に設定された場合、スクリプトによるアクセスに、フロート チャネルを使用できます。
<particeContainer>.useVector : boolean : Read|Write
true に設定された場合、スクリプトによるアクセスに、ベクトル チャネルを使用できます。
<particeContainer>.useMatrix : boolean : Read|Write
true に設定された場合、スクリプトによるアクセスに、行列チャネルを使用できます。
<particeContainer>.particleIndex : index : Read|Write|Validated by Range: 1 to 100000000
現在のパーティクル インデックスを取得/設定します。
<particeContainer>.particleID : index : Read|Write|Validated by Range: 1 to 100000000
現在のパーティクル ID を取得/設定します。
<particeContainer>.particleNew : boolean : Read
パーティクルがイベントに到着したかどうかを確認します。
<particeContainer>.particleTime : time : Read|Write
現在のパーティクルの期間を取得/設定します。
<particeContainer>.particleAge : time : Read|Write|Validated by Range: 0f to 9e+006f
現在のパーティクルのエージを取得/設定します。
<particeContainer>.particleLifespan : time : Read|Write|Validated by Range: 0f to 9e+006f
現在のパーティクルのスパン期間を取得/設定します。
<particeContainer>.particleEventTime : time : Read|Write|Validated by Range: 0f to 9e+006f
パーティクルが現在のイベントに存在する期間を取得/設定します。
<particeContainer>.particlePosition : point3 : Read|Write
現在のパーティクルの位置を取得/設定します。
<particeContainer>.particleSpeed : point3 : Read|Write
現在のパーティクルの速度を取得/設定します。
<particeContainer>.particleAcceleration : point3 : Read|Write
現在のパーティクルの加速度を取得/設定します。
<particeContainer>.particleOrientation : point3 : Read|Write
現在のパーティクルの方向を取得/設定します。
<particeContainer>.particleSpin : angleAxis : Read|Write
現在のパーティクルのスピンを取得/設定します。
<particeContainer>.particleScale : float : Read|Write
現在のパーティクルのサイズを取得/設定します。
<particeContainer>.particleScaleXYZ : point3 : Read|Write
現在のパーティクルのスケールを取得/設定します。
<particeContainer>.particleTM : matrix3 : Read|Write
現在のパーティクルの変換行列を取得/設定します。
<particeContainer>.particleSelected : boolean : Read|Write
パーティクルの選択状態を取得/設定します。
<particeContainer>.particleShape : mesh : Read|Write
パーティクル メッシュを取得/設定します。
<particeContainer>.particleInteger : integer : Read|Write
パーティクル毎のカスタム整数データを保存/検索します。
<particeContainer>.particleTestStatus : boolean : Read|Write
パーティクルのテスト状態を取得/設定します。
<particeContainer>.particleTestTime : time : Read|Write|Validated by Range: 0f to 9e+006f
パーティクルのテスト期間を取得/設定します。
<particeContainer>.particleFloat : float : Read|Write
パーティクル毎のカスタム浮動小数点データを保存/検索します。
<particeContainer>.particleVector : point3 : Read|Write
パーティクル毎のカスタム ベクトル データを保存/検索します。
<particeContainer>.particleMatrix : matrix3 : Read|Write
パーティクル毎のカスタム行列データを保存/検索します。
particleMatrix チャネルを使用すると、1 つの matrix3 値または Point3 値 4 つのセット、あるいは 12 個の浮動小数点の値を保存できます。したがってこのチャネルは、多数の値を保存する必要のある場合に非常に広い用途に使用できます。matrix3 に関する章で示したように、matrix3 値のサブ要素に値を直接割り当てることはできません。Point3 または浮動小数点の値を particleMatrix チャネルに書き込むためには、最初に particleMatrix 値をユーザ変数に保存し、Point3 を行列のそれぞれの行に割り当てるか、Point3 の .x、.y、.z 要素のいずれかに浮動小数点の値を割り当て、それから、変数を particleMatrix チャネルに割り当てて戻します。
メソッド:
<IObject>getParticleContainer()
パーティクル コンテナを取得します。
<object>getParticleSystem()
パーティクル システム オブジェクトを取得します。
<node>getParticleSystemNode()
パーティクル システム ノードを取得します。
<object array>getInitActions()
アクション リスト内のすべてのアクション オブジェクトのリストを取得します。
<node array>getInitActionNodes()
アクション リスト内のすべてのアクション ノードのリストを取得します。
<time>getTimeStart()
進行間隔の開始時間を取得します。
<time>getTimeEnd()
進行間隔の終了時間を取得します。
<void>setTimeEnd <time>time
パーティクルのすべてを所定の終了時間までは進めることはできない場合、できるだけ近い進行間隔の期間を設定します。
<void>setTimeEndPrecise <time>time <float>fraction
期間と割合を指定することで、終了時間をより高い精度で設定します。
<node>getActionNode()
アクション ノードを取得します。
<Interface>getIntegrator()
パーティクル モーションを期間内で統合するプロシージャのインタフェースを取得します。「Interface: integrator」を参照してください。
<integer>randSign()
ランダムな記号 (-1 または +1) を取得します。
<float>rand01()
[0, 1]の間隔から、ランダムな数字を取得します。
<float>rand11()
[-1, 1]の間隔から、ランダムな数字を取得します。
<float>rand55()
[-0.5, 0.5]の間隔から、ランダムな数字を取得します。
<integer>rand0X<integer>maxNumber
[0..maxNumber]の間隔から、ランダムな整数を取得します。
<point3>randSpherePoint()
半径が 1 の球のサーフェスから、ランダムな 3D ポイントを取得します。
<point3>randDivergeVector <point3>vectorToDiverge <angle>maxAngle
指定された maxAngle の角度を越えない範囲で、所定のベクトルから分岐するランダムなベクトルを取得します。
<integer>numParticles()
現在のイベントのアクション リスト内のパーティクル数です。
<boolean>addParticle()
単一のパーティクルを追加します。
パーティクルの追加期間を定義するには、.particleTime を使用します。パーティクル エージを 0 に設定するには、.particleAge=0 を使用します。パーティクルの位置、速度、方向などを定義するには、その他のメソッドを使用します。
<boolean>addParticles <integer>amount
「amount」パーティクルを追加します。
<boolean>deleteParticle <index>index
所定のインデックスの付いた単一のパーティクルを削除します。
<boolean>deleteParticles <index>startIndex <integer>amount
startIndex から開始して、「amount」パーティクルを削除します。
<index>getParticleID <index>particleIndex
所定のインデックスの付いたパーティクルの ID を取得します。
<boolean>hasParticleID <index>particleID <&index>particleIndex
particleIndex は入/出力パラメータです
イベントに所定の ID のパーティクルが存在するかどうか確認します。
パーティクルが存在する場合は、particleIndex がパーティクルのインデックスになります。
<boolean>isParticleNew <index>particleIndex
パーティクルがイベントに到着したかどうかを検査します。
<boolean>isParticleNewByID <index>particleID
所定の ID のパーティクルがイベントに到着したかどうかを検査します。
<time>getParticleTime <index>particleIndex
パーティクルの現在のステータスの期間を取得します。
<time>getParticleTimeByID <index>particleID
指定された ID を持つパーティクルの期間を取得します。
<void>setParticleTime <index>particleIndex <time>time
パーティクルの現在のステータスの期間を変更します。
<void>setParticleTimePrecise <index>particleIndex <time>time <float>fraction
フレーム タイムと割合の値を使用して、サブフレーム精度を持つインデックス付きパーティクルの期間を設定します。
<void>setParticleTimeByID <index>particleID <time>time
指定された ID を持つパーティクルの期間を設定します。
<void>setParticleTimePreciseByID <index>particleID <time>time <float>fraction
フレームと割合の値を指定して、サブフレーム精度を持つ指定された ID のパーティクルの期間を設定します。
<time>getParticleAge <index>particleIndex
インデックスで指定されたパーティクルのエージを返します。
<time>getParticleAgeByID <index>particleID
指定された ID を持つパーティクルのエージを返します。
<void>setParticleAge <index>particleIndex <time>age
インデックスで指定されたパーティクルのエージを設定します。
<void>setParticleAgeByID <index>particleID <time>age
指定された ID を持つパーティクルのエージを設定します。
<time>getParticleLifespan <index>particleIndex
インデックスで指定されたパーティクルのスパン期間を返します。
<time>getParticleLifespanByID <index>particleID
指定された ID を持つパーティクルのスパン期間を返します。
<void>setParticleLifespan <index>particleIndex <time>lifespan
インデックスで指定されたパーティクルのスパン期間を、指定された期間の値に設定します。
<void>setParticleLifespanByID <index>particleID <time>lifespan
指定された ID を持つパーティクルのスパン期間を、指定された期間の値に設定します。
<time>getParticleEventTime <index>particleIndex
インデックスで指定されたパーティクルのイベント期間を返します。
<time>getParticleEventTimeByID <index>particleID
指定された ID を持つパーティクルのイベント期間を返します。
<void>setParticleEventTime <index>particleIndex <time>eventTime
インデックスで指定されたパーティクルのイベント期間を設定します。
<void>setParticleEventTimeByID <index>particleID <time>eventTime
指定された ID を持つパーティクルのイベント期間を設定します。
<point3>getParticlePosition <index>particleIndex
インデックスで指定されたパーティクルの位置を返します。
<point3>getParticlePositionByID <index>particleID
指定された ID を持つパーティクルの位置を返します。
<void>setParticlePosition <index>particleIndex <point3>position
インデックスで指定されたパーティクルの位置を設定します。
<void>setParticlePositionByID <index>particleID <point3>position
指定された ID を持つパーティクルの位置を設定します。
<point3>getParticleSpeed <index>particleIndex
インデックスで指定されたパーティクルの速度を返します。
<point3>getParticleSpeedByID <index>particleID
指定された ID を持つパーティクルの速度を返します。
<void>setParticleSpeed <index>particleIndex <point3>speed
インデックスで指定されたパーティクルの速度を設定します。
<void>setParticleSpeedByID <index>particleID <point3>speed
指定された ID を持つパーティクルの速度を設定します。
<point3>getParticleAcceleration <index>particleIndex
インデックスで指定されたパーティクルの加速度を返します。
<point3>getParticleAccelerationByID<index>particleID
指定された ID を持つパーティクルの加速度を返します。
<void>setParticleAcceleration <index>particleIndex <point3>acceleration
インデックスで指定されたパーティクルの加速度を設定します。
<void>setParticleAccelerationByID <index>particleID <point3>acceleration
指定された ID を持つパーティクルの加速度を設定します。
<point3>getParticleOrientation <index>particleIndex
インデックスで指定されたパーティクルの方向を返します。
<point3>getParticleOrientationByID <index>particleID
指定された ID を持つパーティクルの方向を返します。
<void>setParticleOrientation <index>particleIndex <point3>orientation
インデックスで指定されたパーティクルの方向を設定します。
<void>setParticleOrientationByID <index>particleID <point3>orientation
指定された ID を持つパーティクルの方向を設定します。
<angleAxis>getParticleSpin <index>particleIndex
インデックスで指定されたパーティクルのスピンを返します。
<angleAxis>getParticleSpinByID <index>particleID
指定された ID を持つパーティクルのスピンを返します。
<void>setParticleSpin <index>particleIndex <angleAxis>spin
インデックスで指定されたパーティクルのスピンを設定します。
<void>setParticleSpinByID <index>particleID <angleAxis>spin
指定された ID を持つパーティクルのスピンを設定します。
<float>getParticleScale <index>particleIndex
インデックスで指定されたパーティクルのスケールを返します。
<float>getParticleScaleByID <index>particleID
指定された ID を持つパーティクルのスケールを返します。
<void>setParticleScale <index>particleIndex <float>scale
インデックスで指定されたパーティクルのスケールを設定します。
<void>setParticleScaleByID <index>particleID <float>scale
指定された ID を持つパーティクルのサイズを設定します。
<point3>getParticleScaleXYZ <index>particleIndex
インデックスで指定されたパーティクルのスケールを返します。
<point3>getParticleScaleXYZByID <index>particleID
指定された ID を持つパーティクルのスケールを返します。
<void>setParticleScaleXYZ <index>particleIndex <point3>scale
インデックスで指定されたパーティクルのスケールを設定します。
<void>setParticleScaleXYZByID <index>particleID <point3>scale
指定された ID を持つパーティクルのスケールを設定します。
<matrix3>getParticleTM <index>particleIndex
インデックスで指定されたパーティクルの変換行列を返します。
<matrix3> getParticleTMByID <index>particleID
指定された ID を持つパーティクルの変換行列を返します。
<void>setParticleTM <index>particleIndex <matrix3>transformationMatrix
インデックスで指定されたパーティクルの変換行列を設定します。
<void>setParticleTMByID <index>particleID <matrix3>transformationMatrix
指定された ID を持つパーティクルの変換行列を設定します。
<boolean>getParticleSelected <index>particleIndex
インデックスで指定されたパーティクルの選択されたステータスを返します。
<boolean>getParticleSelectedByID <index>particleID
指定された ID を持つパーティクルの選択されたステータスを返します。
<void>setParticleSelected <index>particleIndex <boolean>selected
インデックスで指定されたパーティクルの選択されたステータスを設定します。
<void>setParticleSelectedByID <index>particleID <boolean>selected
指定された ID を持つパーティクルの選択されたステータスを設定します。
<mesh>getParticleShape <index>particleIndex
インデックスで指定されたパーティクルのシェイプをメッシュとして返します。
<mesh>getParticleShapeByID <index>particleID
指定された ID を持つパーティクルのシェイプをメッシュとして返します。
<void>setParticleShape <index>particleIndex <mesh>shape
インデックスで指定されたパーティクルのシェイプを、指定されたメッシュに設定します。
<void>setParticleShapeByID <index>particleID <mesh>shape
指定された ID を持つパーティクルのシェイプを、指定されたメッシュに設定します。
<void>setShapeForAllParticles <mesh>shape
すべてのパーティクルのシェイプを、指定されたメッシュに設定します。
<void>setParticleMtlIndex <index>particleIndex <index>materialIndex
インデックスで指定されたパーティクルのマテリアル インデックスを設定します。
<void>setParticleMtlIndexByID <index>particleID <index>materialIndex
指定された ID を持つパーティクルのマテリアル インデックスを設定します。
<void>setMtlIndexForAllParticles <index>materialIndex
すべてのパーティクルのマテリアル インデックスを、指定されたインデックスの値に設定します。
<void>setParticleMapping <index>particleIndex <int>mapChannel <point3>mapValue
インデックスで指定されたパーティクルのマッピングを、指定された Point3 型の値に設定します。
<void>setParticleMappingByID <index>particleID <int>mapChannel <point3>mapValue
指定された ID を持つパーティクルのマッピングを、指定された Point3 型の値に設定します。
<void>setMappingForAllParticles <int>mapChannel <point3>mapValue
すべてのパーティクルのマッピングを、指定された Point3 型の値に設定します。
<integer>getParticleInteger <index>particleIndex
インデックスで指定されたパーティクルの整数のチャネル値を返します。
<integer>getParticleIntegerByID <index>particleID
指定された ID を持つパーティクルの整数のチャネル値を返します。
<void>setParticleInteger <index>particleIndex <integer>integerValue
インデックスで指定されたパーティクルの整数のチャネル値を、指定された整数値に設定します。
<void>setParticleIntegerByID <index>particleID <integer>integerValue
指定された ID を持つパーティクルの整数のチャネル値を、指定された整数値に設定します。
<float>getParticleFloat <index>particleIndex
インデックスで指定されたパーティクルの浮動小数点のチャネル値を返します。
<float>getParticleFloatByID <index>particleID
指定された ID を持つパーティクルの浮動小数点のチャネル値を返します。
<void>setParticleFloat <index>particleIndex <float>floatValue
インデックスで指定されたパーティクルの浮動小数点のチャネル値を設定します。
<void>setParticleFloatByID <index>particleID <float>floatValue
指定された ID を持つパーティクルの浮動小数点のチャネル値を設定します。
<point3>getParticleVector <index>particleIndex
インデックスで指定されたパーティクルのベクトルのチャネル値を返します。
<point3>getParticleVectorByID <index>particleID
指定された ID を持つパーティクルのベクトルのチャネル値を返します。
<void>setParticleVector <index>particleIndex <point3>vectorValue
インデックスで指定されたパーティクルのベクトルのチャネル値を設定します。
<void>setParticleVectorByID <index>particleID <point3>vectorValue
指定された ID を持つパーティクルのベクトルのチャネル値を設定します。
<matrix3> getParticleMatrix <index>particleIndex
インデックスで指定されたパーティクルの行列のチャネル値を返します。
<matrix3> getParticleMatrixByID <index>particleID
指定された ID を持つパーティクルの行列のチャネル値を返します。
<void>setParticleMatrix <index>particleIndex <matrix3>matrixValue
インデックスで指定されたパーティクルの行列のチャネル値を設定します。
<void>setParticleMatrixByID <index>particleID <matrix3>matrixValue
指定された ID を持つパーティクルの行列のチャネル値を設定します。
<void>setParticleTestStatus <index>particleIndex <boolean>satisfy?
インデックスで指定されたパーティクルのテスト ステータスを、指定されたブール値に設定します。
<void>setParticleTestStatusByID <index>particleID <boolean>satisfy?
指定された ID を持つパーティクルのテスト ステータスを、指定されたブール値に設定します。
<void>setGlobalTestStatus <boolean>satisfy?
すべてのパーティクルのテスト ステータスを、指定されたブール値に設定します。
<void>setParticleTestTime <index>particleIndex <time>time
インデックスで指定されたパーティクルのテスト期間を、指定された期間の値に設定します。
<void>setParticleTestTimePrecise <index>particleIndex <time>time <float>fraction
インデックスで指定されたパーティクルのサブフレーム テスト期間を、指定された期間と割合の値に設定します。
<void>setParticleTestTimeByID <index>particleID <time>time
指定された ID を持つパーティクルのテスト期間を、指定された期間の値に設定します。
<void>setParticleTestTimePreciseByID <index>particleID <time>time <float>fraction
指定された ID を持つパーティクルのサブフレーム テスト期間を、指定された期間と割合の値に設定します。
<void>setGlobalTestTime <time>time
すべてのパーティクルのテスト期間を、指定された期間の値に設定します。
<void>setGlobalTestTimePrecise <time>time <float>fraction
すべてのパーティクルのサブフレーム テスト期間を、指定された期間と割合の値に設定します。