Make faster iOs previews/games

Hi, my Developer build works fine on 1 Windows PC and 2 Android phones, but yesterday on a friend’s iPhone X (Safari) it ran poorly, with like 5 FPS.
I had only 30 secs of test, but I just tried again on a 3-4yo iPad (Opera), same result.

Is there some known issue with HTML games on iOS?

I ask because my access to iOS is very sporadic and there’s nothing helpful that I’m able to find with a web search.

(I don’t know when, but I’ll try these steps to debug poor performance.)

It may be as simple as Apple just not keeping up with those older devices. They seem to let anything older than a year rot. I would just focus more on current hardware. Focusing on performance will be beneficial regardless, but if it only runs poorly on a few specific devices, then it’s probably those devices with the problem. Not your game/app. There isnt much you can do specifically if safari is having trouble. Does it do better as a downloadable app, or is it a browser only application? If the app version runs better then you will know for sure its just safari being crap.

Hi DavidBevi

Next time you have access to those ios devices, you could try playing other people’s GDevelop games on Liluo and see if you experience any lag. I have a five year old ipad with a lot of different browsers, I’m happy to test your build if you want a larger variety of ios feedback. Ooh, just remembered I have an eight year old ipad as well.

2 Likes

That’s super nice, thanks!
Untitled Asteroid-like game (superalpha)
Controls ATM are quite rough, to keep it simple: touch the red wheel on the right to accelerate+rotate the ship. [The areas that become red when speed is high are brakes. The arrows on the left accelerate only.]

The FPS is capped at 20min and 60max. There’s an FPS counter in the top left corner, but I think I did not account for the “Developer build” text which hides it.

I wouldn’t be surprised. I’ve come to hate A for this (+ many more things).

It’s browser only. Giving my money to A is out of question, as it is settings like 11 levels of workarounds to be able to sideload an app.

Hi again, first of all I played it on my laptop with firefox and the fps was 20-30. Later I tried with Chromium browser (not Chrome) and it was 20/30/60 so I tested again on firefox and it was 20-21. But, the counter changes so often it was hard to keep up. I’ve used this one and it only updates once a second and is easy to check.

https://wiki.gdevelop.io/gdevelop5/tutorials/how-to-debug-poor-performance#fps_counter

On the five year old updated ipad. I used firefox, safari and opera. All had fps of 25-28ish and played smoothly. I also have opera mini which I don’t think is available any more. It played fine but the fps counter didn’t seem to work as it stayed on 20. The counter was visible below the logo.

My eight your old ipad was no help. It’s not updated and there was even a warning from Safari that that it couldn’t even display this forum properly. When I tried the game link in Safari and Firefox it was just a black screen with the Development build heading but the GDevelop logo never loaded. Battery was dropping fast and I stopped trying at 2% haha.

1 Like

I’ve tried it on a Samsung Tab Active (about 8 years old) running android 5.1.1, Chrome 95.something. It struggled at 20 FPS.

Just a comment on the game - it looks like you’re using mouse click to simulate touch. You may want to look into using multi touch instead, so multiple touch interactions can occur simutlaneously.

1 Like

@MrMen, thanks for the suggestion about multitouch, I’m already doing it, even though I’m finding it difficult to understand and implement I’m beginning to see some results.

@MrMen, @Bubble, thank you very much for testing the performances.
Hmm. I guess I’ve a poor understanding on what makes a small/fast game.

I’ll try to document myself more, meanwhile, since you have seen my project, knowing that all you see is drawings objects (excluding the red dot in the center of the screen which is a sprite with physics behavior), have you any guess on what’s the problem and/or how to fix it?

[ASAP I’ll remake it with less vectors and more sprites, and post the link in this thread.]

Yeah, apple does allow a big usage margin of error of the longevity of apple products. But my 2018 iPad Pro is still performing above expectations. A power-user tends to prolong those things.

I think having a broad set of apple mobile devices to test with is a great debugging toolset. I have a 2016 iPod touch on iOS 12 and an iPad Pro2018 on iOS 15 and my personal iPhone 13 P M on iOS 16 PB 2

Versions differences also help with debugging

I do believe it could be a safari issue though…