I believe you’re confusing the distortion we’re seeing with perspective-corrected texture interpolation. Perspective-correction is what the Wiki article is talking about, and it’s something that already happens automatically in WebGL:
“As of 2016, texture mapping hardware is ubiquitous as most SOCs contain a suitable GPU.”
I’ve edited my working example to demonstrate the difference.
- The top plane tilts backwards to create perspective, and you can see the GPU automatically adjusts for this when interpolating the texture.
- The bottom plane doesn’t tilt, but instead stretches its base to create a trapezoid. Here we can see the issue where the UV stretching creates the distortion along the diagonal.
