-
Notifications
You must be signed in to change notification settings - Fork 7.1k
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
Performance downgrade from 3.50.0-beta.10 to 3.50.0-beta.12 #5500
Comments
There is a new Phaser version (3.51.0 ). You've tried?. Phaser page download |
It would still do this under 3.51 because this example is switching between two pipelines (the multi pipeline and the graphics pipeline), and that is just how many gl ops it takes to do that switch. |
Yes, like I have written, it is still under Version 3.51.0 but I managed to narrow it down to the versions the change / break happened. |
It's not a break, it was fully intentional to split these pipelines apart. |
@photonstorm so is there any way I can get the old performance on the new version or would it require me to restructure my whole codebase? Or should I just stay on the old version for now? |
Note to self: Could investigate providing a new pipeline which merges Multi and Graphics together, but maybe too late in the v3 dev cycle for this. |
Thank you for submitting this issue. We have fixed this and the fix has been pushed to the |
Version
Description
When I upgraded from version 3.50.0-beta.10 to 3.51.0 I noticed that the performance of my game was considerably worse than on the older version.
I used specter.js to inspect the draw calls that the WebGL renderer was creating and found out that the new version made a whopping 113 (including draw calls) commands comparing to the 4 commands from the old version. It has probably something to do with the Multi-Texturing-Pipeline breaking.
I dug a bit deeper and found out, that it changed between 3.50.0-beta.10 and 3.50.0-beta.12. I hope that helps you out when trying to reduce the possible causes.
Example Test Code
https://codesandbox.io/s/phaser-3500-performance-webglmulti-jn318?file=/src/index.js
You can switch between the phaser versions there and then inspect them with the specter.js chrome extension. (16 vs 19 commands in this small example alone)
Additional Information
Specter Screenshots
From the new version:
From the old version:
The text was updated successfully, but these errors were encountered: