UE4よちよち勉強会_Shader勉強のまとめ(Material Editor Palette研究_Blend)

## Blends
[リファレンス](https://docs.unrealengine.com/latest/JPN/Engine/Rendering/Materials/Functions/Reference/Blends/index.html)

### Blendとは
Textureの色情報に数学的計算を実行して,特定の方法であるテクスチャを別のテクスチャに混ぜ合わせる関数

### 入力の種類(Vector3)
* Base (基本色)
* Blend (合成色)

Texture を受け取り、ある方法を用いて Base と Blend が混ぜ合わされます。

ブレンド方法は使用するブレンド関数の種類によって異なります.

### ALLBlendMaterialList

|function|detail|
|:--------------|:----------|
|Blend_ColorBurn|焼き込み|
|Blend_ColorDodge|Base を反転|
|Blend_Darken|Base と Blend の各 Pixel からより濃い値を選択|
|Blend_Difference|反転スタイル Effect を作成|
|Blend_Exclusion|Base と BlendTexture を半減させ, 混ぜ合わせ|
|Blend_HardLight|Base と Blend を一緒に Screen操作あるいは乗算|
|Blend_Lighten|Base と Blend の各 Pixel を比較してより明るい結果を返す|
|Blend_LinearBurn|Base を Blend へ加算して, 結果から値1を減算|
|Blend_LinearDodge|Base を Blend へ加算|
|Blend_LinearLight|Blend_Overlay の LinerVersion|
|Blend_Overlay|Base と Blend を一緒に Screen 操作あるいは乗算|
|Blend_PinLight|Base と Blend の明度を一緒に増減|
|Blend_Screen|Blend で Base を明るくする|
|Blend_SoftLight|Overlay をやわらかな明るさにした Version|

####  Blend_ColorBurn
##### ColorBurnとは,
`焼き込み(画像にパターンをかぶせ, patten の黒いところほど元の画像の色を濃く(暗く)することパターンが白の部分は不変)`

Blend が濃ければ濃いほど, その色を Texture の最終結果へ反映させます.
Blend する色が白の場合は色の影響を与えないため何も起こりません.

|item|説明|
|:------|:------|
|Base|ある方法で Blend Texture へ BlendされるBaseTexture |
|Blend|実行される Blend 操作のタイプに基づいて Base と混ぜ合わされる BlendTexture |

####  Blend_ColorDodge
Base を反転させて、そのカラーを合成色で分割することによって結果を明るくする.

|item|説明|
|:------|:------|
|Base|ある方法で Blend Texture へ BlendされるBaseTexture|
|Blend|実行される Blend 操作のタイプに基づいて基本色と混ぜ合わされる BlendTexture|

####  Blend_Darken
Base と Blend の各 Pixel からより濃い値を選択して機能します.
白の Blend は色の影響を与えないため何も変化しません.

|item|説明|
|:------|:------|
|Base|ある方法で Blend Texture へ Blend される BaseTexture |
|Blend|実行される Blend 操作のタイプに基づいて Base と混ぜ合わされる BlendTexture|

####  Blend_Difference
Blend から BaseTexture を減算して結果の絶対値を取り込むことによって反転スタイル Effect を作成.

|item|説明|
|:------|:------|
|Base|ある方法で Blend Texture へ BlendされるBaseTexture |
|Blend|実行される Blend操作のタイプに基づいて基本色と混ぜ合わされる BlendTexture |

####  Blend_Exclusion
Baseと BlendTexture を半減させてこれらを混ぜ合わせ, 結果を部分的に反転.

|item|説明|
|:------|:------|
|Base|ある方法で Blend Texture へ BlendされるBaseTexture |
|Blend|実行される Blend操作のタイプに基づいて基本色と混ぜ合わされる BlendTexture |

####  Blend_HardLight
明度と彩度を強くした  Blend_Overlay と同様に, Blend_HardLight も基本色と合成色をスクリーン操作または一緒に乗算します.
この関数は, 合成色が50％のグレーより明るい時は基本色と合成色が常にスクリーン操作によって混合されるように合成色を比較します.
Multiply 関数同様に, 基本色は合成色で乗算されます.最終結果のコントラスト、その後より強い出力となります.

|item|説明|
|:------|:------|
|Base|ある方法で Blend Texture へ Blend されるBaseTexture |
|Blend|実行される Blend操作のタイプに基づいて基本色と混ぜ合わされる BlendTexture |

####  Blend_Lighten
Base と Blend の各 Pixel を比較してより明るい結果を返す.

|item|説明|
|:------|:------|
|Base|ある方法で Blend Texture へ BlendされるBaseTexture |
|Blend|実行される Blend操作のタイプに基づいて基本色と混ぜ合わされる BlendTexture |

####  Blend_LinearBurn
Base を Blend へ加算して, 結果から値１を減算.

|item|説明|
|:------|:------|
|Base|ある方法で Blend Texture へ BlendされるBaseTexture |
|Blend|実行される Blend操作のタイプに基づいて基本色と混ぜ合わされる BlendTexture |

####  Blend_LinearDodge
Base を Blend へ加算.

|item|説明|
|:------|:------|
|Base|ある方法で Blend Texture へ BlendされるBaseTexture |
|Blend|実行される Blend操作のタイプに基づいて基本色と混ぜ合わされる BlendTexture |

####  Blend_LinearLight
Blend_Overlay の LinerVersion で、明度と彩度への影響がよりきつくなります.
この関数は, Blend が 50 ％の Grey より明るい時は Base と Blend が常に Screen 操作によって混合されるように Blend を比較.
Multiply 関数同様に、基本色は合成色で乗算されます.

|item|説明|
|:------|:------|
|Base|ある方法で Blend Texture へ BlendされるBaseTexture |
|Blend|実行される Blend操作のタイプに基づいて基本色と混ぜ合わされる BlendTexture |

####  Blend_Overlay
Base と Blend を一緒に Screen 操作あるいは乗算.
この関数は、合成色が 50 ％のグレーより明るい時は基本色と合成色が常にスクリーン操作によって混合されるように合成色を比較します.Multiply 関数同様に、基本色は合成色で乗算されます.

|item|説明|
|:------|:------|
|Base|ある方法で Blend Texture へ BlendされるBaseTexture |
|Blend|実行される Blend操作のタイプに基づいて基本色と混ぜ合わされる BlendTexture |

####  Blend_PinLight
Blend_Overlay のように、 Blend_PinLight は Base と Blend の明度を一緒に増減します.
この関数は, Blend が 50 ％のグレーより明るい時は Base と Blend が常にスクリーン操作によって混合されるように合成色を比較します.
Multiply 関数同様に, Base は Blend で乗算されます.
コントラストが和らいでオーバーレイのきつい効果もやや控えめになります.

|item|説明|
|:------|:------|
|Base|ある方法で Blend Texture へ BlendされるBaseTexture |
|Blend|実行される Blend操作のタイプに基づいて基本色と混ぜ合わされる BlendTexture |

####  Blend_Screen
Blend で Base を明るくする.
両方の色から値 1 を引いて、両値を乗算した後に、その結果から値 1 を減算しています.

|item|説明|
|:------|:------|
|Base|ある方法で Blend Texture へ BlendされるBaseTexture |
|Blend|実行される Blend操作のタイプに基づいて基本色と混ぜ合わされる BlendTexture |

####  Blend_SoftLight
Overlay をやわらかな明るさにした Version です.
この関数は, Blend が 50 ％の Grey より明るい時は Base と Blend が常に Screen操作によって混合されるように合成色を比較します.
Multiply 関数同様に、基本色は Blend で乗算されます.
コントラストが和らいでオーバーレイのきつい効果もやや控えめになります.

|item|説明|
|:------|:------|
|Base|ある方法で Blend Texture へ BlendされるBaseTexture です|
|Blend|実行される Blend操作のタイプに基づいて基本色と混ぜ合わされる BlendTexture |