I am trying to understand how to cleanly and efficiently layer two images, which will both be connected to a Bump node's Height input, while retaining the ability to control the Strength value of each contributing image. One of the images will also be used as the Factor value in a Mix Shader node. Here is my node work with an empty area where my question is.


  • $\begingroup$ Did you try using a mix color node (maybe on add?) and a math node on each input to it? $\endgroup$ – VRM May 16 '15 at 22:12
  • $\begingroup$ Should work well with MixRGB node set to multiply $\endgroup$ – Denis May 16 '15 at 22:30
  • $\begingroup$ MixRGB set to multiply does work well but doesn't leave me with the option to adjust the strength of each incoming image. When I use Math nodes before each input into the Mix RGB, I still don't seem to be able to control the strength. $\endgroup$ – Bryson Jack May 16 '15 at 23:40
  • $\begingroup$ @BrysonJack you can adjust it with the factor value on the MixRGB node $\endgroup$ – Denis May 16 '15 at 23:48
  • $\begingroup$ i.stack.imgur.com/OXeRS.gif $\endgroup$ – user1853 May 16 '15 at 23:56

Keep in mind, the contrast of the textures you use is important. If one texture is extremely contrast and one has only grey values ranging from 0.3 to 0.5, the contrast one will almost always be the more visible one.

Using the Bump node is basically a game of values (brightness/darkness of the pixel). You should convert coloured images to black and white using Converter->RGB to BW node (they are converted anyway)

Also keep in mind that both textures should have brighter colors on the "hills" and darker colors in the "crevices" of the surface. Alternatively you can check Invert on the Bump node to have it the other way, but both textures should correspond with each other in this area.

Bump node calculates the normal map based on the difference of the values of the pixels given to it. So basically you should be careful when mixing two or more textures - their actual values and the way they are mixed using MixRGB is important. You can also use Math node by the way. Since values of bitmaps are actually math anyway but both ways have their pros and cons.

It mostly depends on what you are actually trying to accomplish. Usual case I've seen is mixing the main UV mapped bump map of the model with a second one which is for detail - little perforations/scratches/bumps/glued dirt. This detail bump map is usually mapped using Texture Coordinate->Object and the texture having Box mapping instead of Flat mapping. Detail bump maps don't really need elaborate UV mapping since it's only important that the detail mapping is uniform.

Initially I should give some information about MixRGB node, since it's important here. It has 2 inputs. The top one is the "main" input. It is the one that the chosen function will alter based on the input values of the lower input and then this altered version of it can be grabbed on the output. This is true for all function except Mix, which basically mixes the inputs according to the factor (fac) you choose.

Whenever you want to mix a detail bump map onto an actual bump map, remember that there are basically 2 ways to choose from depending on the given case.

  1. Crevices

If it's a general bump map of bricks and then a detail bump map of the little perforations in the brick (meaning you want to add crevices and not hills), it should be mixed so the crevices are darker than the upper input. The way you mix it is dependent on the actual texture's contrast and values.

  1. Hills

On the other hand, when the detail bump map is meant to depict small bumps (hills - like dried color drops) on the surface, it should be mixed so the bumps are lighter than the upper input. The way you mix it is dependent on the actual texture's contrast and values.

As to the other question of controlling which texture is stronger. You must give me an actual material and textures for which to solve this, since it would take way too much time to talk about all types of possibilities.

All wrapped up, there is really no true way to mix bump maps in an organized way unless you get your actual bitmap texture values organized. Ie what is lighter/darker than the other. Most of the time, a simple MixRGB->Mix might work. But I'd recommend using a Converter->Math->Multiply before putting the values in the inputs of the MixRGB. You can then change the values in the multiply nodes to strengthen/weaken the bump textures.

  • First tip - You can always check the values you are working with using the Emission shader. Remember though, that in Properties->Scene->Color Management you often need to change the exposure or gamma to see certain changes in values, since your monitor can't dislay all of them most of the time.

  • Second tip -Try using Converter->Color Ramp or Color->RGB Curves to alter the textures without using 2D editor.

| improve this answer | |

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.