In my game, after a certain passage of time and image appears on-screen. I want the image to render come up as smoothly as possible. I can load the image in at the start and have the renderer disabled, but does this make it quicker than just instantiating it? Conversely, I can have the image rendered the whole time in a layer below the game interface and then just bring it to the front. I guess my question is this: How taxing is it to have the image rendered at 2048 by 2048 while running on iOS. I also want to know if it makes sense to load it in with my level, have it disabled and then enable it when desired, would it get better performance than just instantiating it. Thank you.
If you want to render just an image, like background or scoreboard texture then using GUI drawing would be more appropriate. But if you are still up to choice render versus instantiate, then render disable or setactive would be a lot better, as instantiation is pretty expensive, memory has to be allocated for that for every instantiated object, which is extremely significant, especially on mobile devices. Having a lot or “heavy” instantiation processes will eventually cause spikes in performance and short fps drops.
This is more of a suggestion for future best practices.
Pooling technique will be very useful if you have very dynamic world.