What is considered too much RAM utilization for an endless side scrolling game today?
monchi7118
Member, PRO Posts: 1
I have made attempts to lower RAM Consumption but I have only managed to bring it as low as 59.8MB when testing on an IPhone 6S Plus.
The game is about half way done and I am afraid it may be too much to handle for most phones.
Any information on this will help ! Thank you in advanced !
My Frames per second: 27.34
Memory Usage
Images:118MB Sounds:0 Game Engine: 17.3MB Other:0 Total: 59.8MB
Answers
mine is full of stuff
Images: 55.8mb
Sound: 2.0mb
Game Engine: 49mb
Other:67mb
Total: 173mb
and the fps: 60+
so there must be something not normal so far.
How do you see the FPS? Anyways, UltimateRunner, a game I helped release, has a signed APK like 97 mb, but then Google Play added like 17ish or 20ish mb more more for cache. The point being the game runs smoothly, at least in my opinion. So I guess that isn't the limit.
FPS generally doesn't correlate with RAM. FPS drops are far more likely to be caused by excessive processing.
IPhone 6S Plus has a max of 2gb of RAM, so you could get near 1GB and not run into issues as iOS tends to flag and error at about 40-50% of total ram usage.
You need to be using an adhoc build and hook it up to xcode instruments for real extensive testing.
Some general tips for optimizing processor usage would be:
Reduce the number of spawns used in the game, especially if they occur concurrently or very frequently.
Reduce the usage of constrains, timers, and loops that happen often and concurrently ( this one isn't as bad as it used to be).
Reduce the usage of particles, Especially if you are using hundreds or more.
Don't write to a table more often than necessary. Every .5 is maybe too much, every 15 seconds is probably fine.
Be careful with physics, excessive collision detecting, especially if using "better collisions" on a large number of actors.
A large number of actors with a large number of rules on a single scene can also lag
Write efficient code, ask yourself if your code is executing too often for what's needed. E.g. using constrains when a change attribute at the right time would suffice.
Follow us: Twitter - Website
Your game can keep using RAM until the device runs out of RAM. Modern cell phones and tablets are superb at managing RAM. An iPhone will keep giving you more until there's none left to give, with no adverse effects. When it runs out, iOS will kill your game, causing it to crash. You are only using too much RAM when this happens. If your game isn't filling the system RAM and being killed by the OS, it isn't using too much RAM.
You aren't using even close to enough to be needing to worry about this. Optimising it might help your game run smoother, but it's pointless as far as RAM consumption is concerned.
As others have said, it's with the logic that you're having problems. You've been given excellent tips regarding that already, so I won't repeat them.
Contact me for custom work - Expert GS developer with 15 years of GS experience - Skype: armelline.support