Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Moving from GLES3 to GLES2 glitches some models #42781

Closed
gamedevboi opened this issue Oct 13, 2020 · 8 comments
Closed

Moving from GLES3 to GLES2 glitches some models #42781

gamedevboi opened this issue Oct 13, 2020 · 8 comments

Comments

@gamedevboi
Copy link

Godot version:
Godot 3.2.3 Stable Standard x64

OS/device including version:
Android, mainly I'm testing in Google Pixel 2 (Emulated), But I also tested on the following: Asus ROG(Emulated), Samsung Galaxy A01(Real) Nexus 7 (Real), Moto g7 (Real), LG Q6 alpha (Real)

Issue description:
I created a 3d game for PC using GLES3, very low poly, I was going for a PSX look. I want to make the port to mobile, and in order to get better performance I switched to GLES2 that version of the project, most of it is good but lower quality just like I expected but there's 2 models, that are glitched out.

This is how they're suppose to look:
Screenshot_71

This is how they look on every mobile device I tested:
Screenshot_72

Steps to reproduce:

I uploaded a simple project, with the models that are glitching, I'm not sure what I'm doing wrong, You just need add the android build yourself since I can't upload the whole project beacause it would be around 77mb, and then export to android and you'll see the issue once you open the app in a phone, real or simulated it's the same issue.

Glitched models.zip

Thanks everyone I hope you guys can help me find a solution, I'm thinking this may have something to do with how GLES2 handles bones or animations, because nothing else in the real game is broken, just this 2 and are the ones with animations and bones.

@Calinou
Copy link
Member

Calinou commented Oct 13, 2020

Skinning is handled in a different way in GLES2. See #40313 which attempted to fix this, but there are regressions which need to be fixed.

@gamedevboi
Copy link
Author

Skinning is handled in a different way in GLES2. See #40313 which attempted to fix this, but there are regressions which need to be fixed.

Sorry I'm not getting this, Is there like an setting I need to turn on to enable software skinning? Im sorry to bother.

@Calinou
Copy link
Member

Calinou commented Oct 13, 2020

@gamedevboi As far as I know, there's no way to configure skinning using a setting (when using GLES2 at least). You'll have to wait for a fix to land in 3.2.4 or a later point release.

@gamedevboi
Copy link
Author

Ohh, thank you! I hope this issue can be solved soon. :)

@gamedevboi As far as I know, there's no way to configure skinning using a setting (when using GLES2 at least). You'll have to wait for a fix to land in 3.2.4 or a later point release.
Oh gotcha! Thanks I hope this issue can be solved soon! :)

@lawnjelly
Copy link
Member

lawnjelly commented Oct 14, 2020

This looks like a bug in one of the hardware skinning paths.

You will be able to get around it by changing a project setting to forcing software skinning once the regressions are sorted, however it is not ideal because software skinning is intended as a backup path, with the defaults this same situation could still glitch for other developers.

I would normally suspect precision in the shader, but you say it is occurring on emulators which normally have full precision. For the emulators : what platform / OS / emulator are you running?

We may be delayed at looking at this until the software skinning regressions are fixed.

@gamedevboi
Copy link
Author

I'm using memu as emulator and usually I emulate a google pixel 2 tablet with the most recent android available, I think it's 7.1.2 atm, at least that's what the tablet says. Mmmm, it may be stupid for me to ask, but how you change that setting forcing software skinning? I can't find where can I change that to just try and see what happens

@lawnjelly
Copy link
Member

It's not possible to do yet in 3.2.3, software skinning has only just been merged into 3.2 branch, and there are still some regressions to fix. Should be available in 3.2.4... there will be betas quite soon I'm sure.

@akien-mga
Copy link
Member

Seems fixed in 3.4.

GLES3:
image

GLES2:
image

@akien-mga akien-mga added this to the 3.4 milestone Apr 6, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

4 participants