Gearbox Publishing, People Can Fly and Dragons Lake
With its sarcastic humor, numerous ways to kill an enemy and, of course, legendary Duke Nukem skin, Bulletstorm can be considered one of the funniest FPS games of the decade. Developed by People Can Fly and Epic Games and published in 2011 by Electronic Arts, Bulletstorm hasn't lost its charm to this day. A remastered version was published by Gearbox Publishing in 2017 for Windows, PlayStation 4, and Xbox One, and then the time has come for Nintendo Switch.
To make the Switch version as great as possible Gearbox Publishing came to us – and wasn’t disappointed. The port was so successful that Dragons Lake's collaboration with People Can Fly lasted another three years – after Bulletstorm porting we helped bring to life such a stunning title as Outriders.
Though Bulletstorm looks great and has impressive graphics, it was released a long time ago. In fact, it was developed on Unreal Engine 3, and support for the Nintendo Switch came only with the next generation – Unreal 4. How do you port a game from the platform that is not supported by Switch? We needed to come up with the optimal solution and deliver the utmost performance.
Another challenge was sound optimization. Switch has its own hardware decoder, so we needed to convert every sound effect into the right format. Textures also needed optimization and conversion into another format supported by Nintendo. Given Switch memory limits, we needed to find a solution that would allow us to control graphics quality and at the same time minimize memory usage.
Apart from Switch limits which are always a challenge, we needed to add online services and package the game taking care of every aspect to make Bulletstorm enjoyable to the maximum on the new platform.
To make Bulletstorm: Duke of Switch Edition look no less impressive than its console version, we re-engineered the render system using a native Switch library to fully optimize the game for the platform. For perfect graphics, we used a modern texture compression algorithm that allowed us to control the quality of the image and greatly cut down memory usage. Besides, we adapted sound and input specifically for Switch, optimizing it for better gameplay.
And, finally, we fully packaged the game for the release: added it to the Nintendo eShop, installed builds, and added online services.
Re-engineering the render system with a native Switch library
The biggest challenge was that Unreal Engine 3, the engine used to develop Bulletstorm, doesn't support Nintendo Switch.