Two reasons actually:
- Dots on the edge of cube and background
You just see the left face of the cube at sharp angle - so you get aliasing.
- On the lower part of edge you have two cubes one next to each other.
In theory, the bright face should not be visible, because you ‘perfectly’ placed the cubes. In real world you will run into floating point precision artifacts.
Solution for #1 - use antialiasing
Solution for #2 - antialiasing will not solve this problem - you must remove that part of left, bright face that should not be visible (has contact with the cube on the left)
missing polygon culling ?