05-30-2011, 04:25 PM
As of r2159, I've decided to start investigating a more complete way to integrate screen resizing with JPCSP.
Starting from gid's suggestion, a viewport resize filter has been implemented, like the anisotropic, but this one is a little different.
First, it acts independently, so you can have both the anisotropic and this one working. Then it's purpose is to be used with the "Resize" menu.
You can find it under Options > Video > Filters > Resize.
Basically, if you leave this filter off, resizing will be processed like it has always been. The LWJGL canvas simply streches, which allows you to freely resize the emulator's window, but has the major drawback of corrupting a ton of graphics. The most common situation has been the abnormal double resizing in certain 3D games.
In order to avoid this, the whole graphical context must be resized properly, so, if you toggle the resize filter on, you'll be limited to work with fixed aspect ratios of 1x, 2x and 3x times the regular PSP screen (don't worry, there are plans to extend this functionality, specially to full screen).
Any attempts to expand the window with the filter on, will just reveal a black rectangle around the main screen, just like what happens with "Only GE graphics" on. However, the screen will now properly resize everything and no longer cause those issues.
There are still some textures that aren't displaying correctly, due to the fact that some fixed constants are being used in the VideoEngine, but after correcting this they should show just fine. Any testing to trace these down would be appreciated. Thanks!
Starting from gid's suggestion, a viewport resize filter has been implemented, like the anisotropic, but this one is a little different.
First, it acts independently, so you can have both the anisotropic and this one working. Then it's purpose is to be used with the "Resize" menu.
You can find it under Options > Video > Filters > Resize.
Basically, if you leave this filter off, resizing will be processed like it has always been. The LWJGL canvas simply streches, which allows you to freely resize the emulator's window, but has the major drawback of corrupting a ton of graphics. The most common situation has been the abnormal double resizing in certain 3D games.
In order to avoid this, the whole graphical context must be resized properly, so, if you toggle the resize filter on, you'll be limited to work with fixed aspect ratios of 1x, 2x and 3x times the regular PSP screen (don't worry, there are plans to extend this functionality, specially to full screen).
Any attempts to expand the window with the filter on, will just reveal a black rectangle around the main screen, just like what happens with "Only GE graphics" on. However, the screen will now properly resize everything and no longer cause those issues.
There are still some textures that aren't displaying correctly, due to the fact that some fixed constants are being used in the VideoEngine, but after correcting this they should show just fine. Any testing to trace these down would be appreciated. Thanks!