-
-
Notifications
You must be signed in to change notification settings - Fork 21.4k
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
Skeleton2D Node Makes Polygon2D Textures Dark in Android [GLES3] #27919
Comments
The reproduction project uses the GLES3 renderer. Can you reproduce this issue if you switch to the GLES2 renderer in the Project Settings? (Rendering > Quality > Driver > Driver Name) Judging by the screenshot, it seems sRGB colors are being forced on the texture with Skeleton2D assigned, but only on Android. This will look correct in 3D, but it will look wrong in 2D. |
|
@samdaiya Skeleton2Ds disappearing in GLES2 seem to be the same issue as #26933. |
What should I do to solve this? Any Workgrounds or permanent Solution? |
Should I expect this to be solved in 3.2 or I just distch using New Skeleton2D System? |
@samdaiya Since 3.2 is in feature freeze and nobody has been working on this, I don't think this will be fixed by the time it's released. It may be fixed in a point release in the future (no guarantees). |
It's sad to hear that. It's really good feature but Only Android have this problem. I've tried to track down problem myself but couldn't. Where should I look to solve this problem? I've checked Polygon2d and Skeleton2D classes but couldn't find any issues in them. |
@samdaiya This is likely related to mobile graphics drivers, which are unfortunately difficult to debug (especially if you don't have OpenGL experience). |
I'm still learning basic OpenGL. Hopefully it will be solved in 3.2.x. Until then I will use old method for skeleton Animation without Polygon2D. |
Tested in the current master branch (bab91bd) on two devices:
So the bug in OP is GLES3-specific, but old GLES2 devices have an even harder time with Skeleton2D. I'll open a new issue for the GLES2 issue. |
Aiming for the 3.2.1 release |
Good to know. |
Any update on this? Still facing the problem. |
@samdaiya It might be worth checking whether 3.2.4 beta1 solves this issue. It has new GLES3 rendering code that supports batching. You can also check whether this has been fixed in GLES2. |
Yes in 3.2.4 2d software skinning is supported in GLES2 and GLES3 (and is on by default). This should hopefully solve the problem of skeletons not working on some GLES2 hardware. As to the colors, I'm not sure off hand. The 2d polygons have vertex coloring if I remember correctly. Could be a linear / sRGB discrepancy. |
I downloaded v3.2.4.beta1.official and imported SkeletonBug in it, Now Godot Editor ( GLES2/GLES3 ) is not able to show Polygons2Ds that have Skeleton2D attached to them. Also it is not visible in Android. |
I'll have a look when I get back, there may be another skinning bug to solve (I've only had 3 test projects to test for regressions). But it is unlikely to be a big problem, and if it works on desktop it should work on android (as the shader is quite simple). Until then you could test these projects on android: Edit: When I had a look at skeleton_bug.zip, it doesn't seem like the project is set up correctly to work in 3.2. The objects were not synced to the bones in the skeleton. When I synced the bones and rigged the arm, it worked. Perhaps there have been some compatibility changes in import since the project was made? There is actually some difference occurring in the unsynced (broken) position in 3.2.4 versus 3.2.1, but it works once it has been rigged correctly. I will investigate the difference when I'm back. The strange behaviour may be because it is not rigged correctly. This could be causing some uninitialized value or something. Even when rigged correctly for the arm, it shows up correctly with batching on (i.e. software skinning), but not with batching off, indicating earlier bones may be corrupting the skeleton. Ah I've realised there may be some interaction with the legacy draw polys bug that is present in 3.2.4 beta 1 (since fixed). This might explain the difference in behaviour compared to 3.2.1 when the character is not rigged correctly. |
|
Should I close this issue now? |
Closing as this now seems fixed. |
Godot version: 3.1.stable.official
OS/device including version: Android 8.1 (Realme 1)
Issue description: When I create a character using polygons and run it on Android Device everything looks okay but when I assign Skeleton2D Node to it Textures of Polygon turns Dark.
Screenshots:
Output On Linux
Results On Android
Steps to reproduce: Create 2D character with polygons and then Create and Assign Skeleton2D Node to it. Run it on android device.
Minimal reproduction project:
SkeletonBug.zip
The text was updated successfully, but these errors were encountered: