Changes between Initial Version and Version 1 of Ticket #13561, comment 9


Ignore:
Timestamp:
06/16/22 14:42:20 (23 months ago)
Author:
antoniou79

Legend:

Unmodified
Added
Removed
Modified
  • Ticket #13561, comment 9

    initial v1  
    11There are two issues that affect the flickering on OpenGL.
    2 1. The main issue is that the overlay's dimensions are set to the monitor's resolution, but the game (which natively is 640x480) can be drawn in a number of ways on the monitor's surface (I think stretch mode is more of a factor here). This means that the adjustCoordinates() assuming a stretched scale of the game's width and height (640x480) to the monitor's (overlay) surface is not always right -- but in theory it should be for example if Stretch Mode is set to "Stretch to Window" and FullScreen is enabled.
    3 2. The other issue is that it seems that the cursor coordinates are only updated if the mouse actually moves. But for the case of the transition to the overlay (showThumbnail()), the code assumes that in the next updateLoadGame() call, with the overlay enabled, the coordinates will need adjustment -- but if the mouse did not move, it will adjust the old coordinates to some bad x,y. It will then proceed to disable the overlay (remove the thumbnail). Thus the flickering with the cursor not moving.
     21. The main issue is that the overlay's dimensions are set to the monitor's or the game's window's actual resolution, but the game (which natively is 640x480) can be drawn in a number of ways on that surface ("stretch mode" is more of a factor here). This means that the adjustCoordinates() assuming a stretched scale of the game's width and height (640x480) to the window/monitor's (overlay) surface is not always right -- but in theory it should be for example if Stretch Mode is set to "Stretch to Window" and FullScreen is enabled.
     32. The other issue is that it seems that the cursor coordinates are only updated if the mouse actually moves. But for the case of the transition to the overlay (showThumbnail()), the code assumes that in the next updateLoadGame() call, with the overlay enabled, the coordinates will need adjustment -- but if the mouse did not move, it will adjust the old coordinates to some bad x,y. It will then proceed to disable the overlay (removing the thumbnail), and in the next iteration it will draw the thumbnail again, and so on. Thus the flickering with the cursor not moving.
    44
    55If possible I would suggest to not use the overlay at all to draw the thumbnail.