2012年4月8日日曜日

TPのNodeメモ

3dsMaxのプラグイン、ThinkingParticlesのノードのメモになります。随時更新しながら纏めていければなと。。。
全体を見やすくしたいのですが、ブログの仕様上編集しにくくなるので、ご理解ください。

※プログラム等、ペーペーな僕の解釈ですので間違っているところなどあればコメントください{%ピクトハカセhdeco%}

��------------------------------------------------
■Conditions(条件)


・C Distance:○○と○○の距離の範囲を条件とする。

例)position1にパーティクルの位置をつなぎ、position2にオブジェクトの位置をつなぐ。
C Distanceプロパティのradiusの値により、パーティクル、オブジェクトからの範囲を設定する。
二つの距離がradius1からradius2までの範囲に達したときに真を返す
又、 Distanceはposition1からposition2の方向を得ることも出来る。※向きはposition2からposition1の向きになるので注意
距離も得ることが出来る。(距離をスピードにつなぐことにより1秒で目的地に到着する。スピードの式として距離/秒なので。)

・Particle Age:パーティクルの期間を条件とする。

注意)RelativeのTime1,2の値は、lifeSpanで決定する相対値で0~100の範囲になる。
だがTime1,2の値にInputで値を入れると0-1の範囲で相対値が決定される。

・Threshold:○○と○○の値の範囲を条件とする。insideをcheckすることでThreshold1,2の範囲内か外かを決める。

・InMesh:メッシュ内部のものを条件とする

・Light:ライトのフォールオフ内を条件とする

��------------------------------------------------

■Operators

□Standard

・Alignment:パーティクルの向きを設定する
プロパティ)
Direction of Travel:移動ベクトルに沿って、オブジェクトを向かせたい場合
User Defined:特定の方向ベクトルを決めたいとき、あるいは、あなたがInputデータストリームTo Position入力を使いたいとき、このオプションは選ばれなければなりません。

・Velocity:向きとスピードを持ったノード

・Particle Die:寿命を設定

・ParamBlock:オブジェクトが持っている値にアクセスできるノード。
例)ピックしたオブジェクトのトランスフォームの各値や割り当てられているモディファイヤの各値にアクセスできる。
  ワイヤパラメーターのような感じ。

・Memory:様々な値を保管し、別のダイナミクスでその値を利用できる。

□Dynamics

○follow系ノード
 ・BringTo:パーティクルを引き寄せるときに使う。InFrameで何フレームで引き寄せるか
 ・Follow:任意のオブジェクトに動きをあわせたいとき
 ・Orbit:あるモノの周りを旋回する
 ・Position Follow:任意のオブジェクト向かってにパーティクルをついていかせたいとき。
 ・Path Follow:パスに沿って
 ・Surface Follow:サーフェスに沿って
 ・PAttach:パーティクルをあるパーティクルにアタッチさせる
・Force:影響力の強さを設定できるノード。
・StdForce:maxにあるフォースヘルパーを使用できるノード。
注意)スペースワープのバインドをTPヘルパー(シーンにあるxTPの事)に行わなければならない
・Friction:摩擦
・Rep.Bounce:反発


□Generator

・Born:一点からパーティクルを発生させる。パラメータの少なさから、Position Bornを使えばよいと思う。



・Position Born:一点からパーティクルを発生させ、発生位置をコントロールできる。多くのプロパティがあり、これで基本のパーティクルアニメーションがつくれる。PFでいうStandardFlowが一つのノードとしてある感じ。

プロパティ)
Pistol Shot:一回の呼び出しで発生するパーティクル数。
>Per Call:呼び出されるたびに発生する。

mass:質量。例として、衝突するときなどに使われる


・Obj.To Particle:オブジェクトをパーティクル化したいときやその逆

□Shape
・Geom Instance:インスタンスオブジェクトを作成
・Shape Blend:シェイプをスケールでブレンドする。黒がスケールゼロと考える。ダイナミクス内のノードの順番によってBlend In,Outが決まる。

