gonetz / GLideN64

A new generation, open-source graphics plugin for N64 emulators.
Other
774 stars 180 forks source link

PowerVR ge8320 (mediatek Helio p22) corrupted graphics #2108

Open fzurita opened 4 years ago

fzurita commented 4 years ago

There seem to be some issues with the GPU drivers for PowerVR ge8320 on a Realme C2. See the attached screenshot.

65404379-cc4abc80-de0a-11e9-9eb9-9a6023f9a93e

This will be hard to debug without having the device, the best hope is that the phone gets an update with a non-bugged GPU driver.

fzurita commented 4 years ago

@Panderner In Mupen64plus FZ, go to settings, then display. Scroll down to the "Flicker Reduction" option. Please try all the options it gives you and see if any of them make the issue go away.

Panderner commented 4 years ago

Yeah, I tried all flicker reduction profiles but it didn't work

fzurita commented 4 years ago

This will be hard to solve without having the device unfortunately.

Panderner commented 4 years ago

And it's happened for other devices like Samsung Galaxy a10s, redmi 6, Xperia l3, lg k50s and vivo y91i

Panderner commented 4 years ago

Enabling Fragment based depth and N64 depth compare to fix corruptions

fzurita commented 4 years ago

Do you have those other devices? How do you know that they have the exact same problem?

Panderner commented 4 years ago

I don't have any devices but it's corrupted for PowerVR ge8320 devices including mediatek Helio P22, a22 and p35 on most games

Panderner commented 4 years ago

Enabling N64 depth compare to fix corruptions but it has problems for some games like tiles in FIFA 99 and Conker's bad fur day shadows

Panderner commented 4 years ago

This will be hard to solve without having the device unfortunately.

Have you tried other PowerVR GE8320 Devices?

fzurita commented 4 years ago

I don't have any to try it on.

Panderner commented 4 years ago

In glideN64-medium there are almost no polygons are drawn.

Tested 5 Games: Super Mario 64 Screenshot_2020-02-02-12-51-15-39_9784a853058524697766614cb28dab3d The Legend of Zelda Ocarina of Time Screenshot_2020-02-02-12-54-22-87_9784a853058524697766614cb28dab3d Mario Kart 64 Screenshot_2020-02-02-12-53-12-16_9784a853058524697766614cb28dab3d Banjo Kazooie Screenshot_2020-02-02-12-55-39-80_9784a853058524697766614cb28dab3d Conker's Bad Fur Day Screenshot_2020-02-02-12-58-40-45_9784a853058524697766614cb28dab3d And it happened for most games

Panderner commented 4 years ago

In retroarch's mupen64plus-next (gles2 and gles3) same as glideN64 medium in M64Plus FZ on default settings

fzurita commented 4 years ago

This is most likely an issue with your device drivers. Best we can do is hope that your drivers get updated.

Panderner commented 4 years ago

This is most likely an issue with your device drivers. Best we can do is hope that your drivers get updated.

It Doesn't Allow to Update GPU Drivers on Android, I hope that Adreno 620 & 650 drivers are updatable via Google Play Store

fzurita commented 4 years ago

They can get updated if your when your OS is updated.

Panderner commented 4 years ago

They can get updated if your when your OS is updated.

My phone Realme C2 is preparing for android 10 update in Q3 2020

fzurita commented 4 years ago

Unless someone with the affected devices that knows how to debug this kind of issues comes along, this is unlikely to get solved.

Panderner commented 4 years ago

Unless someone with the affected devices that knows how to debug this kind of issues comes along, this is unlikely to get solved.

Some phones are stuck at Android 8 like LG K40, Alcatel 5V, Vivo y83, Lenovo K9, Panasonic Eluga Z1, Etc. Some phones running Android 9 are unannounced or refused to update to Android 10.

Panderner commented 4 years ago

Why? This driver is not bugged and working fine for some android games and emulators

Panderner commented 4 years ago

@gonetz But please fix it in glideN64-medium and don't close it

Panderner commented 4 years ago

And still corrupted on glideN64 medium. My phone supports OpenGL ES 3.2

gonetz commented 4 years ago

I can't fix it. "Unless someone with the affected devices that knows how to debug this kind of issues comes along, this is unlikely to get solved."

Panderner commented 4 years ago

I can't fix it. "Unless someone with the affected devices that knows how to debug this kind of issues comes along, this is unlikely to get solved."

@gonetz Why you can't fix it?

Panderner commented 4 years ago

Please reopen.

gonetz commented 4 years ago

Because I can't reproduce it on my hardware. @fzurita is our expert for mobile devices. If he can't solve it, the only hope is that someone else will take it. I reopen it, but chances are slim.

fzurita commented 4 years ago

I would have to get a hold of the affected hardware. I don't have the PowerVR devices mentioned here.

Panderner commented 4 years ago

Here's a list of PowerVR GE8320 devices: https://mobile.phonebunch.com/phone-filter/gpu/powervr-ge8320/page/1/ And if you buy any phone powered by this GPU at online shopping websites and cell phone stores.

fzurita commented 3 years ago

Is this still an issue? If it is, what is the cheapest device that has this problem?

Panderner commented 3 years ago

It's still a issue for my old Realme C2.

fzurita commented 3 years ago

With the latest version of M64Plus FZ?

Panderner commented 3 years ago

With the latest version of M64Plus FZ?

Yes.

fzurita commented 3 years ago

Unfortunately, the Realme C2 is hard to get in the USA. So I need to find a different phone that has the issue and that it's not too expensive.

Panderner commented 3 years ago

@fzurita choose one: Samsung Galaxy A10s LG K40s Alcatel 3L (2020) Xiaomi Redmi 6

fzurita commented 3 years ago

Are those phones for the Indian market? I can't find any here on Amazon.

Panderner commented 3 years ago

Are those phones for the Indian market? I can't find any here on Amazon.

https://www.amazon.com/s?k=mediatek+helio+p22&rh=n%3A2335752011%2Cn%3A7072561011&dc&qid=1611580028&rnid=2941120011&ref=is_r_n_4 you can find here.

fzurita commented 3 years ago

I guess I wasn't using the right terms. $150 is a little too much to swallow at this point.

fzurita commented 3 years ago

I was able to get a hold of a phone with a PowerVR Rogue GE8100.

The phone is extremely slow. Any ways, unfortunately I'm not seeing the same issues. I do see flickering textures with Super Mario 64, they are fixed though when I disable fragment based depth and framebuffer emulation is enabled with the resolution factor set to 1x.

The main thing that seems to hurt texture rendering is fragment based depth. Fragment based depth is disabled if you use the GLideN64-Fast emulation profile.

Can you confirm that choosing the GLideN64-Fast emulation profile fixes the issues for you? If not, I would not be fixing the same issue that you have.

Panderner commented 3 years ago

When I disable fragment based depth all almost polygons are broken.

fzurita commented 3 years ago

Ok, what about the GLideN64-Fast profile? Are you using the latest version of the app?

Panderner commented 3 years ago

Ok, what about the GLideN64-Fast profile? Are you using the latest version of the app?

Same happens in GLideN64-Fast and yes I'm still using latest version.

fzurita commented 3 years ago

Ok, so it sounds like the device I got a hold of is not good for debugging the issue. It does have different issues though.