Page MenuHomeAnticto

Mutable for Unreal Engine | Texture Layer Node
Updated 402 Days AgoPublic

imagen.png (178×182 px, 17 KB)


Function

Combine multiple textures into one.


Use Cases

Create a cloth pattern with independently modifiable colors mixed


Node Properties

imagen.png (213×314 px, 13 KB)
Layers (array): Add one for each texture to blend to the base texture.
Effect (array element blend mode dropdown): Blend mode that is used to mix this layer with the rest. It's applied to the result of blending the previous layers with the base texture. Layers with smaller indexes are blended first.

If the blend mode is "Modulate", and no mask is provided, this layer completely overrides the base texture and any layer with a lower index, so it's not recommended.
To apply an effect to a single channel, use the Texture To Channels and Texture From Channels nodes as seen in the following example:
image.png (715×1 px, 135 KB)

Input Pins

Layer (index): Texture or color that is blended with the effect chosen at the node property with the same index. One appears for each element in the Layers array node property.

This texture pin is special, it can also take Color input directly. If the input of this pin is the result of a texture from color node, passing the color directly improves performance! This is okay:
ok.png (130×571 px, 28 KB)
But this is perfect, as it gives more performance:
imagen.png (130×375 px, 27 KB)

Mask (index): This texture controls the zones that are affected by the layer with the same index. White means full effect, black means no effect, grayscale partially applies the layer. One appears for each element in the Layers array node property.
Base: Base texture upon which all layers are applied, from lower index to higher index.


Output Pins

Image: Texture image resulting of blending all layers, from low index to high index, applying the corresponding effects to each layer limited by the corresponding mask.


Blending Effects

NOTE: In order to understand the formulas presented bellow you need to take in mind that: E == Generated color I == Base color M == Blending color
  • COTLE_MODULATE: Blending operation where the base layer gets covered by the blending layer with no color data blending what so ever. It must not be used without a mask since doing so will make the blending image fully cover the base image.

E = M

Only the data of the base layer that gets not covered by the blending layer will show through.

Base Layer (I)Blending Layer (M)Composited (E)
HighresScreenshot00000.png (993×608 px, 445 KB)
HighresScreenshot00001.png (993×608 px, 435 KB)
HighresScreenshot00001.png (993×608 px, 435 KB)
  • COTLE_MULTIPLY: This layering effect generates an image darker than the original ones wherever the base image was not black.

E = M * I

Base Layer (I)Blending Layer (M)Composited (E)
HighresScreenshot00000.png (993×608 px, 445 KB)
HighresScreenshot00001.png (993×608 px, 435 KB)
HighresScreenshot00000.png (993×608 px, 415 KB)
  • COTLE_SCREEN: This operation produces the inverted result from the COTLE_MULTIPLY layering operation. Wherever either layer was darker than white the output is brighter.

E = 255 - ( 255 - I ) * ( 255 - M )

Base Layer (I)Blending Layer (M)Composited (E)
HighresScreenshot00000.png (993×608 px, 445 KB)
HighresScreenshot00001.png (993×608 px, 435 KB)
HighresScreenshot00001.png (993×608 px, 440 KB)
  • COTLE_OVERLAY: It darkens the image but not as much as the COTLE_MULTIPLY layering operation.

E = I * ( I + ( 2 * M * ( 255 - I )))

Base Layer (I)Blending Layer (M)Composited (E)
HighresScreenshot00000.png (993×608 px, 445 KB)
HighresScreenshot00001.png (993×608 px, 435 KB)
HighresScreenshot00000.png (993×608 px, 447 KB)
  • COTLE_ALPHA_OVERLAY: Blending effect that does add one image on top of the other using the alpha data on the blending image. Very useful for adding decals to characters or surfaces. As it uses the alpha data of the blending image itself the usage of a mask image is not required.

E = I + M * ( 255 - I )

Base Layer (I)Blending Layer (M)Composited (E)
HighresScreenshot00000.png (1×787 px, 477 KB)
HighresScreenshot00001.png (1×787 px, 454 KB)
HighresScreenshot00002.png (1×787 px, 485 KB)
NOTE: The image used as Blending layer used for the example is very low resolution compared to the resolution of the base image. Using a higher resolution blending image will give you better results.
  • COTLE_HARDLIGHT: Useful blending effect if what you are trying to do is to obtain a combined image with bright colors and sharp edges. The effect is more or less noticeable depending on the amount of noise present on the provided images.

If M > 128 then
E = 255 - ( 255 - I ) × ( 255 -2 * ( M - 128 ))

If M <= 128 then
E = I * ( 2 * M )

Base Layer (I)Blending Layer (M)Composited (E)
HighresScreenshot00000.png (993×608 px, 445 KB)
HighresScreenshot00001.png (993×608 px, 435 KB)
HighresScreenshot00000.png (993×608 px, 447 KB)
  • COTLE_SOFTLIGHT: This layering effect does tend to make the edges softer and the colors not so bright.

Mix = COTLE_MULTIPLY
Screen = COTLE_SCREEN
E = (( 255 - I ) * Mix ) + ( I * Screen )

Base Layer (I)Blending Layer (M)Composited (E)
HighresScreenshot00000.png (993×608 px, 445 KB)
HighresScreenshot00001.png (993×608 px, 435 KB)
HighresScreenshot00000.png (993×608 px, 447 KB)
  • COTLE_DODGE: Produces an image that is usually lighter but might present some colors inverted.

E = I / ( 256 - M )

Base Layer (I)Blending Layer (M)Composited (E)
HighresScreenshot00000.png (993×608 px, 445 KB)
HighresScreenshot00001.png (993×608 px, 435 KB)
HighresScreenshot00000.png (993×608 px, 439 KB)
  • COTLE_BURN: This blending effect tends to make the image darker, similar to the COTLE_MULTIPLY layering effect.

E = 255 - ( 255 - I ) / M

Base Layer (I)Blending Layer (M)Composited (E)
HighresScreenshot00000.png (993×608 px, 445 KB)
HighresScreenshot00001.png (993×608 px, 435 KB)
HighresScreenshot00000.png (993×608 px, 416 KB)
  • COTLE_NORMAL_COMBINE: Blending method designed to accurately blend normal maps together. It takes into consideration the directionality of the provided normal maps to produce an accurate blend.
Last Author
daniel
Last Edited
Feb 15 2022, 5:37 PM

Event Timeline

ricard changed the visibility from "All Users" to "Public (No Login Required)".
ricard edited the content of this document. (Show Details)
daniel edited the content of this document. (Show Details)
daniel published a new version of this document.