26 ms·
Those were the 90s. Modern rasterizers* all use barycentric coordinate based algorithms for a few reasons. Easier to implement with proper fill conventions an
by ehaliewicz2 2y ago
Those were the 90s. Modern rasterizers* all use barycentric coordinate based algorithms for a few reasons.
Easier to implement with proper fill conventions and multisampling, and much easier to parallelize in hardware and software.
* Hardware even back in the 90s used this type of approach :)
- thechao 2y agoWe use barycentric (both in high performance software rasterizers and in hardware) because attribute interpolation is significantly more costly than in-bounds checking (both due to the total number of interpolates, and the precision). The in-bounds check is going to be just a few instructions (a few fmas and some sign checking) for two dimensions (x, y); whereas attribute interpolation could be needed for 30–128 'dimensions'. It's easier to push the interpolation to the use-site in the fragment shader, and let the compiler do its magic.
- deleted 2y ago[deleted]