For the past month or so I have been learning how to pretty much learn blender from scratch so bear with me. Currently I am trying to add a second colour to the objects I have created. I have worked out how to subdivide and select sections, then assign them two different materials/colours. But this process only allows me to change colours in straight lines corresponding to the subdivisions. I would like to re create something like the provided image, where the second colour is very fluid and is more like a pattern. Thank you
-
$\begingroup$ Do you know how to use an image texture? You can create and draw an image texture in Blender, or load an image prepared in a separate program. You could also generate a material procedurally. $\endgroup$– Markus von BroadyCommented May 20, 2021 at 20:14
2 Answers
What you are doing at the moment (I think), is applying different materials with different colors to certains faces i.e. parts of the mesh. The example image you posted is using one material for the complete mesh and distributed by some texture which is used as mix factor between two colors. A simple example - very simple, you can do so much more complex things, but I would suggest you watch more tutorials on these things because this is too much to put in single answer here - you can see in the following screenshot:
-
$\begingroup$ FYI Musgrave Texture returns a range of -1 to 1, that's why your color ramp has to be put so close to 0. $\endgroup$ Commented May 20, 2021 at 20:39
-
$\begingroup$ You definitely hit the nail on the head with guessing my current process. Thank you for your answer, your example has been very helpful. What you have provided has gotten me very close to what I was after. Thank you for pointing me in the right direction. $\endgroup$ Commented May 20, 2021 at 20:41
-
$\begingroup$ @AllenSimpson I know, I didn't think that this was important for a very basic information on how to mix two colors together... and I just used Musgrave because it resembled the example image pattern without closer investigation. $\endgroup$ Commented May 20, 2021 at 20:44
I recommend using a single material, generated procedurally.
- Head to the Shading screen.
- In your object material, Add a Textures -> Musgrave Texture node.
- Now Add a Convert -> Math node, and set it from “Add” to “Greater than,” and pipe the Musgrave Texture node’s Height output into the Math node’s Value input.
- Add a Color -> MixRGB node, and set its two colors as discovered.
- Connect the Math node’s Value output to the MixRGB node’s Factor input.
- Connect the MixRGB node’s Color output to the Principled BSDF’s Base Color input.
- Adjust the Math node’s Threshold value as desired, probably to about zero.
PS: You can use Voronoi, Color Ramp, Mix Shader, and Normal Map to add glitter.
-
1
-
$\begingroup$ @GordonBrinkmann Yeah, I was already working on my answer when you posted yours, and while I was a bit disappointed that you got to one before me, I was happy to know that was the first thing someone else thought of as well. I would not have said using a math node, but I had just experimented with Musgrave this morning (and learned it is perfect for this 😆), and I discovered while working here that the center of the Musgrave gradient is actually zero. $\endgroup$ Commented May 20, 2021 at 22:31