Implemented a depth buffer: now each pixel is only drawn once, unless it`s semi-transparent