My project can't run on iOS

Here is the thing,
I have a car build with playcanvas,recently I packaged to an app,it plays well on PC.And it went well on Android,
BUT BUT BUT,when I open my app on IOS,it just shutdown my app,or it can’t load out,NOT just on IOS15,and also on IOS 13.6,I have tried many times on diffrent iphones with diffrent type.
it’s very urgent,please help me,someone,is there someone?

Hey, IOS usually shuts the app when its taking too much VRAM Memory. Can you look into the profiler and tell what’s the VRAM size does your game has?

2 Likes

For iOS texture compression is usually a must to get any meaningful number of textures running without crashing:

https://developer.playcanvas.com/en/user-manual/assets/textures/texture-compression/

2 Likes

YES,I have founed that out,It used about 600M RAM,
and there is another problem,I have a frame to limit my poject about 400*600,when I just run the pacage not on the app,It size come to a very big frame,and I can see my car just a corner.

1 Like

I have checked my texture,my project just have seven textures,and when I published out,the pacage is just about 10M,I can’t understand that why when I run this on iphone,it will use about 600M RAM.
I have done project like this for many times,the other pacage on my app didn’t have this problem at all.

Is it 10MB of jgp textures? When WebGl uses those, they get uncompressed, so it’s effectively bmp size. Ideally you’d compress them in the Editor to basis format, which is what GPU natively uses. This way a size of build will be the same as size in vram.

1 Like

NO,not the textures about 10M,it’s my project 10M
Did you means that,if I compress my tex tobasis format,it will decrease a lot of VRAM use?,maybe I should try this.

Read more here: Basis Texture Compression arrives in PlayCanvas | PlayCanvas

1 Like

I have tried to use basis texture compression,there comes anther problem,my textures are AO texture,when I refresh the page,it seems like the textures didn’t work at all.

Are you able to share your project or a smaller project that reproduces this issue, to take a look?

I have found out the problem,it seems like the resolution width&height setting didn’t read as resolution in IOS,when I set to 828640 it become a verey big size window used about 600M VRAM,then IOS killed it.
I tried to decrease the resolution to128
128,it works fine and just use about 180M VRAM.

It’s828_640,and 128_128.

Thank you for your help,I have tried the basis comperssion,it’s not work nicely,maby my tex are AO_tex,so it’s comes too much wrong pixels.

Are those the texture resolution? If so, I recommend using power of two dimensions as iOS can do odd things at different resolutions.

eg use 128 x 128, 256 x 256 etc 512 x 256

1 Like

No,no,no,I said that is in the settings,there is a resolution width&height in rendering.I set to828x640,it’s too big and it out of the screen,when I set to 128x128,it’s appropriate to the screen.

Odd that increasing the rendering resolution would increase the VRAM usage that much.

As Leonidas suggested, if you can share a small, public reproducible project for people to look at, that would be great. Or a build (that doesn’t run on iOS), that would help too.

Are you using any post effects? That can justify the increase in VRAM with the increase of rendering resolution, for post effects that utilize one or more render targets that are trying to match that resolution.

Sorry,I don’t konw how to share my project.if you want to see my pacage,I can send you by email.

Publish a build and post the link here.

X7_PLUS - PLAYCANVAS like this one?