Might be related to the use of the Basis WASM module.
If you need to use texture compression on an older device, remove the basis compression on the textures (untick Basis and ‘compress’) and compress with legacy options.
I tried @yaustar suggestion but it didn’t work. This issue persists for Playcanvas’ default project, without any materials on the primitive objects. I’ve created a new ticket here:
Yes that is what you should be seeing it’s temporary assets but at least we know it’s a new issue on iPhone4S that wasn’t there on Sept 8th of this year
Looks like we introduced a change that broke support for iOS 8.
Going forward, we aren’t sure if we still want to support older versions of iOS as they are very old now.
The short term workaround is to update the devices to iOS 9.
If you are self hosting the build, you can replace the engine with an older version. Go https://code.playcanvas.com/playcanvas-1.47.2.min.js and replace the version number with the one that you would like to use.
Ok, that’s the short workaround. But can you give me a long-term solution when or if you stop supporting iOS 9.
Like, what do I need to do in terms of setting up a playcanvas engine locally on my computer so that I can continue working on my project for iPhone 4S. Are you guys planning on releasing at least the legacy PC editor for those that have paid you guys all these years for your service? I mean I don’t plan on developing for devices newer than iPhone 4S precisely because the market will have that phone as the cheapest to purchase in bulk for me to distribute our game
The fact that it doesn’t run on iOS 8 is a bug that we need to investigate and evaluate if we should fix it without affecting forward features given that a 10 year old iPhone 4S does support iOS 9.
Arguably at some point, we may stop support a particular version but even for iOS 8, that’s 7 years old now.
There are currently no short term plans on releasing an offline Editor or keeping a version running that supports older versions of the engine.
This is tricky as it is possible that the Editor may change the data format to support the latest versions of the Engine.
In theory, as long as the project is not using any new features beyond an Engine version, you can still use that Engine version going forward. However, we cannot promise that to be true all the time.
In your situation, what I would do is keep archives of published builds that have unminified code. That way, at the very least you could edit code in __game-scripts.js and change scene by hand.
It’s not a great solution but this has been the only case where such an old device and iOS version needs to be support by a developer that I’ve had.
Here’s a little update. iOS 8 support broke because the engine code was updated to iterate the contents of a Set object. You can see here that this was only supported from iOS 9 onwards: