Wednesday, October 12, 2016

Quality settings on mobile VS battery life

(Repost from the dev blog)

It's always important to try and balance image quality vs performance in every project because when you get up to a certain point with a certain tech, then it'll stop giving out better perceptible image quality, while still eating up CPU and GPU resources. This is even more important on mobile platforms since they are powered by a battery and more strain on those components means less battery time.

When i was making my game i thought of adding an option to select the texture quality in the game in order to save RAM on devices that don't have a lot of that precious resource. All it does is if you set it "High", it will render the textures in their full resolution and have anisotropic filtering on, and if you select the "Low" setting it will render the textures in half their resolution and disable anisotropic filtering.

You can see the difference that the option actually makes. Left is High quality, right is Low quality. It may not look like much of a difference on a small screen, but it halves the amount of RAM used by the textures.

However: One my friends testing the game decided to do a small benchmark on battery life VS textures. Granted, the way it was done needs more refining and better controlled environment variables, but for what he wanted to check it's good enough. He just wanted an indicative value.

He took his iPhone 6s, went into flight mode and then only enabled the phone's WiFi. He then had just the game running and played the actual stages while timing himself.
The first run was done with the quality setting on High, and the second run on Low. He said that his times were very close with give or take just a couple of seconds. (And i trust him on that. He found exploits or "shortcuts" in the stages that i couldn't.)

And the battery life?
On High the battery went from 100% down to 70%.
On Low it went from 100% down to 89%

Granted, it does need a more controlled test with an automatic timer and standardized routes and video evidence, but this does show a bit how just changing the texture quality will affect battery life instead of just RAM usage. Personally i wasn't expecting such a difference on a device that is more than enough to play the game fine while the only thing that changes is the Texture memory use. No Level of Detail thing going on here or polygon reduction on Low setting.

On the left, Level selector for World 2 stages.
The texture on the "Low" resolution setting gets blurry as it is half the resolution of "High" mode.

On the right we have World 2 Stage 7. Same thing on this one as well. In some elements the texture resolution reduction is more evident than others, but it happens to all textures regardless.


Wednesday, October 5, 2016

State of journalism. [Rant]

So i saw this article in Forbes website, stating that apple is planning obsolescence in its products. What else is new, EVERY other company is doing that, and it's not nice.

However the article states that it's doing that with the iOS10 update and how it removed the "swipe right to unlock" thing and the users are now forced into pressing the home button and that it would wear it down faster. That shows how much research (wasn't) done into the thing. It's just a couple of clicks away to disable the push button and just have it unlock when you rest your finger on the ID sensor. Couple that with the capability of simply lifting the phone up and having the screen wake up, and you'll never have to push the button unless you reboot your phone!

The point is not to defend apple or the iphone, but to show how click-baity the whole thing has devolved into. If you go to that person's twitter, you'll see a "Great feedback!" tweet regarding that article. The feedback was every message telling how wrong the article is. But "Great feedback" has positive connotations and the comments to that article are not readily available once you go there to see the article, nor are they in the place you'd expect them. So it isn't apparent that the article was wrong! The comments are tucked away on the left of the screen and you have to click on a button to have a sort of drawer come out to see them.

Of course a "Thanks for correcting me" wouldn't be the same as "Great feedback!"...