WAIT WAIT new development. For some reason the device wasn't updating the apk. I fixed that. Works more or less correctly. It appears the arm extension is a go. However, I got a bunch of error messages that popped up, from all sorts of different components. However given that I am running r7p0 I literally expect it could be the drivers having a fit. The game works without error regardless of the messages.
(07-23-2017, 09:45 AM)Nintonito Wrote: [ -> ]WAIT WAIT new development. For some reason the device wasn't updating the apk. I fixed that. Works more or less correctly. It appears the arm extension is a go. However, I got a bunch of error messages that popped up, from all sorts of different components. However given that I am running r7p0 I literally expect it could be the drivers having a fit. The game works without error regardless of the messages.
If there are any shader compile failures (IE .txt files in the Dump directory listed above) they would be useful to paste anyway. Even if they don't cause obvious visual errors, they're still things that need to be fixed.
Folder is empty. I tried to get a few screenshots but now the error messages no longer appear.
(07-23-2017, 02:19 AM)JonnyH Wrote: [ -> ]Where? I played the into and started a new game quickly and didn't see any issues.
Any chance you could get a screenshot or something?
What device is this? A snapdragon?
EDIT:
I've updated the PR to only use the framebuffer-fetch shader blending when dual-source blending is required, so hopefully that will avoid the corruption seen on games that don't actually use the feature (like wind waker).
I still haven't repro'd said corruption, so I suspect it's a driver bug as I can't test Qualcomm's driver (as the only adreno I have is too old to support framebuffer_fetch at all) - so it's not *fixed* as such.
Snapdragon 821 Android 7.0 OpenGLES 3.2
Here is a zoomed in screenshot of the artifacts that appear randomly across the screen
This time it's from Mario Kart , this happens in alot of games with the latest updated PR too
(07-23-2017, 10:36 AM)cruise871 Wrote: [ -> ]Snapdragon 821 Android 7.0 OpenGLES 3.2
Here is a zoomed in screenshot of the artifacts that appear randomly across the screen
This time it's from Mario Kart , this happens in alot of games with the latest updated PR too
Yeah, that looks like a driver bug. There's nothing I can think of that the shader now does that would cause block-level artifacts like that.
Not really sure what to do - I don't really want to abandon this work, but if the majority of people using it will be Adreno users there's not much point...
(07-23-2017, 10:19 AM)Nintonito Wrote: [ -> ]Folder is empty. I tried to get a few screenshots but now the error messages no longer appear.
You might be able to get the messages out of "adb logcat"
(07-23-2017, 10:49 AM)JonnyH Wrote: [ -> ]Yeah, that looks like a driver bug. There's nothing I can think of that the shader now does that would cause block-level artifacts like that.
Not really sure what to do - I don't really want to abandon this work, but if the majority of people using it will be Adreno users there's not much point...
I think this is a major improvement and some games do not have these glitches at all either.
Are there any alternative settings I can change that may help ?
Is there something else that could be causing these ?
Like efb to texture or texture cache accuracy or anything like that ?
(07-23-2017, 10:49 AM)JonnyH Wrote: [ -> ]Yeah, that looks like a driver bug. There's nothing I can think of that the shader now does that would cause block-level artifacts like that.
Not really sure what to do - I don't really want to abandon this work, but if the majority of people using it will be Adreno users there's not much point...
I mean if your work is correct then included it regardless. Dolphin on Android has long persisted in letting users suffer the problems of driver bugs. Better to include it and force awareness of vendor problems then not include it at all. I mean eventually Qualcomm may fix it, we've seen improvements before, and it looks like otherwise all other vendors are A-ok.
I just noticed that the Pixel C and Nexus 9 don't appear to expose this extension. Being that they lack the desktop openGL of other tegra devices, does that make them SOL?
(07-23-2017, 11:20 AM)Nintonito Wrote: [ -> ]I just noticed that the Pixel C and Nexus 9 don't appear to expose this extension. Being that they lack the desktop openGL of other tegra devices, does that make them SOL?
Yeah, no GL_EXT_blend_func_extended or one of the shader_framebuffer_fetch extensions likely means you won't be able to solve this without resorting to a second render pass - which was so horrible to maintain it was abandoned ages ago.
EDIT:
https://gfxbench.com/device.jsp?benchmark=gfx40&os=Android&api=gl&D=Google+Pixel+C&testgroup=info suggests the pixel C exposes EXT_blend_func_extended - so it doesn't need the framebuffer_fetch stuff and already should have worked without my changes...