On this page |
このオペレータはVEXデータタイプの定数値をします。
このオペレータタイプを使用して、VOPネットワークにより定義されたVEXオペレータの異なるインスタンス化の間で変化しない値を作成します。 例えば、シェーディング関数により、値を2で乗算する必要がある場合、またはベクトルと{ 0, 1, 0 }の外積を求める必要がある場合、 Constant VOPを使用すると、2の値と{ 0, 1, 0 }が最も簡単に表示されます。 2の値または{ 0, 1, 0 }がシェーディングされるマテリアルのプロパティにより変化する可能性がある場合は、代わりにParameter VOPを使用します。
このオペレータと異なり、Parameter VOPでは、VOPネットワークを使用するOPタイプの各インスタンス化に対して異なる値を指定することができます。 例えば、VOPネットワークを使用してSurfaceシェーダ(SHOP)からサーフェスカラーにアクセスしたい場合、カラーをConstantではなくParameter VOPにします。
Outputs
Constant Value
このオペレータのパラメータにより指定された値です。
パラメータ
Constant Type
このオペレータにより出力する値のVEXデータタイプを指定します。 いくつかのケースでは、VEXデータタイプを表す場合、複数の方法があります。 例えば、ベクトルタイプは、3つの浮動小数点値または単一のカラー値として表示することができます。 このパラメータは、VEX値をどのように表示するかも指定します。 これにより、このオペレータから出力される値を定義するパラメータを決定します。
Default Values
VEX関数の定数値を表示します。
Constant Name
生成されたVEXコードとオペレータタイルの出力の両方で、このオペレータにより定義される定数の名前です。
出力
Constant Value
このオペレータのパラメータにより指定された値です。
Examples
The following examples include this node.
Stadium Crowd Example Example for Crowd Solver dynamics node
スタジアムのセットアップを説明した群衆サンプル。
このセットアップは、スタジアムの群衆を作成します。 回転するcheer_bboxオブジェクトをエージェントの境界ボックスとして使用しています。 エージェントがそのオブジェクトの中に入ると、座っている状態から応援している状態へ推移します。 数秒後には、応援している群衆がまた座っている状態に戻ります。
Note
アニメーションクリップは、シーンを再生する前にベイクするのに必要です。これは、サンプルをCrowdsシェルフから作成した場合に自動的に行なわれます。 そうでない場合は、シーンファイルを希望の場所に保存し、'/obj/bake_cycles' ROP NetworkのRenderをクリックして、ファイルを書き出します。 それらのファイルのデフォルトのパスは、${HIP}/agentsです。
Tip
群衆の一部だけをもっと高速にプレビューしたいのであれば、/obj/crowdsource/switch_all_subsectionにSwitchノードがあります。 そのスイッチを0に設定すると、すべてのエージェントが表示され、1に設定すると、一部のみが表示されます。
Street Crowd Example Example for Crowd Solver dynamics node
2つのエージェントグループによるストリートのセットアップを説明した群衆サンプル。
このセットアップは、2つのエージェントグループを作成します。 黄色のエージェントがゾンビで、ストリートのパスに沿います。青色のエージェントがぶらついている歩行者で、ゾンビが近づくと走ります。
エージェントの状態を変更するトリガーは、crowd_sim DOPNETでセットアップします。 ゾンビのグループは、信号との距離と信号の色を使用し、信号が赤になると停止状態に変わります。 生存者のグループは、ゾンビが近づくと走行状態に変わります。
Note
アニメーションクリップは、シーンを再生する前にベイクするのに必要です。これは、サンプルをCrowdsシェルフから作成した場合に自動的に行なわれます。 そうでない場合は、シーンファイルを希望の場所に保存し、'/obj/bake_cycles' ROP NetworkのRenderをクリックして、ファイルを書き出します。 それらのファイルのデフォルトのパスは、${HIP}/agentsです。
FlipColumn Example for FLIP Solver dynamics node
このサンプルでは、流体の色がStaticオブジェクトとの衝突で混色させる方法を説明しています。
FlipFluidWire Example for FLIP Solver dynamics node
このサンプルでは、Flip SolverとFluid Force DOPの使い方を説明しています。 Fluid Force DOPを使って、FLIP流体の動きに応じてワイヤーオブジェクトに力を加えています。 流体オブジェクト内に存在する流体の箇所にのみDragフォースを適用しています。
SpinningFlipCollision Example for FLIP Solver dynamics node
このサンプルでは、ジオメトリのVelocityベクトルに基づいて、 ジオメトリ上に撒き散らしたポイントから新しいパーティクルを生成して FLIP流体を作成する方法を説明しています。 また、流体用の衝突オブジェクトとして動作するように、 ジオメトリをセットアップする方法も説明しています。
DiffuseSmoke Example for Gas Diffuse dynamics node
このサンプルでは、Gas Diffuse DOPで煙シミュレーションの密度を拡散させる方法を説明しています。
このサンプルでは、RBDオブジェクトで押しつぶされる草をシミュレーションしています。 Furオブジェクトで草の葉を表現し、Wireオブジェクトで動きをシミュレーションしています。 単一のFurオブジェクトで草を表現し、その近辺の草の葉がそれに合わせて動きます。 硬さが異なるオブジェクトを追加すれば、不均一な動きを表現することができます。 "Complex Mode"を有効にすると、2つのオブジェクトを使って草が表現されます。 それぞれのカーブに設定した硬さは、Wireオブジェクトの"Angular Spring Constant"と"Linear Spring Constant"パラメータで調整することができます。
FluidGlass Example for Particle Fluid Solver dynamics node
このサンプルでは、グラスに注がれた滑らかな流体の流れを作成する方法を説明しています。
CurveForce Example for POP Curve Force dynamics node
このサンプルでは、POP Curve Forceノードを使って、パーティクルシミュレーションとFLIP流体シミュレーションの流れを制御する方法を説明しています。
2dfluid Example for Smoke Object dynamics node
2D流体をCOPにエクスポートして、それを画像シーケンスファイルとしてディスクに保存し、それをテクスチャマップ、変位マップなどに使う方法を説明しています。
BreakWire Example for Wire Solver dynamics node
このサンプルでは、ポイント単位でワイヤー拘束を壊す方法を説明しています。 Wire Solverで、'pintoanimation'という名前のアトリビュートを持つポイントを拘束するようにセットアップしています。
MotionVector Example for Mantra render node
このサンプルでは、後でVelocityのコンポジットをするために、モーションベクトルレイヤーを生成する方法を説明しています。
サンプルを読み込んで、5フレーム分をレンダリングしてください。画像ビューアでは、C
(カラー)からmotion_vector
に切り替えると、その結果を見ることができます。
このサンプルでは、アニメーションするランプと参照ランプの使い方を説明しています。
Down Hill Lava Flow Example for Material shader node
このファイルでは、傾斜が低い箇所にCrust(地殻)が集まって硬化する溶岩の流れを作成しています。このアニメーションは、シェーダで作成していて、ジオメトリそのものはアニメーションしていません。
Note
Lava(溶岩)マテリアルのパラメータのほとんどを、サーフェスノードで作成したPointアトリビュートで上書きしています。
FirePit Example for Material shader node
Note
このファイルでは、ジオメトリはアニメーションしていません。 テクスチャをアニメーションさせることで、すべてのアニメーションを表現しています。
炎は、UVテクスチャを簡単に適用できるようにグリッドで作成し、Magnet SOPを使ってメタボール周辺を歪ませています。
炎には、黄色または青のFlameテクスチャのどれかを割り当てています。
Flamesのopacity mask wrapをDecalに設定することで、テクスチャがFlameジオメトリの上部で単一ピクセルリングを繰り返して表示するのを回避しています。
また、flameOpacMap.jpg
というマスクファイルを使って、上部にFlameの形状を調整しています。
noise offsetを$T
でY軸を強くアニメーションさせることで、Flameが上昇しているように見せています。これは、Noise jitterもY軸に対して大きくなります。
炭は、変形させたグリッドにCopy Stampを適用した球で表現しています。
Attribute CreateSOPを使えば、SOPレベルでLava(溶岩)のテクスチャのパラメータを上書きしてCopy Stampすれば、$BBY
などのローカル変数を使ってテクスチャをアニメーションさせることができます。
そうすれば、テクスチャのCrust(地殻)とその値だけを使って、炭の上部の形状を修正することができます。
これは、炭の下部で使用するテクスチャのLava(溶岩)のアスペクト比を保持します。熱を発する炭の下部の残り火を表現するために、Lava(溶岩)の強度(Kd
アトリビュート)をスタンプしてアニメーションしています。
StyleDisplacement Example for Material shader node
このサンプルファイルでは、2つの四角形で構成されたオブジェクトに対して、片方の四角形にはバンプマップを、もう片方の四角形にはTrue Displacementが適用されています。 そのオブジェクトが複製されており、2番目のコピーでは、スタイルシートを使用して、それらの2つの四角形に対してマテリアルの割り当てを逆にしています。
LayerVariations Example for Agent Layer geometry node
このサンプルは、いろいろなジオメトリのバリエーションを持ついくつかのレイヤーを作成して、 それらのレイヤーをエージェントにランダムに割り当てる方法を説明しています。
RandomMaterial Example for Attribute String Edit geometry node
このサンプルでは、Attrib String Edit SOPを使って、文字列Primitiveアトリビュートの修正と、
プリミティブ単位でグリッドのカラーをランダム化する方法を説明しています。
サンプルでは、material_override
Primitiveアトリビュートの文字列値にdiff_int
を修正しています。
FurBall Example for Fur geometry node
このサンプルでは、Fur SOPがガイドカーブとスキンジオメトリに応じて髪の毛のようなカーブを作成する方法を説明しています。
FurBallWorkflow Example for Fur geometry node
このサンプルでは、Fur SOPとMantra Fur Procedural SHOPをアニメーションするスキンジオメトリに適用する方法を説明しています。 CVEXシェーダを使って、ジオメトリに割り当てられたアトリビュートに応じて髪の毛の見た目を定義しています。
FurPipelineExample Example for Fur geometry node
このサンプルでは、カスタムシェーダを使ってFur SOPで生成したファーの外観を定義する方法を説明しています。
FurTextureMap Example for Fur geometry node
このサンプルでは、テクスチャマップを使ってファーに色を付ける方法を説明しています。
PaintPoints Example for Paint geometry node
このサンプルでは、領域単位でポイント数を設定して、ジオメトリ上にペイントでポイントを撒き散らす方法を説明しています。
AlphaOmega Example for Points from Volume geometry node
このサンプルでは、Points From Volume SOPでFLIPシミュレーション用のターゲットゴールを作成して、指定したジオメトリを満たすようにします。
CircleSolvers Example for Solver geometry node
このサンプルは、ソルバノードを使用して、 常微分方程式により、オブジェクトをトランスフォームすることができるいろいろな方法を説明しています。
このサンプルには、6個の異なるソルバがあります。 また、評価基準として正確な解もあります。 ソルバは、以下の 初期条件を持つ結合常微分方程式を解く数値法です:
x' = y ; x(0) = 1 y' = -x ; y(0) = 0
常微分方程式の数値法は: Forward Euler, Runge-Kutta Second Order, Runge-Kutta Third Order, Runge-Kutta Fourth Order, および2つの方法で解かれるParker-Sochackiです。 あるバージョンでは、Parker-Sochackiは、5の位数でハードコード化されます。 別のバージョンでは、Parker-Sochackiは、ユーザーが階数を調整することができるfor loopで書き込まれます。
UnpackWithStyle Example for Unpack geometry node
このサンプルでは、アンパックと同時にスタイルシート情報を評価することができるUnpack SOPの機能について説明しています。 Nested Packed Primitiveでは、スタイル情報を維持しつつも部分的にアンパックできることを説明しています。 このサンプルでは、Python SOPを使って、プリミティブ単位でスタイルシートから情報を抽出する方法も説明しています。
DetectOverlap Example for Volume Merge geometry node
このサンプルでは、Volume SOPとVolume Merge SOPをプロシージャルに使って、たくさんの入力のボリュームの重複した領域を検出する方法を説明しています。
Fuzzy Logic Obstacle Avoidance Example Example for Fuzzy Defuzz VOP node
このサンプルでは、Fuzzy Logicコントローラを使用して実装されたエージェントの障害物回避とパスへの追従を説明しています。
このサンプルでは、If-Thenサブネットの外側からの"true"値、内側からの"false"値を持つIf-Then Block VOPの使い方を説明しています。
条件の結果がTrueなら、青いカラー、Falseなら赤いカラーが使われます。
このサンプルでは、If-Thenサブネットの外側からの"true"値、さらに外側からの"false"値も持つIf-Then Block VOPの使い方を説明しています。
条件の結果がTrueなら、青いカラー、Falseなら赤いカラーが使われます。
SimpleMetaImport Example for Meta-Loop Import VOP node
このサンプルでは、Meta-Loop Start、Meta-Loop Next、Meta-Loop Import VOPの使い方を説明しています。
入力ジオメトリ内のすべてのメタボールの密度の合計を計算し、それをComposite Network内で画像として作成しています。
PointCloudIterateAverage Example for Point Cloud Iterate VOP node
このサンプルでは、pciterate VOPを使ってpcopenで返されたポイントを平均化する方法を説明しています。 最初に、ZX平面上の円の内側を1に初期化した浮動小数点"check"チャンネルでポイントクラウドを生成します。 そして、pciterate VOPを使ってループでシェーダ内にポイントをフィルタリングして、"check"チャンネルの値を平均化します。 このサンプルで使われているポイントクラウドは、points.pcとしてアセット内に保存しています。
See also |