-
Notifications
You must be signed in to change notification settings - Fork 0
Description
Steps to Reproduce
- Start the game and resize the window to a more square-ish or vertical aspect ratio.
- Skip the cutscene or something to start the transition wipe.
Expected Result
The 4 transition wipe squares that appear should be discernable from each other, move smoothly and steadily.
Actual Result
The squares come out very abruptly, and in some cases, undiscernible, like a glitchy square.
Notes
This problem is caused by the 2D expand mode set for the game to automatically resize the sprites/viewport to fit the screen. When the aspect ratio of the game window is resized to be different, the transition ColorRect still has the same 16:9 aspect ratio as before, and does not expand to fit to the window well. For the jam, I rushed this by simply making the ColorRect really big by multiplying the window size, and because it's so big, the AnimationPlayer has to scale it very quickly to fill the screen, thus looking very abrupt.
This problem can perhaps be resolved by having a separate viewport on top of the existing one, but make it use stretch mode instead of 2D expand mode (unsure if possible or not). Another way is to find out the aspect ratio on window resize, then set the ColorRect size to match that aspect ratio, but this can be tricky because the 2D expand mode interferes with this width/height calculation.
Another possibility is to change the way the ColorRect fills the screen. Right now, because the ColorRects are anchored either left or right, the AnimationPlayer simply sets the scale from 0 to 1 to make the wipe happen, courtesy of @RailKill's idiocy. Instead, it could actually move the ColorRect position. Maybe this way, the ColorRect's anchor and margins can be made to always fit to screen (Full Rect) without the need to resize, and the AnimationPlayer never touches the rect_size or scale.