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

CPUParticles2D renders wrong with GLES2 on iOS if scene uses NinePatchRect, Panel, Button or ProgressBar #32837

Closed
Tracked by #38441
volzhs opened this issue Oct 14, 2019 · 18 comments

Comments

@volzhs
Copy link
Contributor

volzhs commented Oct 14, 2019

Godot version:
Godot 3.1.1-stable official
Godot 3.1.2-alpha 8f3fea2
Godot 3.2-alpha 48d3458

OS/device including version:
iPad 6th gen / 12.3.1

Issue description:
CPUParticles2D renders wrongly when scene has NinePatchRect on GLES2.
Here is a table to show if it renders correctly.

CPUParticles2D GLES2 GLES3
with NinePatchRect X O
without NinePatchRect O O

IMG_0002
on GLES3

IMG_0003
on GLES2

Steps to reproduce:

  1. Add NinePatchRect and CPUParticles2D
  2. run in on iOS device.

Minimal reproduction project:
test particle.zip

@volzhs
Copy link
Contributor Author

volzhs commented Oct 14, 2019

cc @clayjohn

@clayjohn
Copy link
Member

Is this a regression from 3.1.1? Or is the issue present there as well?

@volzhs
Copy link
Contributor Author

volzhs commented Oct 14, 2019

@clayjohn 3.1.1-stable (official) has the same problem.

@volzhs
Copy link
Contributor Author

volzhs commented Oct 15, 2019

3.2-alpha 48d3458 also has the same issue.

@volzhs volzhs added this to the 3.2 milestone Oct 16, 2019
@volzhs
Copy link
Contributor Author

volzhs commented Oct 30, 2019

@clayjohn would you have a look for this? 😃

@clayjohn
Copy link
Member

Im sorry, I don't have an IOS device to test on, so I don't even know where to start... :/

I looked through the code when you first posted this, but nothing jumped out at me. Without being able to reproduce I can't really do anything more.

@volzhs
Copy link
Contributor Author

volzhs commented Oct 30, 2019

thank you for your time anyway. 👍

@akien-mga
Copy link
Member

Comment from @klimi15 in #34637:

I have traced down the Bug a little more. Since I had no NinePatchRect , it also effects Panels,Buttons,Progress Bars. Not Canvas Items in generell though with Labels in the scene it works.

When those are in the Scene, the GLBindTexture does not seem to work. I have no idea why though.

@akien-mga akien-mga changed the title CPUParticles2D renders wrong with GLES2 on iOS CPUParticles2D renders wrong with GLES2 on iOS if scene uses NinePatchRect, Panel, Button or ProgressBar Jan 3, 2020
@akien-mga
Copy link
Member

NinePatchRect, Panel, Button and ProgressBar are all GUI elements which can use nine-patch slicing feature for their stylebox textures, so the issue is probably related to that codepath.

@clayjohn
Copy link
Member

I would like for this to get fixed, but unfortunately we don't have anyone stepping up that can work on iOS, so bumping to 4.0.

@clayjohn clayjohn modified the milestones: 3.2, 4.0 Jan 10, 2020
@akien-mga akien-mga added the cherrypick:3.x Considered for cherry-picking into a future 3.x release label Jan 10, 2020
@clayjohn
Copy link
Member

clayjohn commented May 3, 2020

Good news! I am fairly certain this is the same underlying bug as #38318 which seems to be solved by #38318 (comment)

If it is, we should have a fix on the way shortly. :)

@akien-mga
Copy link
Member

Can you confirm if this is now fixed in 3.2.3 / 3.2.4-beta1?

@akien-mga akien-mga removed the cherrypick:3.x Considered for cherry-picking into a future 3.x release label Oct 21, 2020
@akien-mga akien-mga modified the milestones: 4.0, 3.2 Oct 21, 2020
@volzhs
Copy link
Contributor Author

volzhs commented Oct 21, 2020

tested with 3.2.4-beta 150f9ce
it still happens, but a little bit different.

image

@clayjohn
Copy link
Member

@volzhs did you disable half floats using the added project setting?

@volzhs
Copy link
Contributor Author

volzhs commented Oct 22, 2020

@clayjohn all settings are default.

@clayjohn
Copy link
Member

@volzhs do you mind trying again with the disable_half_float setting?

@volzhs
Copy link
Contributor Author

volzhs commented Oct 22, 2020

@clayjohn yeah. that made it work. I just read the description of this option.

image

@clayjohn
Copy link
Member

@volzhs thanks for trying again!

I will close this as it is fixed by #38318

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

3 participants