How to create shader that fades based on two different connecting surface angles

I’m looking for a starting point to create a shader that creates shadows at the edges of voxels similar to games like Trove and CubeWorld. You can see in this image below from my game (first image) that the shading between voxels is simply not there even with additional light sources. I believe that games like trove (second image) and cube world (third image) use a custom shader that creates the shadow between two voxels based on whether the two surfaces are on different angles. Does anyone know how one would attain this effect?

Notice the shadow at the corner of two voxel surfaces, there is always a fading shadow at each voxel on two different planes.
2343473--158539--shader2.png
Here you can see two the same effect, there is a shadow at the edge of two different angles as the shadow fades.
2343473--158540--shader3.png

Looks like some kind of SSAO effect