Start.js change for old iphone or IOS?

When using PlayCanvas based webgl on IOS Device, our team use to have texture problem based on version of IOS like back in 2022.

it was same issue with this so we added some phrase to fix texture problem and maintained it just in cases someone connect our website with old IOS or old device(iphone 6 or lower)


we used to put it like this on older version of start.js, but since this start.js structure has been changed yesterday, we are not sure this will work the same


and we found out that this new phrase saying old webgl graphics device creation is added. Has the texture problem used to happen on old ios device been fixed?

or if not, where can we edit parser function in order to fix old IOS problem?

@Mark_Lundin

I assume you’re talking about the quality loss when using an alpha channel from the png? If so, this has been fixed about a year ago, but only the devices that can be updated to that version would benefit. I don’t remember which version it was, nor what devices are excluded (most likely at least iphone 6).

The way I did it back then was to patch the engine to use uPNG like this: https://playcanvas.com/project/870259/overview/added-upng

You can adapt it so that it is only done on iOS and versions X and below (look for upng-patch.js) and change the loading type to be ‘after engine’

Hey @Deanies, you can add custom handlers just after you call app.init() on line 256. You can see where I added this here Add Custom App Handlers · GitHub

As you mentioned though, IOS have fixed this issue and they’re pretty pushy with their updates, so I’d consider leaving this where possible, and if not, then maybe ensure you’re only doing this for older mobile safari browsers, as you don’t want to use this for all browsers.

Thank you guys for answering this question. It really helped. I will dig into solution you suggested.

Just Curious. Is there any side effect for using this method for new Ios system? we been using this method over a year without if condition but had no vivid problem.

Only some performance impact. But if you don’t have a performance issue, than that’s a no problem.

Thank you!