3 ms·
IMO too simplified. > Each vector is transformed in screen space It’s first transformed into clip space. This is important because some primitives / some part
by Const-me 8y ago
IMO too simplified.
> Each vector is transformed in screen space
It’s first transformed into clip space. This is important because some primitives / some parts of them are clipped out on this stage.
> Fragments are shaded to compute a color at each pixel.
Not all of them are shaded. If you’re programming at this level it’s very important to understand early Z rejection, otherwise you’ll waste too much resources computing pixel shaders for invisible objects.
Also, this article creates impression that what you see on screen is made out of shaded + textured triangles. I don’t think it’s the case, at least not for modern games. They render dozens passes per frame, each render pass renders some stuff into textures, next pass reads from these textures and write to some other places. See this article for detailed explanation for one specific game, GTA5: http://www.adriancourreges.com/blog/2015/11/02/gta-v-graphics-study/ http://www.adriancourreges.com/blog/2015/11/02/gta-v-graphic... Other modern games usually do some conceptually similar stuff. Not all of these passes even render any shaded triangles: compute shaders are now used, too, when they fit better.