Distribution Shader v4

「Distribution Shader v4」の編集履歴(バックアップ)一覧はこちら

Distribution Shader v4 - (2018/07/10 (火) 22:20:38) の1つ前との変更点

追加された行は緑色になります。

削除された行は赤色になります。

#image(Distribution_Shader_01.jpg) Node Type: Colour Shader *ノード説明と目的: 『Distribution Shader』ノードは非常に便利なシェーダです。任意の色がどこに現れるかをコントロールしながら、何かに色を適用する事が出来ます。これを使用して、他のシェーダをマスクする、またはポピュレーションが現れる場所をコントロールするなどの作業に役立てるマスクを生成する事も出来ます。この、高度や勾配に基づいて何が表示されるかをコントロールしたり、同様に適用範囲と分散の設定を備えているのは、『Surface Layer』と同じ構成概念の多くを共通しています。単純に、『Surface Layer』から"Luminosity"、"Displacement"、"Smoothing"タブを取った基本的なバージョンです。 例として、草のポピュレーションがあります。これを斜面45度以上の急勾配には生やしたくない場合、『Distribution Shader』をポピュレーションの密度シェーダに関連付けます。『Distribution Shader』、「Slope constraints」タブに移り、"Limit maximum slope"のチェックボックスを有効にし、"Maximum slope angle"に45の値を設定します。ポピュレートを実行すると、草は勾配45度以下の地形の部分にだけ生えている事が確認できます。 このシェーダの出力として最も一般的な使用方は、"マスク"として働きます。 **設定 |Colour|カラー|これは、マスクの生成に使用する色を設定します。マスクはここで設定した色から黒にグラデーションします。通常は、白色を使用してマスクを生成します。| ***Coverage/Breakupタブ |&bold(){Coverage}|カバレッジ|シェーダによって生成されたマスクのカバレッジ(適用効果)をコントロールします。これは、マスク全体の透明度を変更するようなものです。カバレッジ値が低い程適用効果が薄れます。&br()&image(Distribution_Shader_coverrage.jpg,width=350,height=211)&br()デフォルトの地形サーフェスに白色を塗りつぶしたサンプル。左側がCoverage値が0.5、右側が1.0での比較画像。| |&bold(){Fractal breakup}|フラクタル分散|チェック時、関連付けたフラクタルノード(デフォルトで『Fractal breakup 01(Power fractal shader)』ノードが設定されています)を使用してマスクを分散します。これにより平凡なマスクにランダム性とテクスチャの風味をより多く取り入れます。フラクタル分散量は、すぐ下のコントロールで設定しますが、"Coverage"の量と相互作用するため、例えば、"Coverage"が1の場合は分散は大幅に低減し、"Coverage"が1未満の場合、"Fractal Breakup"の値が高くなるほど分散効果が高まります。推奨値は、"Coverage"が0.5、"Fractal Breakup"が1でおよそのシーンに対応する事が出来ます。ただし、"Coverage"が1であっても、高度/斜面の制限のファジー領域には分散効果は得られます。&br()&image(Distribution_Shader_breakup.jpg,width=750,height=211)| |&bold(){Invert breakup}|分散の反転|チェック時、フラクタル分散のノイズパターンを反転した効果を与えます。| |&bold(){Mask by shader}|シェーダでマスク処理|チェック時、関連付けたシェーダを使って、マスクが出現する場所をさらに詳細にコントロールする事が出来ます。デフォルトでは、マスクは惑星全体を覆っています。しかし、『Image Map Shader』を使用して、画像による形状をマスク適用する事が出来ます。また、『Painted Shader』を使用して、マスクが出現する場所を描画して指定する事も出来ます。さらに、『Simple Shape Shader』を使用してマスクを六角形のエリアに限定する事など、関連付けるシェーダで多彩な表現が可能です。&br()シェーダのノイズパターンの白い部分はマスクがより不透明度を示し、黒に近付く程マスクの透明度またはカバレッジをコントロールします。RGBチャンネルを個別にコントロールする事も出来ます。| |&bold(){Invert mask}|マスクを反転|チェック時、指定したマスク処理を行う特定の範囲を反転します。| |&bold(){Mask as coverage}|マスクをカバレッジとして使用|Terragenでは、ディスプレースメントパイプラインとカラー/シェーディングパイプラインを別々の時間に処理します。まず、すべてのシェーダを使用してオブジェクトのサーフェスを変位させて最終変位が分かるようにします。次に、すべてのシェーダを使用して最終変位に応じたカラー/シェーディングを計算します。このため、シェーダをマスクのカバレッジとして使用する場合、デフォルトではディスプレースメントとカラー/シェーディングの値を持つため、入力として変位と色をからマスクを生成します。ディスプレースメントを持たないシェーダを関連付けた場合は、色のみでマスクを生成します。例えば、『Displacement shader to scalar』ノードを使用して値に変換する必要があります。このノードは、カラー/シェーディングパイプライン中の入力からの変位を要求し、スカラまたはグレースケールの色として使用できる値に変換します。これはマスクとして使う事が出来ますが、『Colour adjust shader』や『Smooth step scalar』ノードなどを使って値を0と1の間の範囲に再マップする必要があります。&br()覚書: データは通常、上から下へ(シェーダの出力端子から別のノードの入力端子へ)流れているように見えますが、処理は実際には逆に計算しています。オブジェクトまたはシェーダは、その入力端子からデータを要求します。従って、シェーダによって生成される値は、それらが要求される内容物に依存します。&br()&br()>[[Topic: question about maskより>https://planetside.co.uk/forums/index.php/topic,23499.msg239678.html#msg239678]]| ---- ***Altitude Constraintsタブ #image(Distribution_Shader_altitude.jpg) |Limit maximum altitude||| |Maximum altitude||| |Max alt fuzzy zone||| |Limit minimum altitude||| |Minimum altitude||| |Min alt fuzzy zone||| |Altitude key||| |Use Y||| ---- ***Slope Constraintsタブ #image(Distribution_Shader_slope.jpg) |||| |||| |||| |||| |||| |||| ---- ***Tweaksタブ #image(Distribution_Shader_tweaks.jpg) |||| |||| |||| |||| |||| |||| ----
#image(Distribution_Shader_01.jpg) Node Type: Colour Shader *ノード説明と目的: 『Distribution Shader』ノードは非常に便利なシェーダです。任意の色がどこに現れるかをコントロールしながら、何かに色を適用する事が出来ます。これを使用して、他のシェーダをマスクする、またはポピュレーションが現れる場所をコントロールするなどの作業に役立てるマスクを生成する事も出来ます。この、高度や勾配に基づいて何が表示されるかをコントロールしたり、同様に適用範囲と分散の設定を備えているのは、『Surface Layer』と同じ構成概念の多くを共通しています。単純に、『Surface Layer』から"Luminosity"、"Displacement"、"Smoothing"タブを取った基本的なバージョンです。 例として、草のポピュレーションがあります。これを斜面45度以上の急勾配には生やしたくない場合、『Distribution Shader』をポピュレーションの密度シェーダに関連付けます。『Distribution Shader』、「Slope constraints」タブに移り、"Limit maximum slope"のチェックボックスを有効にし、"Maximum slope angle"に45の値を設定します。ポピュレートを実行すると、草は勾配45度以下の地形の部分にだけ生えている事が確認できます。 このシェーダの出力として最も一般的な使用方は、"マスク"として働きます。 **設定 |Colour|カラー|これは、マスクの生成に使用する色を設定します。マスクはここで設定した色から黒にグラデーションします。通常は、白色を使用してマスクを生成します。| ***Coverage/Breakupタブ |&bold(){Coverage}|カバレッジ|シェーダによって生成されたマスクのカバレッジ(適用効果)をコントロールします。これは、マスク全体の透明度を変更するようなものです。カバレッジ値が低い程適用効果が薄れます。&br()&image(Distribution_Shader_coverrage.jpg,width=350,height=211)&br()デフォルトの地形サーフェスに白色を塗りつぶしたサンプル。左側がCoverage値が0.5、右側が1.0での比較画像。| |&bold(){Fractal breakup}|フラクタル分散|チェック時、関連付けたフラクタルノード(デフォルトで『Fractal breakup 01(Power fractal shader)』ノードが設定されています)を使用してマスクを分散します。これにより平凡なマスクにランダム性とテクスチャの風味をより多く取り入れます。フラクタル分散量は、すぐ下のコントロールで設定しますが、"Coverage"の量と相互作用するため、例えば、"Coverage"が1の場合は分散は大幅に低減し、"Coverage"が1未満の場合、"Fractal Breakup"の値が高くなるほど分散効果が高まります。推奨値は、"Coverage"が0.5、"Fractal Breakup"が1でおよそのシーンに対応する事が出来ます。ただし、"Coverage"が1であっても、高度/斜面の制限のファジー領域には分散効果は得られます。&br()&image(Distribution_Shader_breakup.jpg,width=750,height=211)| |&bold(){Invert breakup}|分散の反転|チェック時、フラクタル分散のノイズパターンを反転した効果を与えます。| |&bold(){Mask by shader}|シェーダでマスク処理|チェック時、関連付けたシェーダを使って、マスクが出現する場所をさらに詳細にコントロールする事が出来ます。デフォルトでは、マスクは惑星全体を覆っています。しかし、『Image Map Shader』を使用して、画像による形状をマスク適用する事が出来ます。また、『Painted Shader』を使用して、マスクが出現する場所を描画して指定する事も出来ます。さらに、『Simple Shape Shader』を使用してマスクを六角形のエリアに限定する事など、関連付けるシェーダで多彩な表現が可能です。&br()シェーダのノイズパターンの白い部分はマスクがより不透明度を示し、黒に近付く程マスクの透明度またはカバレッジをコントロールします。RGBチャンネルを個別にコントロールする事も出来ます。| |&bold(){Invert mask}|マスクを反転|チェック時、指定したマスク処理を行う特定の範囲を反転します。| |&bold(){Mask as coverage}|マスクをカバレッジとして使用|Terragenでは、ディスプレースメントパイプラインとカラー/シェーディングパイプラインを別々の時間に処理します。まず、すべてのシェーダを使用してオブジェクトのサーフェスを変位させて最終変位が分かるようにします。次に、すべてのシェーダを使用して最終変位に応じたカラー/シェーディングを計算します。このため、シェーダをマスクのカバレッジとして使用する場合、デフォルトではディスプレースメントとカラー/シェーディングの値を持つため、入力として変位と色をからマスクを生成します。ディスプレースメントを持たないシェーダを関連付けた場合は、色のみでマスクを生成します。例えば、『Displacement shader to scalar』ノードを使用して値に変換する必要があります。このノードは、カラー/シェーディングパイプライン中の入力からの変位を要求し、スカラまたはグレースケールの色として使用できる値に変換します。これはマスクとして使う事が出来ますが、『Colour adjust shader』や『Smooth step scalar』ノードなどを使って値を0と1の間の範囲に再マップする必要があります。&br()覚書: データは通常、上から下へ(シェーダの出力端子から別のノードの入力端子へ)流れているように見えますが、処理は実際には逆に計算しています。オブジェクトまたはシェーダは、その入力端子からデータを要求します。従って、シェーダによって生成される値は、それらが要求される内容物に依存します。&br()&br()[[Topic: question about maskより>https://planetside.co.uk/forums/index.php/topic,23499.msg239678.html#msg239678]]| ---- ***Altitude Constraintsタブ #image(Distribution_Shader_altitude.jpg) |Limit maximum altitude||| |Maximum altitude||| |Max alt fuzzy zone||| |Limit minimum altitude||| |Minimum altitude||| |Min alt fuzzy zone||| |Altitude key||| |Use Y||| ---- ***Slope Constraintsタブ #image(Distribution_Shader_slope.jpg) |||| |||| |||| |||| |||| |||| ---- ***Tweaksタブ #image(Distribution_Shader_tweaks.jpg) |||| |||| |||| |||| |||| |||| ----

表示オプション

横に並べて表示:
変化行の前後のみ表示: