2011年10月27日木曜日

メモ:Basic: Attributes I (ビデオチュートリアル)by Peter Quint

Basic: Attributes I by Peter Quint


- 変数
- グローバル変数と標準(スタンダード)変数
- いつ変数を使う事が出来るのか
- 変数とアトリビュート
- グループとオペレーションをコントロールするためにアトリビュートを使う
- アトリビュートのプロモーションとトランスファー


------------------
sphere(SOP)のRadiusYに以下のエクスプレッションを入力して説明
フレームを進めると球体がY方向にスケールされる。
$FF

$:変数を示す
F:Floating Number(浮動小数点数)
F:フレームナンバー

$FFは変数であり。フレームナンバーを示す。、ジオメトリのアトリビュートとは一切関係ない。


--------------
<どうすれば利用できる変数を知ることが出来るのか?>

ヘルプでチェックする。
1)現在使用しているノードのヘルプを見て目的の変数を見つける。
2)そこになければローカル変数を使ってみる。。使えるときもあるし、そうでないときもある。
(ローカル変数は各ノードのヘルプのページに書かれている。)

Global expression variables
内容別に使える変数がリストされている。

Standard Variables
ジオメトリのアトリビュートで利用できる変数
これはどこでも使えるアトリビュートではない。
たとえばSphereSOP内のRadiusYで、ポイントポジション(TX)を参照することは意味がない。


例:Sphere(SOP)のアウトプットにTransform(SOP)を接続
ヘルプでTransformノードを見てみる。
Local Variablesというセクションがある。
それらが使う事ができる変数である。
ここをみると$TXのStandard Variablesは使う事ができないが、$CEXなどは使えることがわかる。

例:Sphere(SOP)のアウトプットにpolyextrude(SOP)を接続
TranslateZに以下のエクスプレションを入力(ビデオではYに入力しているがZのほうが見やすい)
$PR*0.01
$PRはPrimitive Numberであり、polyextrudeのローカル変数である。





--------------
<アトリビュートは自分で作成できる:カスタムアトリビュート>
例:Sphere(SOP)のアウトプットにattribcreate(SOP)を接続
Name:myvar
Class:Point
Type:Float
Value:rand($PT)

$PTはポイントナンバー。
attribcreate(SOP)のローカル変数でもあり、スタンダード変数でもある。
このケースでは上位にSphere(SOP)があり、そこからPointの情報があるので、そのインプット情報を利用してランダム数を生成している。
Details viewでmyvarの値を確認することが出来る。

attribcreate(SOP)をネットワークからはずしてみるとわかるが、インプット情報がないと$PTは機能しない。
(このノードは調理できずエラーとなる)

--------------
<自作したアトリビュートをどのように使うのか?>
例:attribcreate(SOP)のアウトプットにgroupgeometry(SOP)を接続
Entity: Points
Operation: Group by Expression
Filter Expression:$MYVAR > 0.5
0.5より大きな$MYVAR値をもつポイントをグループ化する。


変数名は大文字になっている。
これはgroupgeometry(SOP)のLocal Variableを空欄にした場合、デフォルトでは、Name入力した名前を大文字にして変数名となる。groupgeometry(SOP)をMMBクリックで表示される情報からもそれがわかる。



(注)このメモはビデオチュートリアルを見ての私的なメモで、完全な記録ではありません。
各自の利用は自己判断でお願いします。
抜け落ち、間違いの指摘は歓迎です。

0 件のコメント:

コメントを投稿