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

Software rendering broken on Hashlink #3278

Open
ACrazyTown opened this issue Oct 30, 2024 · 7 comments
Open

Software rendering broken on Hashlink #3278

ACrazyTown opened this issue Oct 30, 2024 · 7 comments

Comments

@ACrazyTown
Copy link
Contributor

ACrazyTown commented Oct 30, 2024

  • Haxe version: 4.3.6
  • Flixel version: 5.9.0
  • OpenFL version: 9.4.0
  • Lime version: 8.2.0
  • Affected targets: Hashlink

To reproduce set hardware="false" on the window tag in Project.xml


Code snippet reproducing the issue:

Empty state


Observed behavior:

Graphics seem to get rendered on top of each other and are never cleared.
image

Expected behavior:

Consistent rendering like how it is on other targets

@Geokureli
Copy link
Member

Geokureli commented Nov 25, 2024

I was able to reproduce this issue in a pure OpenFL project and created an issue, there

@ACrazyTown
Copy link
Contributor Author

ACrazyTown commented Nov 25, 2024

Hmm.. I can't reproduce it in a project made thru openfl create project but if I put the same code from your issue in Main.hx of a flixel project it seems to happen. Not sure if I'm missing something

EDIT: Doing FlxG.camera._scrollRect.removeChild(FlxG.camera._flashBitmap); seems to fix it. Not sure why this would be affecting graphics globally?

@Geokureli
Copy link
Member

Geokureli commented Nov 26, 2024

Doing FlxG.camera._scrollRect.removeChild(FlxG.camera._flashBitmap); seems to fix it. Not sure why this would be affecting graphics globally?

After looking into this, I notice that hardware="false" causes flixel to use "blit" rendering. Which I have to assume comes with a hefty performance hit. What benefit drew you to try hardware="false"?

@ACrazyTown
Copy link
Contributor Author

After looking into this, I notice that hardware="false" causes flixel to use "blit" rendering. Which I have to assume comes with a hefty performance hit. What benefit drew you to try hardware="false"?

I tried it while working on the maxTextureSize changes

@ACrazyTown
Copy link
Contributor Author

ACrazyTown commented Nov 26, 2024

Resizing the window once fixes the issue and makes it work as intended. I'm really confused as to where the cause of the issue is

@Geokureli
Copy link
Member

Given that hl on hardware=false is a very niche use case I'm gonna take this off off 5.9, let me know if you come up with a good answer. My guess is that we are not checking FlxG.renderBlit somewhere on hl since it's rarely tested

@Geokureli Geokureli modified the milestones: 5.9.0, Next Patch Nov 26, 2024
@ACrazyTown
Copy link
Contributor Author

My guess is that we are not checking FlxG.renderBlit somewhere on hl since it's rarely tested

Why would it be affecting things such as the mouse sprite and debugger or any other non-flixel level things? And the fact that resizing the window seems to fix it makes me feel like the issue is outside of the flixel level

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

2 participants