http://bugs.winehq.org/show_bug.cgi?id=5247
------- Additional Comments From ivg231@gmail.com 2006-16-09 22:03 ------- This bug is more complicated that it first seems.
Part of the problem is that if pbuffers are disabled or not supported, rendering will occur onscreen, but the end result will then still be written into a texture (via glCopyTexImage), necessitating the flip. That's because EndScene() does not do a check for whether pbuffers are used [ why is this code in EndScene in the first place? ]. How render-to-texture should be done if offscreen rendering isn't supported is an interesting question.
Then there's the issue that the projection matrix is being modified based on renderUpsideDown() - even when a vertex shader is used, which overrides the projection matrix - makes no sense to me.
In short, it's all a very ugly mess, that I had no intention of fixing or changing at this point - just wanted to reorganize the code. However, will keep this in mind and maybe do something about it in the future. This will also affect my FBO patch and other cleanups.
Ivan