□Material
・Paint:ピックオブジェクトにパーティクルでテクスチャを描く
・Material Time:個々のパーティクルにアサインされたマテリアル(アニメーション素材)を制御することができる。
プロパティ)
User Defined:Material Timeのフレームにある絵を表示する。
OperatorTime:O Material Timeに値が入ってから。TimeBaseオペレーターによりTimeの値を変化させ、時間を伸縮することができる。
Particle Age Absolute:パーティクル発生からアニメート開始となる。
Particle Age Relativ:LifeSpanの相対値として、Material Timeによってアニメテクスチャの寿命が決まる。lifespan>Material Timeなら寿命が延び、逆なら縮む。



□Initiator(値を発する起因的ノード)
・PPass:一つのグループの任意の値を取り出せる
・PPassAB:二つのグループの任意の値を取り出せる
プロパティ)
All:GroupAとB共に全て
Distance:GroupAとBの距離で判断。その中で最も近いやつのみと最も遠いやつのみというのも選べる。

・PSelection:ピックしたパーティクルを取り出せる
・Iterator:繰り返し値を出力
プロパティ)
Count:繰り返す数



□Tools
CollisionMap:コリジョンしたところにマップを作成しマップ出力する

□ShapeCollision
・SC:



□Reference
・Set Ref.:particle Fromeをparticle Toへ参照させる。
・Get Ref.:インプットされたパーティクルの参照先を読み込む
��------------------------------------------------


■Helper


□Standard

・node:シーンにあるオブジェクトをピックできるヘルパー

例)オブジェクトやヘルパーなど指定したものから、パーティクルを発生したい場合はH Nodeを追加しピックする。
 オブジェクトの場合、発生場所をを詳細に設定したい場合(ボリュームからの発生はH Volume Pos)はH Surface Posを追加し、H NodeとNode同士をつなげる。んでH Surface PosとBornオペレータのPositionをつなげる。

・Random:ランダムな値を取り出す。

プロパティ)New Value Per (~あたりの新しい値)
       Call:呼ばれるごとにランダムに値を呼び出す
       Frame/Iteration;フレームごとにランダムに値を呼び出す

       animation:初めにランダムに呼び出された値を一定に与える

・Get Direction:ある方向(alignment)を得て、ある軸の方向をアウトプットする。alignmentとは正規化されたベクトルである。つめり方向のみを持った値ということ。

・Point3:x,y,zの3つの値を持つノード


・Intersect:あるパーティクルから、あるノードオブジェクトにある方向を持たせrayを飛ばす。パーティクルとオブジェクト(ポリゴンレベル)の距離を測りたいときなどに使う。C Distanceに似ているがポリゴンレベルで値を調査できるというところが、このノードの持ち味と思う。

)プロパティ
 speed:Rayの速度
 speed as ray length:ONにすると交差点までの距離を速度とする
 two sided:ONにすると両面が使えるようになる。法線が逆だと交差点を判定できないからこれをチェックするのだと思う。


・timer :パーティクルの時間を計るストップウォッチ的なもの。パーティクルエイジにも使える。
計算されている全てのパーティクルと、その時間を出力することができる。

・value to time:スカラー値を時間値に置き換える。時間地に置き換えることで、キーフレーム調整が可能。


□Position

・Path Position:パスに沿って配置

プロパティ)
units 絶対値単位で配置する。
relative 始点を0、終点を1とし配置する。0.5なら中心。

・Surface Pos:オブジェクトのサーフェイス(頂点、エッジ、面)からパーティクルを発生させたいときなど

注意)inputがnodeのみだと、outputのpositionの値はランダムに1フレづつ別の場所(頂点、エッジ、面)に割り当てられる。inputにparticleがあると、outputのpositionの値は固定される.(つまりパーティクルを受け取り、その一つ一つのパーティクルにポジションを与えている)


・StdEmitter:PFのエミッタータイプが使える






0 件のコメント:

コメントを投稿