Post Reply 
 
Thread Rating:
  • 0 Votes - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Feature suggestion: crop image
10-14-2015, 08:29 PM
Post: #1
Feature suggestion: crop image
The PSP screen has a 480x272 resolution, which isn't a perfect 16:9, for some reason I never understood, but that supposedly has something to do with multiples of 16 decreasing the GPU load. When PPSSPP renders games at multiples of this resolution, we get stuff like 1920x1088 or 3840x2176. Most people nowadays have 1920x1080 monitors, with a few crazy people such as myself having 3840x2160 monitors. PPSSPP currently makes it so that the image will either preserve its aspect ratio with small black bars on each side, or stretch to fill the whole screen. This makes scaling unavoidable. However, I wouldn't mind losing 8 lines at the top and bottom to get a perfect, unscaled, 3840x2160 image, and I'm sure most people with 1080p monitors would say the same for half as many lines. But is this even possible? I have little knowledge of the subject, so it may be a dumb suggestion.
Find all posts by this user
Quote this message in a reply
10-14-2015, 08:35 PM
Post: #2
RE: Feature suggestion: crop image
This is actually already implemented for specifically the 1920x1080 case. As double the resolution is starting to become common, I guess I should simply implement that too, thanks for the reminder.
Find all posts by this user
Quote this message in a reply
10-15-2015, 04:47 PM
Post: #3
RE: Feature suggestion: crop image
@Henrik what do you think about changing this small exception list, into something less automatic, like:
Code:
            int zoom = g_Config.iSmallDisplayZoom;
            float offsetX = g_Config.fSmallDisplayOffsetX * frameW;
            float offsetY = g_Config.fSmallDisplayOffsetY * frameH;
            float customZoom = g_Config.fSmallDisplayCustomZoom;
            if (!rotated) {
                *x = ((frameW - origW * zoom * customZoom) / 2) + offsetX;
                *y = ((frameH - origH * zoom * customZoom) / 2) + offsetY;
                *w = origW * zoom * customZoom;
                *h = origH * zoom * customZoom;
                return;
            } else {
                *x = ((frameW - origH * zoom * customZoom) / 2) + offsetX;
                *y = ((frameH - origW * zoom * customZoom) / 2) + offsetY;
                *w = origH * zoom * customZoom;
                *h = origW * zoom * customZoom;
                return;
            }
which would allow to fulfill all similar requests we had/repeatably having like:
- customizable small screen,
- square pixels even at the cost of black bars ~ recently requested here,
- original frame ratio sacrificing 2 rows of pixels for 99.9% of the people out there,
- keep the remaining 0.1% happy,
- and whatever else people requested that fits here.

If that solution is acceptable I could finish this concept later and open a pull request, just have no ideas how to name it to avoid confusion since it would allow to zoom however the user wants, not just small display or some ninja cropping.

http://forums.ppsspp.org/showthread.php?tid=6594 - Custom PPSSPP Shaders!
http://forums.ppsspp.org/showthread.php?tid=3590&pid=117172#pid117172 - simple CE scripts to help creating CWCheats,
https://github.com/LunaMoo/PPSSPP_workarounds - CWCheat workarounds.
Find all posts by this user
Quote this message in a reply
10-15-2015, 09:08 PM
Post: #4
RE: Feature suggestion: crop image
Yes, I'm open to such a solution. Not sure how we should let the user configure it - as it will be possible to move the "small" display around on the screen, just a zoom slider is not enough. Maybe something like the touch control placement editor, but just a single thing to move around and resize - the screen. or integrate it into that....
Find all posts by this user
Quote this message in a reply
10-15-2015, 10:37 PM
Post: #5
RE: Feature suggestion: crop image
I like the touchscreen idea, a bit less clutter in graphics settings menu and quicker to move around than X/Y sliders.
Will see about doing it then.:3

http://forums.ppsspp.org/showthread.php?tid=6594 - Custom PPSSPP Shaders!
http://forums.ppsspp.org/showthread.php?tid=3590&pid=117172#pid117172 - simple CE scripts to help creating CWCheats,
https://github.com/LunaMoo/PPSSPP_workarounds - CWCheat workarounds.
Find all posts by this user
Quote this message in a reply
10-16-2015, 08:17 PM
Post: #6
RE: Feature suggestion: crop image
You could add an option like "Perfect 16:9" to the settings that would take 480x270 (top and bottom lines cut off) as the base resolution and scale (or increase internal resolution based on selected multiplier) accordingly, if that's feasible. This would satisfy both 1920x1080 and 3840x2160 users, or anyone else for that matter. Even though most other 16:9 resolutions like 2560x1440 will have to be downscaled anyway, people may not like the small black bars, even if not because of the scaling.
Find all posts by this user
Quote this message in a reply
10-17-2015, 03:15 AM
Post: #7
RE: Feature suggestion: crop image
Manually selecting needed resolution should not be a problem, eventually I will add another feature for that. I made a separate display editor screen so I have extra space to add some related options without cluttering graphics settings menu.

I pretty much finished basic screen for it already with working touch control(well I admit tested only with rodent;p), but still needs lots of work to look nice, no clue when I will finish it since this weekend I might be too busy with offline stuff.

http://forums.ppsspp.org/showthread.php?tid=6594 - Custom PPSSPP Shaders!
http://forums.ppsspp.org/showthread.php?tid=3590&pid=117172#pid117172 - simple CE scripts to help creating CWCheats,
https://github.com/LunaMoo/PPSSPP_workarounds - CWCheat workarounds.
Find all posts by this user
Quote this message in a reply
Post Reply 


Forum Jump: