To find out all the dirty, technical details, we spoke with Dmitry Yudo, Lead Producer for World of Tanks Blitz. Here’s what he had to say…
What were the main differences that you encountered while building World of Tanks Blitz for Android? How have these affected the game?
Well, we may have been over-positive about the amount of effort that would be required of us to bring the game to Android, initially. During the development we ran into a number of performance issues that we had to overcome before the final release, kudos to the team for winning it.
We had to implement some new technologies to the engine like skeletal animation, the way we work with UI, geometry, and shadows, to make the game playable on as many Android devices as possible. With these changes we aimed to reduce the number of draw calls. On some of the devices, performance increase was 10–20 FPS or about 50%!
For the majority of devices, apart from those powered by PowerVP GPU, our stencil shadows were too expensive in terms of performance. Switching them off, we got a huge boost: e.g. on Mali GPU up to 15 FPS. In some rare cases on hi-res tablets with Mali GPU, garage FPS surged from 15 to 60.
Other than that, everything was smooth, since we’ve already been running the game on iOS for more than 5 months, now.
What are the common misconceptions that players can have when bringing a game to a new platform? Some believe that it’s quite a simple task.
Obviously, many of our players expected us to release the Android version in a few weeks after the iOS release, which was not really feasible.
Adding a new platform is a complex task. Speaking of Android, we had to add support for “single tap” Google registration and a few Google services (like Achievements), integrate Google payment system, develop relations with the platform (Google itself), take care of compatibility and performance on numerous devices, establish workflows for simultaneous cross-platform and multi-region releases and many other things. Doesn’t really sound that simple, does it?
What was one of the most unexpected things that you encountered during development? Was one design aspect more difficult than you imagined? Was something easier? What caught you off-guard?
Answering your first question, it was definitely Android fragmentation and performance. Can’t say that we were not prepared, because we were, but it still was a surprise for us. Google dev console lists some 7,000+ devices, with different manufacturers, hardware, software/firmware, drivers, etc. Compare that with iOS with basically 15 devices, all pretty unified.
It was tricky and complicated to establish the range of supported devices and work out the minimum specs. First we selected and prioritized flagship devices, and afterwards added a few more device groups based on their specs and market share. The entire team has done a great job, especially engine and QA teams. For testing purposes we ran so-called “supertest” on the RU region, having invited over 4000 users with representative hardware. This helped us a lot, serving as both external QA and a device farm.
How do the specs of Android devices, because they can be quite different person-to-person, affect your development decisions? Is it as simple as having Kit-Kat or higher? Or is there more to it than that?
I wish it were at least half as simple as that.
Right now in World of Tanks Blitz we support about 47% of all Android devices out there, which is a respectable share, taking into account highly fragmented market with lots of cheap low-end devices. Speaking of requirements, we found the Nvidia Shield tablet does a good job running mobile tanks!
Generally, to get decent visuals one would need any of 2014 flagship handsets. Just to play the game one would need something with GPU equal or better than Adreno 320, Tegra 3, Mali-400 or PowerVR SGX544MP2, 1.2Ghz CPU, and 1Gb RAM, and Android 4.0+ OS.
The Android simulator in which you test the game can be quite tricky for developers? How did you find it compared to Apple’s testing environment?
Technically there is no major difference since we don’t use simulators. We test on real devices only. So the trickiest part is the sheer number of Android devices available compared to iOS. Other than fragmentation and diversity, there’s no real difference.
Because of Apple’s more simplistic, one button interface, how has having more physical buttons impacted development, if at all?
No major impact. Android version of World of Tanks Blitz supports back button and fullscreen mode. In the game all interface screens including garage and battle are designed for touch.
Will we see any differences in the iOS vs. the Android version of World of Tanks Blitz?
From the gameplay standpoint both iOS and Android versions are 100% identical. We need to ensure equal opportunities in the game for all players regardless of the device they are using. In terms of graphics there are certain differences, particular features are not yet available (realistic grass and water) on Android devices due to performance reasons. However, with the current progress pace we will ensure that high-end Android hardware will be able to support these features in the upcoming updates.
Was cross-platform play always going to be a possibility? Did you ever intend to keep both sides separate?
We’ve designed the game with this feature in mind. Even though we went to iOS first, both platforms are equally important for us. With the release of the World of Tanks Blitz Android version, it allows for seamless cross-platform experience due to server-side mechanics and a Wargaming.net account. Cross-platform play strengthens our ecosystem; the more players, the better matchmaking. Last but not the least, it’s convenient for the end-user, you can continue on your Android phone right where you left off on your iPad.