You are on page 1of 7

texture size, how big it is being displayed in this window, and how big it is shown in the game.

The
area highlighted in orange is the user input for maximum texture size. You can easily scale some of
these down by typing in the desired size. Also, it can be restored to the default by simply click on the
reset to default yellow arrow on the right of the highlighted orange area.

2. Setting up your Instance


Simply replace your existing material instance with changing of parent material class. Replace it by
MM_EP_MinimumPBR

You can also create a new one by Right Click on Master Material and Create a Material Instance,
then apply to the mesh.

8
Input basic textures to material instance.

Note: As options are enabled more texture inputs will appear.

To add different slots for each map instead pack map Tick either “Separate Pack”.

For this example, I only need Normal, AO and Roughness and have ticked the required boxes. From
here I have added my “Pack Map” texture that is now available and can choose what channels the
information is on and manipulate it to my liking. Also, I have enabled SVC (lerp between 0-1 values)
inside roughness settings.

If you want to use value instead of a texture map you need to untick 'use map' and tick the checkbox
'modify value' then set a value.

9
3. Packed Map pipeline setup
What is a Pack Map?
A "Pack Map" sometimes known as "Merge map", "RMA Texture" or "Combination Map" refers to a
single texture that holds 3-4 sets of input information (grayscale maps). Usually split into the RGBA
channels which are masked off in a material, for example:

In this Master Material it takes advantage of using ‘pack map’ and allows the user to choose what
channels are used for what.

The "Pack Map" can contain within it any or all of the following information:
 Ambient Occlusion,
 Roughness,
 Metallic,
 Opacity,
 Heightmap,
 Dispacement,
 Emissive,
 ColorMask,
 BlendMask.
These can be in any of the RGBA channels as channel parameters that can be changed in the material
instance.

10
RGB or RGBA
Be aware that the RGBA texture map with alpha has a cost of 2 texture maps in memory. In other
words, if we use DXT5 compression and only one RGBA texture we will have 4 map channels & fewer
requests to 'texture assets'. But if we will use DXT1 compression in two RGB texture maps we will have
6 map channels and the same memory cost. For example:

RGB DXT1 2048*2048px = 2731kb


RGBA DXT5 2048*2048px = 5461kb
In this situation, I will prefer two DXT1 maps without alpha channel with more channels space for
maps (5462kb).
Choose what better suits your current project.

Texture naming
To better understand what each map includes I just add the first two letters in the ending suffix
name of the texture map. The sequence defines the location and letters R+G+B+A. For example:

T_WoodCoal01a_AORH – (R) AmbientOcclusion, (G) Roughness, (B) Heightmap.


T_WallMetal01b_HRM – (R) Heightmap, (G) Roughness, (B) Metallic.
T_WoodCoal01a_E – (R) Emissive, (G) empty, (B) empty.

UE4 engine does PBR calculations in linear color space. In this color space, all values are computed in
a 0 to 1 range, where 0 is black and 1 is white. Monitors don’t display colors in this way though,
because our eyes tend to have greater sensitivity to dark values than light values. To compensate for
this, most monitors use sRGB color space, which raises input values to around the power of 2.2. This
makes them darker and skews the 0 to 1 range to display more dark values than light values. Since
textures are usually created in sRGB color space this works well for textures that visually show up in
the game, such as base color, but can cause issues with textures that are supposed to represent
numerical values, such as a Roughness /Ambient Occlusion/Metallic masks. UE4 uses sRGB by default,
we must convert them in our ‘Pack Map’ to linear color space, this can be done by unticking sRGB
checkbox inside texture parameters or just changing compression type to Masks.
Be sure to set Masks compression in 'Pack map'.

If you do not fully understand the concept of 'Pack map' you can read more info here.

11
4. Albedo | Base Color
Setup Base Color
Firstly change parent master material to ‘MM_EP_MinimumPBR+Parameters’ or create a new one. It also
comes in all other master materials, besides ‘MM_EP_MinimumPBR’. Untick the checkbox 'Use Color Map'
and tick ‘Modify Color Value’ under the 'Albedo Settings' section. Now you can set a color for the base
color.

Base Albedo Adjustment

 ‘Adjustment : Use Contrast’ - Function boosts the contrast of an input by remapping the high
end of the histogram to a lower value, and the low end of the histogram to a higher one.
 ‘Adjustment : Use Desaturation’ - Desaturates input, or converts the colors into shades of gray,
based a certain percentage.
 ‘Adjustment : Use Hue Shift’ - Function offsets the current hue value of an input color by a given
