Sponsored By

Sponsored: How we built the cross-platform WWII simulator War Thunder

Cross-platform performance across desktop, mobile, and console platforms was a top priority for Gaijin Entertainment. Here's how the independent studio launched the successful War Thunder.

December 2, 2015

11 Min Read

Author: by Gaijin Entertainment, Intel

This article brought to you by Intel

Founded in 2002, with many profitable and popular games under its belt (its Il-2 Sturmovik: Birds of Prey is rated among the top 10 flight simulation games of all time by GameRankings.com), Gaijin Entertainment is no newcomer to the massively multiplayer online (MMO) game arena. Nevertheless, Gaijin was able to reach new performance heights, markets, and players by tapping into the power of Intel.

Part of Gaijin’s success of bringing War Thunder to its global market was making the game accessible to the majority of devices in play. No other game allows players on the same level and on the same servers regardless of whether they are playing it on a computer running Microsoft Windows, Apple Mac OS, or Linux; on a Sony PlayStation 4 (PS4) game console; or on an Android machine with an NVIDIA Tegra X1chip. Gaijin could not have fully realized the success of creating a cross-platform game without Intel’s dedicated support and dynamic tools at the ready.

In the Beginning

In its infancy, Gaijin began developing games for set-top boxes for cable TV, later moving to the PC for the Russian markets. Eventually, as new technologies became available, Gaijin moved to the PS3 and Xbox 360—one of the first Russian operations to successfully make this transition.

With a string of successful flight simulation games, such as Wings of Prey and Birds of Steel, Gaijin turned its focus to creating not just another really awesome flight simulator but to a cross-platform war simulation game, with ground forces in addition to aviation. As its first MMO game, Gaijin developed War Thunder as a cross-platform experience, allowing the greatest access to the game’s players regardless of the device on which they played. Have friends in another city, state, or country playing War Thunder on their Mac computer while you’re on a PS4? No problem! You’re both joining battles on the same server.

https://software.intel.com/sites/default/files/managed/2e/92/gaijin-brings-the-storm-with-war-thunder-fig1.jpg

Image 1: Aerial Battle

Instant usability was a huge factor in designing War Thunder. Gaijin designed the game to be challenging for flight simulation pros but also wanted to build intuitive controls to give players at every level immediate access to the game. Where some other games and their interfaces are niche, practically requiring players to have a U.S. Federal Aviation Administration certification to figure out the controls, Gaijin built the War Thunder interface to work with grand flight simulation controllers as well as typical keyboards and mouse devices. War Thunder seems to have been successful in this endeavor: it’s currently the most popular flight simulation game on the market.

Development Strategies

Gaijin’s immediate vision for War Thunder was to develop an MMO, cross-platform, flight simulation game in which all players would be on the same server at once. This goal presented a number of challenges for developers. For the past 10 years, Gaijin has been developing its own proprietary engine, Dagor, which it uses for all its development projects. Dagor, which is itself multiplatform, supports Microsoft DirectX 11 APIs at present and will soon handle DirectX 12 APIs.

When Sony launched its PS4 in November 2013, it had to gain momentum to reach a large enough install base. For War Thunder to be truly successful and have enough activity to make the game exciting and offer a robust, multiplayer experience, a significant number of players would have to be online at any given time. This way, players wouldn’t have to wait too long for a match to begin. Because War Thunder is cross-platform, more players on a multitude of machines have instant access to the game.

Development of a cross-platform game was much more difficult than previous, single-platform designs. Developing Dagor as a multiplatform engine helped Gaijin’s design efforts greatly. The company had been developing console games for years, so it didn’t have to start from scratch for War Thunder. A lot of research and testing hours were logged in support of the game’s release.

With the huge demands of game development, you want the leading CPU and integrated GPU manufacturers on your side, working closely with your developers. At every developmental milestone, Gaijin got qualified technical support and robust tools from Intel to move its development ever further, improving the performance of its games and paving the way for the creation of new features and content.

https://software.intel.com/sites/default/files/managed/e1/1a/gaijin-brings-the-storm-with-war-thunder-fig2.jpg

Image 2: Aerial Battle

Gaijin used the Intel VTune Amplifier and Intel Graphics Performance Analyzers to improve the performance of War Thunder during development and testing. The Intel VTune Amplifier assists in code profiling such as stack sampling, thread profiling, and hardware event sampling. The profiler results show details such as time spent in each subroutine down to the instruction level. This information saved developers countless hours of digging through code to find bottlenecks.

Testing

War Thunder is an optimized game, rendering amazing graphics with little or no lag on the newest machines, but it also runs strong on older hardware. Part of Gaijin’s quality assurance process is putting its game through its paces on multiple machines, running anything from Intel Core i5 and Intel Core i7 processors with various boards. Even on “ancient” (that is, 5 years old or older) machines, the game was designed with a special Alt GPU support setting that forces the game to run on DirectX 9, rendering at least 30 frames per second (FPS) for users who have older video cards, are running Windows XP, and so on, yet still providing a good experience. After some market research, Gaijin found that a surprising number of users are still running Windows XP machines globally, particularly in China. For machines with Intel Core i7 processors and more modern GPUs (or next generation consoles such as PlayStation 4), the game really shows its true potential. Gaijin developers are always looking to integrate the latest technologies available into the game.

About Gaijin

Gaijin Entertainment is an independent game-design company headquartered in Moscow and with a small but mighty team of developers. Most of their formative years were spent designing games for local and international publishers, where each development helped them launch their next project. Around 2008, many Russian studios went bankrupt in the gaming industry because of the market, and it became apparent that the best direction for Gaijin would be as a self-funded developer/publisher in the future. This realization led to Gaijin’s decision to make its next game MMO (Massively multiplayer online). This strategy has worked quite well for Gaijin, which has operated War Thunder on its own since 2012 and generates a lot of revenue.

