-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 Am 2015-07-15 um 10:47 schrieb Henri Verbeet:
Actually, it would probably be helpful to have an overview of how this is all going to work in the end. E.g., how is ddraw_surface7_Flip() going to work with the new setup? Which part of this complicated function are you interested in? :-)
I've attached the current status of my work, but it's far from complete. The immediate goal is to make swapchain_blit work with wined3d_surface_blt (patch 13). Yeah, I realize I don't need most of the previous 12 patches for that technically. The current code handles flip in the ddraw and d3d9 version by swapping the GL textures, invalidates all other locations (could move around sysmem as well, but didn't bother yet) and unloads the resource to remove the textures from the FBO cache. The same thing is currently done in flip_surface() in surface.c Especially the FBO cache handling is ugly. Patches 15-17 give some idea how I plan ddraw overlays to work. I used the d3d9 software cursor to experiment with this, but I don't think we want to handle the software cursor in the way patch 15 handles it. It's matching the native behavior, but GL vsync causes major performance problems when updating the SW cursor and patch 17 doesn't really fix this. As you can see in patch 18-20 I hit a wall while trying to eliminate the ddraw shadow frontbuffer. I think I first have to replace the swapchain destroy and recreate in SetCooperativeLevel with a _Reset call, and I'm sure there are many other issues. As such I haven't even bothered yet with the flip target parameter for surface_flip(). -----BEGIN PGP SIGNATURE----- Version: GnuPG v2 iQIcBAEBAgAGBQJVpjlAAAoJEN0/YqbEcdMwr/sP/0tsHo4jdww2nszA/IMFF/Lz 5iIXHfS7Ito+Ka39RO4k4YknrTC3IwHWFERrNM5wMimognmKM9B1COLY320bFe78 reBbJ8xgTbqYrk3pr0zjqev80kr2LM3IxKGD9+3PQBmQGfG8VeqsS70KVhnYP1Cj RnoyEIWniGBGXRzg4xKSFARIfKEIulNGungPghFaSz+P5Tu3OB1M/f4X2JlqUzZ0 FwwJL0assbdDhKNygmgnCMYhRm5avhvCO9yuw+k6vTGvvldNBWWL4BU45eDKlN+x hxfuEuXhuKgC7bf8wMpSkZleIl5pWv/NXD+NrZORlSTlEqSoq9oU33MiACbkPqGw ABjjuoX9Egsm5PXg9knbLqdFWOoo22nsTfDhfk6VVAlKUc6hrJdTauVqFEHWvukY drYy1pIkMb04CzOtnYKAdsa872/Xvo7He2II8vaF8ABACu6xADUDCvLV7LqOrbug 8cQnI1gwmyVhkwyUZl6YbCeX9TtPcds+D+zp5ppsc0NUkZs3/hLtgRgK9IWEAG6Y PgJLuWEzBsAkQzZ3tHu/hrZ9TtBPyt2Pv82vBpXfnBUo2WuxG5RwBsM5WXFIDuLf x8EVTdNO4Z30AxYxskyw18/yEOfxYJkEY/z/GZ2GEwLhZMKjVvRm1zXhcneVcCCu gQCLS/ktMK2QNTulpiFQ =4T81 -----END PGP SIGNATURE-----