percentage. This percentage is 1-based and centered around the color wheel. For instance, a
shift of 0.5 (50%) will shift to a complimentary hue, or the hue on the opposite side of the
color wheel. A shift of 1.0 (100%) gives no change, as this is the equivalent of rotating
completely around the color wheel.
 ‘Adjustment : Use SCurve’ – Function boosts contrast of an image by interpolating the values of
each channel values of an image along an S-curve.
 ‘Use Adjustment Before Color Blend’ - The switch which applies all adjustment before or after
color blend.
 ‘Use Fuzzy Shading’ - This function emulates a surface similar to velvet or moss and is similar to
a Fresnel calculation.

Color Blend
Turn on a checkbox 'Use Color Map' and go to the 'Albedo Settings' section.

 ‘Use Color Blending’ - Paints over the base color with a new one color using linear
interpolation.
 ‘Color Blend: Painting Value’ – Set lerp value for a painting.
 ‘Color Blend: Use Color Painting Mask’ – Set mask for the color blend painting.
 ‘Color Blend: Use Multiply’ – Use multiply instead lerp in the color blend map.
 ‘Color Blend: Invert Alpha Mask’ – Allows inverting blend mask.
 ‘Color Blend: Modify Painting Mask Value’ – Use the 'power' expression to modify the blend mask
value.
 ‘Color Blend: Use 3 Color Technique’ – Giving the ability to blend three colors instead of one with
lerp using the mask . You can set up each color. Use the RGBA mask (R - first color, G -
second color, B - third color and Alpha for non-color area).
 ‘Color Blend: 3 Color Technique: Use Blend Main Color’ – Allows setting the main color before 3
color blend. It can be turned to lerp or multiply like a base color blend before.

12
5. Ambient Occlusion | Roughness | Metallic | Specular
All these masks use the same setup for control with little difference.

 ‘Invert Map’ – Allows inverting texture map values.


 ‘Modify Power’ – The map channel will be multiplied by self X value times.
 ‘Use SVC’ – Smart Values Control is a linear interpolate between 0-1 values.
 ‘Use 3 Point Values Control’ – The function takes in a channel map and remaps the values of
each channel across 3 points (white, black, middle). This is similar to applying a Levels
adjustment in Photoshop. It provides full control in that it gives the user the ability to adjust
the interpolation of lights, darks, and grays (gamma).

 ‘Modify Value’ – Simply multiply the current channel map by value.


 ‘Modify SVC’ – By default, SVC uses values '0.9' for white and '0.1' for black. This checkbox will
give the ability to modify those values.
 ‘Channel’ – It allows selecting which channel map will be used from the texture map.

13
Note: An option '- Get Specular Channel From Pack' will use 'Pack map' texture for the source of the
channel map for the Specular.

Note: An option 'Use Fresnel For Specular' will allows using the Fresnel area for the better result it visible
only when you face the sun.

Note: If you want to use value instead of a texture map you need to untick 'use map' and tick the
checkbox 'modify value' then set a value.

6. Normal | Detail
Normal Setup
Firstly you need to tick the ‘Use Normal Map №1’ in the Main settings of instance and add the texture
into the ‘Normal Map’ slot, inside group ‘_Texture Maps’.
 ‘Modify Normal Value’ – It allows you to modify the normal map value.
 ‘Optimize Blue Channel’ - Turned by default - UE4 will use BC5 compression which doesn't store
Z component aka blue channel information so that we will replace it by 1 value.
 ‘Modify №1 Blue Channel Value’ – Allows you to set the blue value for the detail normal map.
 ‘Optimize Normal Method’ – If it will be disabled then the normal map will compute a blue
channel by (sqrt = xx+yy) method. Enabled by default for better performance.

Detail Setup
Firstly you need to tick the ‘Use Normal Map №2’ in the Main settings of instance and add the texture
into the ‘Normal Map №2’ slot, inside group ‘_Texture Maps’.

Under the ‘Normal № 2 Settings’


Tick the checkbox 'Control Normal №1 Intensity' & 'Control Normal №2 Intensity' under the ‘Normal № 2
Settings’. Now you can control over detail map intensity and default normal map intensity – this gives
better control of blend between maps.

 ‘Modify Detail Scale’ – Allows


scaling the UV.
 ‘Optimize Blue Channel’ - Turned
by default - UE4 will use BC5
compression which doesn't
store Z component aka blue
channel information so that we will replace it by 1 value.
 ‘Modify №2 Blue Channel Value’ – Allows you to set the blue value for the detail normal map.

14

You might also like