Crash on screen rotation with PowerVR GE8320

Hello,

We are experiencing a crash on devices with the PowerVR GE8320 GPU when the screen is rotated during gameplay.

The crash occurs in glBlitFramebuffer()

The issue has been confirmed on the following devices:

  • Realme C2 (RMX1941) – Android 9, OpenGL ES 3.2 build 1.10@5130912
  • Oppo A78 (CPH2483) – Android 12, OpenGL ES 3.2 build 1.10@5130912

This crash does not occur on other devices. Could you provide assistance with this?

We have attached the Log.txt and adb logcat logs from the Realme C2.

Thanks.

Reproduction Steps

  1. Install 5.5.4 Engine
  2. Create ThirdPerson template c++ project
  3. Setup Project
    1. Project Settings - Android - Configure Now
    2. Package data inside .apk -> true
    3. bSupportVulkan -> false
  4. Package Game : Android - Development
  5. Install the app to PowerVR GE8320 device
  6. Run
  7. After CI, Change screen orientation (rotate phone)
  8. Crash

Hi SeongbeomJeong,

I can’t tell from the log but is this a Portrait <-> Landscape autorotation? Does it also occur in Landscape -> Upside down Landscape?

Best regards.

Hi SeongbeomJeong,

It appears the Galaxy A12 runs a later version of the Imagination GPU driver driver (1.13[Content removed] would disabling autorotation for the device family / GPU version be a viable workaround?

Best regards.

Yes. It seems to be a GPU driver bug.

And We also think it by good workaround disabling autorotation at specific PowerVR OpenGL driver version.

However, is there other workaround to prevent the crash?

Thanks.

Hi SeongbeomJeong,

You could altenatively try to disable bAndroidOpenGLSupportsBackbufferSampling which would circumvent the BlitFrameBuffer path altogether but have performance implications.

Best regards.

Hi. thanks for your reply.

It occurs in Landscape -> Upside down Landscape.

And we also found is that the issue does not occur on this device has same gpu.

* Galaxy A12 (GE8320) - Android 11, OpenGL ES 3.2 build 1.13@5776728