Hello, this is my first post here.
I really like Phaser, it saved me tons of time. However, I have a very weird issue with overheat.
The game I made runs at a stable 60fps and according to profile 80% of each frame it’s in idle. But for some reasons the fans of my laptop are working extremely hard as soon as I launch the game. I’m using Macbook Pro, but my friends with Windows PC reported the same behaviour.
Are you sure the Phaser game is causing the issue? Have you checked the Activity Monitor on your Macbook to verify Firefox has the highest CPU/memory usage? Otherwise, it would be helpful if you posted or messaged me with a ZIP of your project. I’d be happy to see if it’s a project based problem or if there’s something funky with the release you’re using. The other issue from first glance that could be causing this might be creating objects in your game without removing them.
Thank you for the reply. I’ve prepared a simple project. It has less content, so it takes a little longer to boost my fans, but it’s still happens. After around 30s of just idle fans start to accelerate and by 60s the reach max speed and never stop until I close the tab.
I think it’s just a webGL thing. Did you try using CANVAS for rendering?
In my laptop (HP), when I use webGL, fans will run faster (I think because it’s a GPU heavy task). and when I use CANVAS fans will run at normal speed.
Not sure on this. but I think choice of rendering engine is a thing to consider here.
Hello theNeedle,
I used CANVAS at first, but it wan’t able to render the game at 60fps and the fans we also running fast. When I switch to WebGL, I got a smooth gameplay with stable 60fps, but the fans problem didn’t disappear.
Macbooks/Pro cooling systems are super crappy. They prioritize a silent machine instead of a healthy (cool) one. That’s why the fans kick in only when the temperature is really high, so when the fans start to work they run at high speed.
I had to install an app (Macs Fan Control) to gain some control over how the machine is regulating its temperature.
Anyway, it’s common for laptops to gain some heat when using WebGL. I’ve found that the more drawcalls you do, and the more data transfer you have between CPU and GPU, the more they heat.
EDIT: I see in your example that you are using Spine plugin. That’s a probable cause, although it’s normal. Spine uses meshes, that means it will have to update the vertices of the meshes every frame of your animation. That might be causing the extra flow of data between cpu and gpu.