particleFloat サンプル スクリプト
 
 
 
 

   

パーティクル フロー クイック ナビゲーション

説明:

次のスクリプトは、各パーティクルの実数値をパーティクル ID の 10 分の 1 または生成時のインデックス番号として設定します。

用途:

Force オペレータおよび Speed_Keep_Apart オペレータの .Force 値を制御するために使用できます。

Force : ヘルパー

Speed_Keep_Apart : ヘルパー

効果:

最初のパーティクルは小さい実数値を取得するため[影響]値も小さくなります。後続のパーティクルはそれぞれ前のパーティクルよりも大きい実数値を取得します。この結果、パーティクルが後に生成されるほど、オペレータ内のスペース ワープの影響をより多く受けることになります。

例:

--ChannelsUsed ハンドラは、スクリプトに提供される
--チャンネルを定義します。
--すべてのチャンネルのリストについては、
--インタフェース: MaxscriptParticleContainer を参照してください。
--ハンドラに渡されるパラメータ pCont には
--スクリプトの適用先のパーティクル コンテナが含まれています。
on ChannelsUsed pCont do
(
pCont.useFloat = true--Float チャンネルを有効にします。
)
 
--初期化時には Init ハンドラが呼び出されます。
--この例では使用しません。
onInit pContdo
(
)
 
--Proceed ハンドラには、パーティクルに割り当てる
--メイン スクリプトが含まれています。
--ハンドラに渡されるパラメータ pCont には
--スクリプトの適用先のパーティクル コンテナが含まれています。
on Proceed pCont do
(
--パーティクル数を取得
count = pCont.NumParticles()
 
--1 からパーティクルの数だけループ
for i in 1 to count do
(
 
--コンテナ内のパーティクル インデックスに現在の i 値を設定します。
--コンテナ内の i 番目のパーティクルが現在のパーティクルになります。
pCont.particleIndex = i
 
--現在のパーティクルの particleFloat チャンネル値を
--現在のパーティクルの particleID を 10.0 で割った値に設定します。
--新しいパーティクルほど、particleFloat 値が大きくなります。
pCont.particleFloat = pCont.particleID/10.0
)--i ループを終了
)--Proceed を終了します。
 
--Release ハンドラを使ってクリーンアップを行います。
--この例では使用しません。
on Release pCont do
(
)
関連事項