Realistic Glass in Eevee

Good stuff. Thanks again Eric!


Hi :slight_smile:

Thanks for this, your glass looks amazing! I think I’m getting somewhere, but I’ve played around with the settings mirroring all the various examples I’ve seen throughout this feed and I don’t seem to be getting any sort of reflectance in the glass.

I’ve been testing it on the vase on the desk, the window glass and all the light and scene settings have been set following Blender Guru’s recent tutorial about realtime ArchViz rendering in EeVee.

Would you have a look at my file and see if you can identify what might be causing this issue?
Any suggestions would be much appreciated, thanks!


The key to good looking glass is having good lighting with highlights, reflection and correct shadows.

Unfortunately in regards to lighting an interior scene the Blender Guru’s tutorial is not a good one. Having only a far away area light gives diffuse type lighting and shadows.

I modified the Blender Guru’s tutorial with my workflow for lighting this type of interior scene.

  1. Remove the far away area light.
  2. Added sun light and an area light on the window.
  3. Added reflection cube map tor the room.
  4. Added irradiance volume to the room.
  5. Use my all standard shadow and light settings. (Look at my other post for these.
  6. Adjusted correctly all the other scene settings.

These changes will give this scene a proper sun lit look. Their is highlights and reflection on the glasses. Notice the realistic shadows specially chair legs shadows on the floor and others.

Blender Guru’s lighting:

My workflow lighting:

See attach file without textures. Eevee Interior Glass EKc.blend (4.3 MB)


Also, when outside is brighter than inside, there is no reflection on the window (unless at an extreme glancing angle), so there is no reason for a window or material unless it is a night scene.

Furthermore, while the large texture nodes used are great for cycles, they can cause delays in EEVEE gpu processing.

1 Like

Hi Eric,

Thanks so much for this, as a newbie it’s great to be able to come on here and get really helpful, in depth responses to issues :slight_smile:

I will go through everything you’ve said and try to recreate it!

Thanks again

Agree having separate large textures for every channel including roughness, reflection and normal for every object in the scene is unnecessary and use large amounts of GPU memory and slows down Eevee. It is specially important to be efficient in large scenes with hundreds of materials. This is one of the good things about your “Definitely EEVEE Materials System”.

In windows facing the outside even when the environment is bright I do use some reflection. I like to use “thin glass” shader by using my glass shader setup and replacing the “Glass BSDF” node with a “Transparent BSDF” node. Objects close the window will reflect back into the window. This gives a more realistic interior. What is not needed is refraction which can cause some Eevee artifacts.

Here is example of using small amount of reflection on a window from my one of the scenes from Chocofur from my “Realistic ArchViz” series see the link Window Reflection.


Your are welcome. Their many good examples of good lighting setups in Eevee for glass that can review in my series of “Realistic Archviz from Cycles to Eevee” see this Link. Look at this lighting setup for Eevee that I did in this series from the an Evermotion scene:

1 Like

Playing with this now after trying to make the original cwGlass coloured in order to make a lightbar for an ambulance, and it seems like rather than changing the colour of the glossy shader, which just makes all the reflections tinted red, it’s the glass/transparent shader that should be tinted:

Doesn’t seem to work properly on the wine glass though, for some reason…


I made a new shader call ekRealisticGlassColor.

  1. Added a color node.
  2. Added new nodes that control the fresnel reflection color and better reflection.
  3. Flatten RGB curves as a default starting point.
  4. Improve quality of glass reflection by adding reflection cube map to each glass object.

New node setup:

A render of the new node setup with different colors:



Here is an update blender file of the ekRealistic Glass Color shader in your scene without HDRI if your interested. Need to bake before rendering. ekGlass1ColorNoHDRI.blend (274.8 KB)

Aw man, amazing, cheers!

Thanks Eric, much appreciated. I’ll add it to the Gumroad files.

Do you think it´s possible to create a physical crystal lens in front of the camera in EEVEE? your shader looks good, I´d like to try it for a scenario like I mention.


This is product shot of a camera in Eevee that I have being working on. I used the shader above for the camera lens. See below my render.

1 Like

Excellent tips here. I’ll be testing some of these settings out in a new animation soon. Keep up the great work.

Hi Eric :slight_smile:
It would be really helpful if you please share the scene file that you’ve shown on the images.

Can you please give me a link from where I can learn how to bake :slight_smile: ?

Hi Eric,
Thanks for your awesome tutorial :slight_smile:

I tried several times to follow along with your tutorial and achieved nearly the same result but except for 1 problem.

In my case - though other objects are refracted and visible through the transparent glasses, the glass objects behind glass objects are not being shown.

Please help me with this.

Thanks again for your awesome tutorial.


This is a Eevee limitation at this time that a refracted object behind a refracted object would not be visible. See image from Definitive Interiors course with my realistic glass shader from @chippwalters.:

The glass in front is using refraction. The glass behind on the left is using refraction and notice that it is partially occluded because of the Eevee limitation that refracted objects behind an refracted object are not visible. Now look at the glass behind on the right it is using transparency instead of refraction and it is not occluded, and still looks good.

To allow object behind a refracted object to be visible using my realistic glass shader replace the glass BSDF node with a transparent BSDF node. You will loose refraction and gain transparency for the object behind and still get really nice reflection. Remember that getting good reflection is the key to having great looking glass.

Depending on your scene having glass with transparency instead of refraction may be more important for objects behind as long as your getting good reflection. Most of the time I use refraction for objects behind, but other cases transparency for the objects behind works best like in the scene above.

Look at my previous post in this thread and you will find plenty sample scenes I have posted. Except for the Chocofur and Evermotion scenes. This ones you will find tips and techniques in how I converted to Eevee in my thread on Eevee ArchViz see link Realistic ArchViz.


Can’t even describe how thankful I am for your most kind reply :heart:
Thanks a billion :heart: :heart: :heart: