Discarding the back surface is when OpenGL determines which faces are facing away from the viewer and therefore invisible. Think of a cube. No matter how you rotate the cube, 3 faces will always be invisible. Find out which facets this is, remove them from the list of polygons you need to draw, and you halved the list of your drawings.
The depth of buffering is quite simple. For each pixel of each drawn polygon, compare its z value with the z buffer. if it is less than the value in buffer z, set the value of buffer z as the new value for buffer z. If not, drop the pixel. The depth of buffering gives very good results, but can be quite slow, since each pixel requires a search by value.
In reality, there is nothing similar between the two methods, and they are often used. Given the cube, you can first cut out half of the polygons using culling, and then draw them using z-buffering.
Culling can cut the displayed polygons, but this is not a sorting algorithm. This is what Z-buffering is.
source
share