The author of the uoYabause, an Android branch of Yabause on PC with support for the more advanced OpenGLes3x rendering, has shown a few demos of his new idea to enable perspective correction into Sega Saturn emulation with a hardware renderer.
http://www.uoyabause.org/blogs/17
"Sega Saturn draws polygons as quad.Thanks for this method, VDP1 can draw distorted image correctly. Modern GPUs draw polygons as triangles. They can't draw distorted quad image correctly.
To avoid this failure, Generally perspective correction method is used. Since Perspective correction uses z value in 3D space and VDP1 does not have z vale, VDP1 emulator needs to calculate z value. This method works fine, polygons are draw as if they are in 3D space. like this.
But in some games These polygon are draw as just distorted image. At this time this emulation method does not work.That's problem!"
http://www.uoyabause.org/blogs/17
"Sega Saturn draws polygons as quad.Thanks for this method, VDP1 can draw distorted image correctly. Modern GPUs draw polygons as triangles. They can't draw distorted quad image correctly.
To avoid this failure, Generally perspective correction method is used. Since Perspective correction uses z value in 3D space and VDP1 does not have z vale, VDP1 emulator needs to calculate z value. This method works fine, polygons are draw as if they are in 3D space. like this.
But in some games These polygon are draw as just distorted image. At this time this emulation method does not work.That's problem!"