The daily build update v1.3.7 brings major performance improvements: We were working closely with some of our Pro customers and identified key possibilities to improve loading of sprites. The result of the engine optimization is stunning: Loading time for a sprite went down by 80%!
In the above-noted customer project more than 50 sprites got loaded in each level. For 50 sprites, the optimization led to a decrease of loading time from 20 seconds to under four seconds on the iPhone 4! The absolute improved loading time is higher on older devices, but still, it also went down from four seconds on the iPhone 5 to just a second.
This engine optimization is now available with the latest daily build version to all our Pro customers. We recommend to test the loading times of your released games on real devices again after updating your SDK, if you’re using the SingleSpriteFromFile or SpriteSequenceFromFile components it probably pays off to release an app update with this new version. Your gamers will enjoy spending less time waiting for the graphics to load and playing more.
Synmod Showcase Game
We added the game that was created to the Showcase section: Synmod is a biology learning game and is based on a real scientific project that uses synthetic biology to design new antibiotics. You can find the download link for the app stores and more information about the game here.
Fixture.onPreSolve and Using Memory Efficiently
Further additions of this daily build include a new signal Fixture::onPreSolve() which can be used to implement so-called cloud platforms like Doodle Jump. Cloud platforms are useful if you want to allow jumping through a platform from below, but once the player jumped through, it should be able to stand upon it and collide with the platform.
We also improved the NativeUtils::clearCocosTextureCache() function. It now additionally removes unused sprites if they got used from a sprite sheet created with TexturePacker. This allows you to free the memory of sprites in unused scenes and is important in games with big sprite textures on older devices like the iPod touch 4th generation with only 256MB RAM. You can also see the guide How to use TexturePacker with V-Play on how to optimize your sprite sheets to consume less memory. To see the amount of memory you currently have available while using your app, we added this information next to the fps counter on the iOS platform. You can enable it with the GameWindow::displayFpsEnabled property.
Demo Games Overhaul
Starting from this daily build you will find all demo games of the most popular game genres that come with the V-Play SDK fully cleaned up and ready as a starting point of your next game. We went through the source code of all demos and optimized it for readability and ease of use. Give them a try by browsing to your V-Play SDK directory and then to
for the full sources. With the next V-Play major version 1.4 you will also be able to select them in the New Project dialog in Qt Creator.
Stay tuned for more hot news in the following weeks – we are by no means in a summer slump. 😉