GraphicsStateCollection seems to not working – Shaders recompiling at runtime again

I’ve been using the new GraphicsStateCollection system in Unity 6000.0.24f1 to optimize shader loading on my iOS project. I trace the collection on my device and send it back to the Editor. To improve performance, I load this collection at the game’s startup with GraphicsStatesCollection.WarmUp().

Initially, this worked perfectly, with shaders loading smoothly and no runtime compilation stutters. However, after several builds, my iPhone has started ignoring the preloaded shaders and is now recompiling them at runtime, causing noticeable lag. It seems like the WarmUp() call is no longer effective, but I’m not sure what might have triggered this change.

Has anyone else encountered this issue with GraphicsStatesCollection on iOS after multiple builds or found a reliable workaround?

3 Likes

bump - Is there anyone who could help?

Can you show your source code for how you do the warming up?

Is it possible that shaders or anything else have changed, even slightly, since you did that capture? You need to capture again every time anything changes.