| On this page | |
| Since | 21.0 |
このノードは、反応拡散シミュレーションブロックの終了を示します。
反応拡散シミュレーションは、化学物質の反応と拡散の複雑な2Dシミュレーションです。
このノードは、Reaction-Diffusion Block Begin COPとペアで使用してください。
このノードは、化学物質間の相互作用の挙動を記述してシミュレーションするために2つのメソッドを採用しています。 Gray-Scott モデルでは、2種類の化学物質の相互作用を定めた2つの入力パラメータを用いて、それらの化学物質の反応を起こさせます。 Kenjiro Maginu モデルでは、2種類の化学物質の相互作用を定めた3つの入力パラメータを用いて、それらの化学物質の反応を起こさせます。
このノードの使用方法は、Reaction-Diffusion(反応拡散)ソルバを参照してください。
Note
コンパイルされたCOPネットワークはシミュレーションをサポートしていません。
パラメータ ¶
Signature
ノードの出力を制御するシグネチャ。
Pattern (Mono)
様々なオプションの再マッピングと出力補正が適用された化学パターンのMono出力。
Chemical (UV)
原料化学値のUV出力。
Note
Chemical 出力モードは、原料化学値を出力するので、色のカスタマイズを制御することはできません。 そのため、結果が視覚的に見づらい場合があります。
Model
化学物質の相互作用を記述するのに使用されるモデル。これにはプリセットが含まれています。
Gray-Scott
2種類の化学物質の相互作用を定めた2つの入力パラメータを用いて、それらの化学物質の反応を起こさせます。
Kenjiro Maginu
2種類の化学物質の相互作用を定めた3つの入力パラメータを用いて、それらの化学物質の反応を起こさせます。
Preset
Gray-Scott プリセットパターンを作成するためのパラメータを設定します。
Small Waves
より小さな振動波。
Large Waves
より大きな振動波。
Spots
自己複製する細胞。
Blinking Blobs
互いに跳ね返しながら点滅効果を生み出す微小な振動波。
Worms
ミミズやヘビに似た細長い伸び縮みする塊。
Labyrinth
多数のコーナーやループを持つ迷路のような複雑なパターン。
Negatons
サブクリティカル(亜臨界的)な細胞構造を再現します。
Chaos with Negatons
安定状態と混沌状態の間で揺れ動く反応で、亜臨界的な細胞が混在します。
Spatiotemporal Chaos
安定した状態と混沌状態の間で揺れ動く反応。
Preset
Kenjiro Maginu プリセットパターンを作成するためのパラメータを設定します。
Blobs & Spots
大きな塊の中に存在する微小な細胞の塊。
Wormy
単一の細胞が断片化されたミミズのような構造。
Abstract
大きな塊の中に小さな塊を含んだ抽象的な塊状の見た目を生成します。
Noisy
混沌としたノイズパターン。
Brusselator
高速に振動する螺旋状の見た目を生成します。
Foamy
泡に似た混沌としたパターン。
Oily
大きな塊からゆっくりと拡散するパターン(入力が既に混沌としていた場合)。
Nearly Chaos
安定領域と不安定領域を含んだ混沌としたパターン。
Moving Brusselator
より混沌とした構造と移動する螺旋を含んだBrusselatorパターン。
Time ¶
Simulate
シミュレーションを有効にすると、ブロックの出力が入力に直接フィードバックされ、フィードバックループが作成されます。 これは、複雑なモーションやシミュレーションに役立ちます。
Reset Simulation
Simulate が有効な時、これは、シミュレーションキャッシュ全体をクリアします。
Iterations
非シミュレーションモードで実行する反復回数。
Iterations per Step
非シミュレーション、シミュレーション、ライブシミュレーション内で、ステップ毎に実行する反復回数。
Live Simulation
Simulate が有効な時、これは、ライブシミュレーションを有効にして、インタラクティブで非決定的なシミュレーションモードに入ります。 ライブシミュレーションはプレイバーとは独立してシミュレーションされるので、キーフレームやキャッシュには無関係です。
このパラメータ(と関連パラメータ)は、プレイバーに依存しないサンドボックスモードとして設計されています。
Tip
Live Simulation は、Houdiniの他のシミュレーションタイプのように結果を保存しないので、結果を保存したいのであればStash COPを使用します。
Toggle Live Simulation
Live Simulation が有効な時、これは、そのライブシミュレーションを一時停止したり、再開することができます。
Tip
他にも、 Live Simulationボタンを使用することで、ライブシミュレーションを一時停止したり、再開することができます。
詳細は、クックのコントロールを参照してください。
Live Tick
Live Simulation が有効な時、ここには、ライブシミュレーション内の現行ティック(フレーム)番号が表示されます。
Time Scale
Simulate が有効な時、ここには、ブロック内の時間のスケール値を指定します。
1の値は通常の速度を維持し、1より大きい値はシミュレーションを速く動かし、1未満の値はシミュレーションを遅く動かします。
この値は、化学反応方程式内で使用されます。
Note
この実装の反応拡散は解像度に依存します。 解像度を変えると不安定になることがありますが、これはタイムステップが大きすぎることが原因です。 この不安定さを解消するには、 Substeps の数を増やすか、 Time Scale の数を減らすことによって、時間ステップのサイズを小さくします。 これには、ランタイムコストを伴います。 方程式の明示的な積分には、(反応のスケールと同様に)結果が解像度に依存しないことを確認するためのタイムステップの制限がありますが、これは不安定さを引き起こしてしまう可能性があります。
解像度を2倍にした場合、安定を保つには Substeps の約4倍(または Time Scale の約4分の1)が必要になることがあります。
Substeps
各シミュレーションフレームにおけるサブステップ数を設定します。
Caching ¶
シミュレーションモード中でのフレームのキャッシュ化。
Note
Live Simulation が有効の場合、 Start Frame 、 Cached Frames 、 Checkpoint Rate のパラメータは適用されなくなります。
Caching
フレームのキャッシュ化を有効にします。
Start Frame
Simulate が有効な時、ここには、シミュレーションを開始するHoudiniプレイバー上のフレームを指定します。
Cached Frames
Simulate が有効な時、ここには、現在のフレームより前のフレームを何フレーム分キャッシュに残すのかを指定します。
Checkpoint Rate
Simulate が有効な時、ここには、このノードが断続的に単一フレームをキャッシュ化する頻度を指定します。
例えば、これを24に設定すると、24、48、72といったフレームがキャッシュ化されます。
これによって、ランダムなスクラブ操作は、チェックポイントフレーム以降のフレームだけを再クックすればよいため速くなります。
0に設定すると、チェックポイント機能が無効になります。
Reaction Parameters ¶
Reaction Parameters セクションのパラメータは敏感です。 Reaction-Diffusionは非線形な挙動を示します。 つまり、速い変化は反応全体を反転させたり、駄目にしたり、吹き飛ばすような状態にさせたりします。 これにはいくつかの理由があります:
-
入力パラメータの組み合わせによっては、分岐点の近くに位置するため、制御パラメータのわずかな変化で反応の安定が急激に変化することがあります。 ノードは'Normalized'モード( Switch to Raw Values がオフの時)でこの問題の解決を試みますが、それでも発生することがあります。
-
入力パラメータを速く変更しすぎることは、化学物質が完全に成長して、入力パラメータが再び変更される前に新しい拡散パラメータに安定化するのに十分な時間がないことを意味します。
Switch to Raw Values
パラメータと入力レイヤを原料化学値として解釈します。
Note
これはオフにしておくことを推奨します。 というのも、正規化されたパラメータとレイヤは、不安定になる可能性を抑えるように矯正され、最も芸術的に面白い結果を生み出し、反応が消滅したり過剰反応したりするのを防ぐからです。
Scale Multiplier
拡散速度に対して相対的に反応速度を変化させることで、パターンのサイズを変更します。 これによって、極端なスケールでは反応速度が遅くなり、微小スケールでは反応が完全に停止します。 したがって、より大きなスケールほど、その要求されたスケールまで十分に成長させるには、反応をより多くの反復回数/ティックで実行させる必要が出てきます。
Note
Reaction-Diffusion Block Begin COPの
alpha、beta、gammaの入力レイヤは、これらのパラメータを上書きします。
Reaction-Diffusion Block Begin COPのscaleおよびcoefficientの入力レイヤは、これらのパラメータを乗算します。
Gray-Scott Model ¶
技術的な説明
A' = DiffusionA * LaplacianA - (AB*AB) + α(1.0 - A)
B' = DiffusionB * LaplacianB + (AB*AB) - (β + α) * B
Alpha α (Feed)
化学物質Aは、指定された“feed”速度でシミュレーションに追加されます。
これは、Aが1.0を超えないように(1.0f - A)でスケールされます。
Beta β (Kill)
化学物質Bは、指定された“kill”速度でシミュレーションから除去されます。
これは、Bが0.0を下回らないように(kill + feed) * Bでスケールされます。
Kenjiro Maginu Model ¶
技術的な説明
A' = DiffusionA * LaplacianA + α * (A - A*A*A) - B
B' = DiffusionB * LaplacianB + β * (A - γ * B)
Alpha α
Aの非線形自己アクティベーションを制御します。 実質的には、これはAの反応強度です。
Beta β
化学物質Bが化学物質Aの存在に対して反応する強さを決定します。
Gamma γ
BがAの方へ引き戻される強さを制御します。 実質的には、これは減衰係数であり、Bが無限に成長するのを防ぎます。
Diffusion Coefficients ¶
このノードのモデルは、拡散係数が互いに異なる比率である必要があります。 これらを変更すると、複雑で面白いパターンを生成することができますが、すぐに不安定になってしまう可能性があります。
Note
Reaction-Diffusion Block Begin COPのcoefficient入力は、これらのパラメータを乗算します。
Diffusion A
化学物質Aの拡散速度を制御します。
一般的には、 Gray-Scott モデルは1.0に、 Kenjiro Maginu モデルは1.0に設定します。
Diffusion B
化学物質Bの拡散速度を制御します。
一般的には、 Gray-Scott モデルは0.5に、 Kenjiro Maginu モデルは1.0に設定します。
Boundary ¶
SDFシェイプをboundary入力に接続することで、反応が自然とその指定した形状へ成長させることができます。
SDF Shape(例えば、Starシェイプ)を作成し、それをReaction-Diffusion Block Begin COPの
boundary入力に接続します。
反応が上手く発生した後、 Boundary Threshold を使用してその境界エッジを膨張/収縮させることができます。
Note
activationマスクには、この境界形状の有効領域内にアクティベーション領域がなければなりません。
そうでない場合、反応は成長できません。
Invert Boundary
入力境界形状を反転させます。
Boundary Threshold
境界形状のオフセット。 値を上げると境界形状が膨張し、値を下げると収縮します。
Boundary Smoothing
境界形状をぼかす量。 これによって、反応が境界の縁から収縮します。 反応スケールが低い場合、平滑化値が高いと不安定になる場合があります。
Output Correction ¶
出力パターンの見た目を変更します。
これらのパラメータは、 Signature がPattern (Mono)の場合にのみ有効です。
Invert
出力パターンの値を反転します。
Normalize Model
出力値の範囲を再マッピングし、モデル間で値の一貫性を保ちます。
一部のモデルやモードでは“弱い”値が存在するので、これが役に立ちます。
Clamp Minimum
画像の最小ピクセル値。
Clamp Maximum
画像の最大ピクセル値。
入力 ¶
chemical
Reaction-Diffusion Block Begin COPからの入力化学物質。
feedback
現在のフィードバックデータを格納したケーブル。 これは入力へフィードバックされます。 このケーブルの構造は、Reaction-Diffusion Block Begin COPで指定された初期構造と同じでなければなりません。
出力 ¶
product
出力パターン。
feedback
現在のフィードバックデータを格納したケーブル。
| See also |