1
$\begingroup$

I have a pretty simple mesh that I want to be a glass plane, but for some reason thse black artifacts are appearing. I've checked that the topology looks correct (I think) -- selected all and merged by distance (0 vertices deleted), and recalculated normals with CTRL+SHIFT+N, but nothing changes. The face orientation looks good (everything is blue outside). Any ideas what I could be doing wrong?

Here is a blend file with just the glass piece and the simple Glass BSDF: glass.blend

Black artifacts in glass

$\endgroup$

2 Answers 2

2
$\begingroup$

There are 4 overlapping vertices at the bottom. Just select them and move them along the Z axis.

enter image description here

enter image description here

The shadow at the bottom can be fixed with WeightedNormal modifier, like I did, or disabling Auto Smooth (you can do that in Object Data Propierties > Normals)

enter image description here

$\endgroup$
1
  • $\begingroup$ How did you notice which vertices were overlapping? $\endgroup$
    – xyzhou
    Commented Aug 29, 2022 at 6:20
1
$\begingroup$

The main problem with the shading isn't the overlapping geometry, but there is Custom Split Normals Data stored in the mesh. This is most likely generated by applying a Bevel modifier which had the Harden Normals option enabled for example.

Go to Object Data Properties > Geometry Data and click on Clear Custom Split Normals Data:

custom split normals data

And immediately the black artifacts are gone even without changing the overlapping geometry:

cleared data

For the overlapping geometry: as you can see if you are zooming in on a bottom corner, the vertices which form the bottom face are above the lowest vertices of the side face.

overlapping faces

To clean up the geometry you can do different things, for example select the four vertices from the bottom face (or select the face itself in Face Select mode) and move it further down so that there are no more overlapping faces.

move down

Another option would be - if you want to keep the shape of the object so that the lower vertices creating the side faces remain - to select a bottom face vertex, then the side face vertex below, press M > Merge > At Last and repeat this for all corners. Of course you can merge at the upper vertex or the center between both, that depends on how you want the shape to be.

merge vertices

Now here's an extra tip if you want to improve the look of glass. Even without overlapping geometry or other things causing black artifacts, people are often complaining about black areas in their glass material. The reason for this is often the very low number of bounces for Glossy in the Light Paths > Max Bounces settings. The standard for Glossy is 4, and that is much to few for glass - and be aware the maximum bounces for Glossy are limited by the Total number as well. So this the default setting, look at the border of the glass:

dark glass

If you now crank up the bounces to 128 for Glossy and Total, the dark edge disappears. Of course this increases render times, but sometimes it's not as much as you might fear. It's always a matter of what looks okay and still does not take too long to render.

clear glass

And of course instead of increasing the max bounces there are ways to tweak the glass material to something else than the default Glass BSDF so that you can get away with less bounces and still have a good result. I'll put a quick overview here how I usually manipulate the glass depending on what I want. This overview is not created especially for this answer, it deals with other problems like not enough brightness and too soft shadows inside of glass objects.

glass overview

$\endgroup$
2
  • 1
    $\begingroup$ Wow, thank you for such a detailed description! This is a lot of really great information, thanks! $\endgroup$
    – xyzhou
    Commented Aug 29, 2022 at 20:10
  • $\begingroup$ @xyzhou You're welcome. I'm far from being an expert in all these things, but people are often struggling to get good results with glass and I'm trying to pass on the tricks I've learned to other people. $\endgroup$ Commented Aug 29, 2022 at 20:32

You must log in to answer this question.

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