How can I make a procedural polished granite material?
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 

(3mins49secs @ 750x1000px on CPU)





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 Mix shader. 

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! :)