Being an independent shop means that Gaijin can call its own shots and doesn’t have to develop for genres in which it’s not interested. This brings the creative and financial freedom to allow the developers to follow their own path, and flight simulation has long been their mainstay.

Challenges for the Indie Studio

When you’re a small outfit working with a publisher, the publisher provides financial backing, production support, marketing, and so on, but also puts its own spin on your creative direction. Being independent means you’re completely on your own. It was difficult for Gaijin on its first time to market, but the entire process and every bump along the way delivered valuable experience. Now, Gaijin has created its own marketing and public relations departments, even opening a separate office in Germany specifically geared toward international marketing.

Gaijin has some games on Valve’s Steam, as well, for greater user reach and marketing. This choice definitely has its benefits, but any platform like Steam or Electronic Art’s Origin will take its share of the profits, too. For smaller game companies designing online games, it’s often better to partner with Valve, PlayStation Network, and the like, to raise the visibility of their games. After all, Steam is the largest PC gaming platform in the world and helped Gaijin penetrate the U.S. market, which is now its largest revenue market.  Gaijin also reaches audiences around the world through advertisements on Google and other media channels. China’s market for gaming developers is restrictive, so you have to partner with a local publisher there.

Virtual Reality

When thinking about adding virtual reality (VR) to a game in development, Gaijin advises that developers look to their genre. Is the game’s genre suitable for VR? VR is a great addition for simulation games because there’s no disconnect between real-life actions and what’s happening in the game. Playing War Thunder, the player is sitting in the cockpit of his or her plane but also in a chair in front of the computer or game console. Players with a joystick control take the immersion even further. Their brain believes the story more fully and relates to their active participation in it. For first-person shooter games, the player’s character is running around buildings, climbing stairs, and jumping, but he or she is still bound to a chair. The sights and the sounds are there, but there’s a disconnect between the player’s physical environment and his or her actions in the game.

https://software.intel.com/sites/default/files/managed/5e/d2/gaijin-brings-the-storm-with-war-thunder-fig3.jpg

Image 3: Cockpit View

As a game developer, latency is always a concern, especially when driving two displays (left and right) in VR. There should be minimum delay between the actions of players, such as turning their head, and the response on the screen. It’s also important that this latency stay the same regardless of what’s happening in the game at, ideally, 20 milliseconds or less. The FPS in the game should also consistently be the same as recommended for VR—a minimum of 60 FPS and ideally 75 FPS or 110 FPS—while vertical sync is enabled and buffering disabled on the GPU. All this means that the CPU and GPU should work in harmony as much as possible, especially for stereo rendering. Therefore, developers need to parallelize the game engine using all available techniques starting from jobification most of the game code and ending with processing multiple frames at once. Also it is important avoid duplicating the tasks that can be done once and probably re-projected according to viewpoint while rendering frames for each eye. Initially, after a rough implementation of VR, Gaijin had a lot of issues on its hands. A main challenge was getting stable FPS for air battles in cockpit mode. Developers used the “restored stereo” technique for the outer environment while the cockpit was shown in real stereo although with a symmetric field of view.

Another issue was measuring and lowering the latency. Thankfully, most VR devices provide special tools to keep track of latency and offer techniques such as motion prediction and temporal re-projection. In working in VR, there were many issues in the client code, like excess calculations for camera positions. Without VR, the cockpit of the plane may have looked nice, but in stereo mode it caused distortion and higher latency. At times, developers had to exclude especially demanding logic from the main thread, breaking some calculations into jobs for better mapping on the different cores. The goal was to avoid situations where the CPU was waiting for a job to finish. It is much better to remake the cycle and use only some results while leaving the rest for the next frame, or even use the data from the previous one.

https://software.intel.com/sites/default/files/managed/f8/7a/gaijin-brings-the-storm-with-war-thunder-fig4.jpg

Image 4: Realistic Battle – Ground Forces

In designing the UI for VR, Gaijin had to adapt to the high frame post rate needed in VR. This is in the game now but not final by any means. Currently, the VR machines on the market aren’t financially available for everyone. Prototypes are out there, but most are in the early stages. In preparation, Gaijin’s developers have adapted the UI for VR to some degree, but it’s far from finalized because advances in VR hardware continue.

The Future

Gaijin plans great things for War Thunder. In addition to the aviation and ground forces, a naval part is in the stars. Gaijin plans to create a mobile version, as well, as soon as more suitable devices come to market. The company is looking specifically at battery longevity in the next generation of Android and iOS mobile devices. Beta testing has been promising, but the performance isn’t quite there to take War Thunder on the road just yet.

In addition, Gaijin will release a huge update with physically based rendering, which will improve the look of the game drastically. The company is currently working with NVIDIA to implement NVIDIA Gameworks technology to add destructible environments. With this technology, players will be able to destroy not only enemy planes and tanks but buildings and other structures, as well, making all their pyrotechnic dreams come true!

Gaijin keeps its major release cycle to a respectable two- to three‑month window, which experience has shown is optimal for sustaining players’ interest in the game, bringing out updates and new features to keep the field challenging. With each new release, new players catch wind of the excitement and come aboard, increasing revenue.

Conclusion

Now that computers with Intel Core i5 and Intel Core i7 processors are more affordable and readily available to the majority of the War Thunder player base, FPS speeds have increased and are reliable across multiple platforms, consistently blowing the socks off players, from the novice to the notorious. Intel’s robust developer tools and expert technical support help keep Gaijin on top of the flight simulation world.

Read more about:

Sponsor Resource Center
Daily news, dev blogs, and stories from Game Developer straight to your inbox

You May Also Like