ppsspp icon indicating copy to clipboard operation
ppsspp copied to clipboard

[Libretro] Screen orientation causing image rotated and stretched in Vulkan

Open Panderner opened this issue 5 years ago • 20 comments

Using Vulkan for PPSSPP in Retroarch rotating screen orientation causing the image are Rotated and Stretched but not OpenGL

Portrait: Screenshot_2020-12-26-12-46-37-869_com retroarch

Landscape: Screenshot_2020-12-26-12-40-46-067_com retroarch

Reversed Landscape: Screenshot_2020-12-26-12-40-29-320_com retroarch

Panderner avatar Dec 26 '20 14:12 Panderner

it also affects all games

Panderner avatar Dec 30 '20 14:12 Panderner

I'm having the same problem

ztx-lyghters avatar Jul 27 '21 12:07 ztx-lyghters

Somehow this also just happened to me. Not sure how it was produced, but I can't reproduce nor revert. Pretty much all I did was delete the app's data and it happened. Reinstall or delete retroarch/delete data did not help.

iamSlightlyWind avatar Aug 29 '21 23:08 iamSlightlyWind

same here, just started to be an issue. previously ppsspp core worked fine on the same device

bluemonkeysuit07 avatar Oct 05 '21 12:10 bluemonkeysuit07

any news on this bugs ? it's still there :(

GtrevizeG avatar Dec 13 '21 19:12 GtrevizeG

Also having this issue. I can set my Video Driver to 90 degree rotation which fixes PPSSPP but messes my other cores.

AnalogMan151 avatar Jan 26 '22 11:01 AnalogMan151

Also having this issue. I can set my Video Driver to 90 degree rotation which fixes PPSSPP but messes my other cores.

sorry for necroposting, but you can modify this setting while the game is running and save it as an override specific for the content or emulator. in my case, PPSSPP core was misbehaving and all other cores were just fine, so I opened a PSP game, went to the main menu, modified the rotation to 90 degrees, went back to the quick menu, into overrides and saved the override as core-related. now whenever i load a game on PPSSPP, it also loads the changes on general settings, which includes the 90 degree screen rotation. if i load other cores, the setting is left as default.

CharlesAnjos avatar May 02 '23 11:05 CharlesAnjos

My issue is exactly like Panderner's with the Landscape photo being as mine is on an Android tablet HPad 5. There is something definitely wrong in the coding for PPSSPP and its rendering of Vulkan. I am using F-droid's version, but have used the RA Plus and normal versions (the older version seems to work however, sound glitches too much and when I updated Core, went back to the screwup. ) The older core I believe was 1.18.#. However, I will attempt to try CharlesAnjos solution, but it is only a temporary fix as should something happen where I must delete the App, or change hardware, have to go through this all over again.

Severem avatar Aug 10 '24 23:08 Severem

Okay, may have found a solution. Under normal Video Driver configuration, have it set to Vulkan with whatever other settings you would like to have. Under PPSSPP and a game you are running, under Core Options > Video, set the Driver to NONE. Close out content, close out RetroArch, jump back into PPSSPP and run your game. On mine, the video and game orientation was correct and even rotated normally when the tablet rotated. If anyone else does this could they confirm the fix? Thank you.

Severem avatar Aug 15 '24 03:08 Severem

Okay, may have found a solution. Under normal Video Driver configuration, have it set to Vulkan with whatever other settings you would like to have. Under PPSSPP and a game you are running, under Core Options > Video, set the Driver to NONE. Close out content, close out RetroArch, jump back into PPSSPP and run your game. On mine, the video and game orientation was correct and even rotated normally when the tablet rotated. If anyone else does this could they confirm the fix? Thank you.

It really works, thank you! But if I turn on the volcano again, the next time I start retroarch the screen rotates again.

miklecake avatar Sep 11 '24 14:09 miklecake

miklecake - make sure to SAVE your configuration on RetroArch and possibly in the Core settings as well. Thank you for the verification

Severem avatar Sep 14 '24 13:09 Severem

Okay, may have found a solution. Under normal Video Driver configuration, have it set to Vulkan with whatever other settings you would like to have. Under PPSSPP and a game you are running, under Core Options > Video, set the Driver to NONE. Close out content, close out RetroArch, jump back into PPSSPP and run your game. On mine, the video and game orientation was correct and even rotated normally when the tablet rotated. If anyone else does this could they confirm the fix? Thank you.

it works but it's a lot slower, like it's using a software rendering.

DJM75 avatar Oct 07 '24 12:10 DJM75

I have this issue on Android. The above solution does not work. Setting renderer to none seems to make the core use software rendering.

Also rotating the screen in video output settings does not work either - the screen gets rotated to the correct orientation but is still squished.

Pls fix.

melterx12 avatar Feb 11 '25 22:02 melterx12

I'm having the same problem too.

To workaround this, I set the device orientation to automatic, start the game in portrait mode, and after starting I rotate the device to landscape mode. This way the screen switches to landscape mode, but the game still renders correctly.

This worked on an weak and old Galaxy A03S (Cortex-A53 CPU/PowerVR GE8320 GPU) that I had, as well as it works on an Galaxy A55 (Cortex-A78 CPU/Xclipse 530 GPU) that I currently have.

Edit: typo.

matheuswillder avatar Feb 18 '25 20:02 matheuswillder

I met the same problem. As previous posts pointed out, it is a Vulkan related issue. I'd like RetroArch to use Vulkan for most of the cores, so in global settings, video->output->Video is set to vulkan. While in ppsspp core settings, I set Video->Backend to OpenGL. This workaround solved my problem.

leira avatar Jul 02 '25 08:07 leira

If you set your Global to Vulkan and then set your Core to OpenGL... you will be running OpenGL, not Vulkan. You have to set it to NONE to default to the Global settings, otherwise your are overriding the Global to OpenGL.

Severem avatar Jul 02 '25 23:07 Severem

Also, using OpenGL may not work for everyone. Some current Samsung devices, for example, no longer support OpenGL directly and just convert their calls to Vulkan using ANGLE. So leaving it as OpenGL, either globally or just in the PPSSPP core, may make the emulation slow or buggy on these devices.

That's why I commented above about the screen orientation as a workaround until it gets fixed one day (of course, I could just use PPSSPP standalone, but I only have a few PSP games and that's why I prefer the core).

matheuswillder avatar Jul 03 '25 00:07 matheuswillder

Okay, may have found a solution. Under normal Video Driver configuration, have it set to Vulkan with whatever other settings you would like to have. Under PPSSPP and a game you are running, under Core Options > Video, set the Driver to NONE. Close out content, close out RetroArch, jump back into PPSSPP and run your game. On mine, the video and game orientation was correct and even rotated normally when the tablet rotated. If anyone else does this could they confirm the fix? Thank you.

Yep, this works. Sadly performance takes a hit (I've set it to OpenGL to improve it). Nice temporary solution. I tried the 270 degree orientation fix too, but I don't like having my phone the other way around in landscape because of my phone case holder getting in the way.

SRC267 avatar Jul 19 '25 00:07 SRC267

I'm having the same problem too.

To workaround this, I set the device orientation to automatic, start the game in portrait mode, and after starting I rotate the device to landscape mode. This way the screen switches to landscape mode, but the game still renders correctly.

This worked on an weak and old Galaxy A03S (Cortex-A53 CPU/PowerVR GE8320 GPU) that I had, as well as it works on an Galaxy A55 (Cortex-A78 CPU/Xclipse 530 GPU) that I currently have.

Edit: typo.

yep, this seems to be the only workaround.

stann1 avatar Jul 25 '25 12:07 stann1