I have made a polished granite material with a node setup. Using this photograph as reference, how can I improve this further?
Creating a Procedural Polished Granite Material
Guessing you're probably no longer in need of this effect, but thought I'd write a (hopefully) short tutorial in case anyone is interested in creating a Realistic Procedural Polished Granite Material in future.
This is the final setup and material that we'll be creating :D
1. We'll start off this material by creating the procedural mottled texture that is present in granite stone (and in your reference image).
Firstly, let's create the lighter sections, using this node setup:
The nodes are fairly self explanatory, but we're essentially creating and distorting a noise texture using the slot attached to the
Mapping node. We're then using the
Color Ramp node to bump up the contrast by just the right amount. Underneath this we are mixing together some colour sampled from the reference using a
Mix RGB controlled by another
Noise Texture plugged into the
Fac input. Finally we'll plug this into the first
Color input of another
Mix RGB node with the blending mode set to
Screen and the bottom value set to white to give us our desired result... phew!
Next up is essentially repeating the last step a couple more times to get the darker shades of the granite, as well as the yellow (?!) ones.
As the nodes are pretty much exactly the same with just a few values changed, we can go ahead and simply press Shift+D to duplicate them, and move them below.
Again fairly self explanatory... but briefly, we'll use the
Mapping node to essentially create a seed value for the noise, using the Location value to adjust this. The Noise Textures themselves are used to adjust the size of the noise, etc and once again the colours are sampled from the reference images.
The final part of this step is mixing these 3 outputs together. We'll do this by adding 2 more
Mix RGB nodes with a
Multiply blend mode, and connecting them accordingly. Don't worry about the white background, that will be cut out at the start of the next step :)
2. In this step we'll be finalising the granite base material. I won't go into details on every little section, but I'll explain the overall concepts.
So the extra
Mix RGB > Multiply node is (as promised!) used to cut out that white and add in the creamy brown background colour. This colour is be plugged into a
Diffuse BSDF shader, which is mixed with a
Glossy BSDF shader using a
Next the crystal fleck mask is created. This is a simply case of using a scaled up
Voronoi Texture thrown through a
Color Ramp node plugged into the
Fac input of the
Mix shader. A simple step but it helps add another dimension of realism to the material :)
Finally, a procedural bump map is added to the
Normal input of the diffuse and glossy shaders.
3. In this third and final step we'll be adding the final clear-coat (polish) effect to the granite material. Its fairly simple, but is slightly more involved than just mixing a glossy shader in... :)
The Voronoi setup is used to break up the reflections of the
Glossy BSDF shader, adding a little bit of roughness here and there. The Noise bump Texture is used to add another level of surface texture. It's a (very... :P) subtle effect, but one that helps give the polish a slightly more 'painted' look.
Finally, we can add this coat over the Granite material, using another
Mix shader controlled by a
Layer Weight node. You can use a
Fresnel node or other inputs to control this, but I used the
Facing output because it looked pretty nice! ;)
So there we go! A sweet, fully procedural Polished Granite Material setup! :D
Hope it helps and don't forget to upvote/mark as the right answer if you liked it! :)