I am trying to recreate a wet road with lights reflecting off of it. I started by making the object glossy but this did not give a very realistic look

enter image description here

I think I need to increase the specularity of the reflection to make it look more real but I can't find this option anywhere in cycles. Also what other techniques can I use to make a surface look wet in blender? I can link directly due to licening but this is what I am trying to recreate.

  • $\begingroup$ I think the roughness is actually the specularity but is still does not really achieve the effect of water $\endgroup$
    – Qwertie
    Jul 9, 2014 at 13:32
  • $\begingroup$ Try using a HDRI for the skydome, because rigth now it's reflecting the gray sky; That might be why it doesn't look realistic. Also, you might want to use normal maps, and displacements. $\endgroup$ Jul 9, 2014 at 14:15
  • $\begingroup$ Andrew Price has a good tutorial on this topic: youtube.com/watch?v=XEZYcyi7JC0 Also, here's another tutorial of his that might be helpful: youtube.com/watch?v=W07H7xeUnGE $\endgroup$
    – Justin
    Jul 9, 2014 at 14:39
  • $\begingroup$ To make it look real, you need way way more detail. Once the scene is correctly lit, it will improve. add more geometry, and you'll see even more improvement. $\endgroup$ Jul 9, 2014 at 16:06
  • $\begingroup$ 2021, in blender 2.8.3 with eevee for a material with "principled BSDF", I just had to change Roughness to about 0.125, even w/o a texture. I wonder asking this but about eevee, a new question I mean. $\endgroup$ Feb 2, 2021 at 1:01

2 Answers 2


You need larger bumps. Using only the roughness from the glossy shader gives too smooth a result.

With a very quick setup:

enter image description here

The diffuse node represents the asphalt/road underneath the water. By mixing this with a glossy node based on the IOR of water (~1.33), it appears as if there is a thin film of specularly reflecting material (water) on top of a very bumpy diffuse material (road).

enter image description here

This could use a bit more large variation (cracks and large features, etc.), so you may want to use an image texture instead.

  • $\begingroup$ Nice! why GGX over Beckmann? $\endgroup$ Jul 9, 2014 at 19:18
  • 1
    $\begingroup$ @GiantCowFilms I just liked the falloff better :P $\endgroup$
    – gandalf3
    Jul 9, 2014 at 19:30

I've manged to get a shader working. enter image description here Here is the result that it produces:

enter image description here

In more detail: The key is to have a very low roughness value. also, it is hard to achieve realism without to correct amount of detail. The bump, spec and normal maps were created in crazy bump. Texture form http://www.cgtextures.com The water puddles are a separate plane, with a glossy shader with a roughness of .08 on it. Based of of blender gurus tutorial called secrets of realistic textureing.

  • $\begingroup$ this looks really nice. Sorry but I got a question instead of an answer, but I think the case is closed. Because you got an awesome render ;). My question: This is a shader used in Blender. Is it possible to extract this shader so it can be used in OpenGL as a vertex/fragment shader? Hope someone can answer me even if its nearly a year old thread. $\endgroup$ May 20, 2015 at 9:55
  • $\begingroup$ @CuriousUser You'd need to look into texture backing in cycles, but that won't quite give the correct result. For the most part I don't know anything about OpenGL rendering, sorry I can't help. I'll ask on chat to see if anyone know anything $\endgroup$ May 20, 2015 at 14:18
  • $\begingroup$ @CuriousUser You could also ask this as a question on the main site, linking back to this post... I think somebody may be able to recreate this in Open GL. $\endgroup$ May 20, 2015 at 14:33

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .