The iOS app I am working on creates relatively large number of textmesh pro texts in space, and their creations are spread out in time. There are not so many texts show up at the same time so the device shows no sign of slowing down when rendering them. However, the total number of textmesh pro text that has shown up on screen during the entire app running session cannot exceed a certain amount. When that amount is reached, the iOS device (an ipad pro 4 in my case) freezes, no crash, no cpu activity, just freeze in idle.
What I have tried to pin down the problem:
- hide everything except textmesh pro to consistently reproduce the bug
- abort all textmesh pro creation and run other things normally, the bug never happened;
- reproduce multiple times with text pop onto screen in different order, to confirm the amount of text needed to reproduce the issue is not random number
- randomly turn off some of the texts when they about to show up, and confirm this will delay the freeze by the same rate of random turn off, so again it is caused by total number of texts showed up
- changed rendering mode of tmp font to raster, changed SDF shader to directly output red color, and no change observed, so shader is not the issue (BTW when changed to color mode for one font, unity always crashes)
- checked profile in XCode when running on iOS, nothing suspicious
It run normally on Windows and Macbook, bug only happen on iPad.
I will try reproducing the bug in a simple test scene, if possible.