Pages

Thursday, June 2, 2016

Xbox One Release and PC Development Update


To the APB community:

The team here at Reloaded Games are happy to officially announce that APB Reloaded will be generally available as an Xbox One download starting June 3, 2016.

The game will remain in a "Soft Launch" mode for the first 30 days (which mostly means it will have limited public announcements other than the formal launch announcement from the Publisher). During this 30 day period we encourage all current and former PC players to try the game and to give us feedback that we can incorporate into the upcoming updates (note: in order to access the private APB Xbox One forums on our servers you first have to log in to APB from an Xbox One).

As a "thank you" for helping us test the game during the first month, we are giving out freebies to all players who log in AND we will be giving out "Founders" tags and "Founders" skins for those that put in more than 10 hours in game prior to the first patch (or during the first 30 days, whichever comes first). After the first post-launch patch for Xbox One, we then expect to complete launch of the PS4 version as well (final PS4 dates are still TBD).

What we are doing now is very similar to how a "Monetized Open Beta" or "Soft Launch" normally works in the PC F2P world. Consoles do not quite have those same procedures given the large amount of overhead involved in launching a console game, but we are following a process quite similar to how other F2P PC to Console conversions were launched recently (for example how SMITE was launched last year on Xbox One, and its current limited launch on PS4).

Also - we would especially like to thank those of you who took part in our very brief launch Tuesday morning to prepare the game for this wider release. Those who were part of that initial test audience will get additional goodies, also at the time of the first game update.
  

Changes and the PC Version

Since the vast majority who read this blog are PC gamers of APB Reloaded, we wanted to take some special care to give all PC gamers an update for what this all means on the PC side from the development and technical ends (and there will probably be a lot of other discussions on our forums as well). Especially since we have been unable to share information for such a long time. And the wait is finally over.

The first thing for all PC players to note is of course that you will have a massive advantage over the brand new Xbox One players just from the fact that you know this game. So if you were Silver and wanted to reach that coveted "Gold" level and couldn't quite get there on PC, there is a decent chance you will be able to get there on the console versions.

As many of you guys are aware, we have been in development limbo (or development hell) for a very long time. The console versions were originally supposed to ship a long time ago and we were contractually obligated to release the new engine on the console version before shipping these changes on PC. Since the new engine performs really well on PC, it has been a bit frustrating to be stuck in this mode for this long. With the Console release finally imminent, we are excited to share what has been going on under the surface, and how this will positively impact the PC version.

APB Reloaded is a massively complex game. Supporting up to 100 simultaneous highly customized players in single fire-fight in realtime is a total coding and server P-I-T-A and requires systems that operate very differently than those that support 8, 16 or 32 players (since most other games like GTA basically run on a peer-to-peer system, whereas APB use central servers, for both good and bad; good being the interaction between players and the environment, and bad being things like driving lag - since driving occurs 100% on the server, not on the client). And of course the original team for APB had 250+ people at its peak, and as those who have followed us for a few years now know, our current APB team is about 1/10th of that original size. 

While we worked with our publisher to augment the team with outside partners, companies and contractors, in the end, for the past several months the internal team ended up shouldering the all the development work to get the game ready for Console. Our team will now finally be able to get back to implementing these new things on PC as well.

The good news is that a very large percentage of the work is platform-agnostic, so completing the back-port into the PC Engine Upgrade is straight forward (see the screenshots here and at the bottom of this post).


Optimizations:

These are examples of technologies that were created for the Console version, and do not yet exist in the live PC version of the game;

Tiled deferred rendering
This is a neat solution created by our team that frees up memory and GPU resources. To compute each frame the screen is now divided into multiple "tiles" in a grid which is processed in parallel on the GPU using something called "DirectX 11 compute shaders." This will mean a nice performance boost on the PC side.

Multi-threaded rendering
Currently, the PC LIVE version of the game only utilizes a single render thread and does not take full advantage of multi-core architectures of modern processors. Multi-threaded rendering will speed up the game for anyone with quad core (or higher) CPU.

Utilization of pre-cooked packages
Unreal Packages (.upk), are where all of our assets are kept. In the original PC version all assets are split into very small groups, which means a lot of different files. In the new system packages that are frequently used together are combined on disk into large groups to reduce the number of separate files needed to be loaded from the hard drive. This, along with reducing the amount of packages involved means players will experience shorter load times and less VM usage on PC.

Improved animation compression
Animation data is now much more highly optimized, freeing up CPU and memory resources.

Various optimizations to night-time lighting.
The switch to a global illumination system also provided us with the opportunity to do optimizations to night time lighting, which now uses the latest distance-field based lighting technology. In this first launch of the Xbox One you will see that lighting is pegged to "midday"(which is temporary) but below you can see what all times of day will look like on the engine when this is "unlocked."

Shader optimizations and improvements.
We have been through some problematic shaders (such as vehicles, characters and roads) and removed all unnecessary instruction data. In some cases we also took the opportunity to improve the shaders visually (which is pretty apparent in the customization studio for Xbox). Vehicles also now have much more realistic environment reflections.

(New shaders on characters in the Xbox One Customization Studio):


Lightmap optimizations
In the larger environments, we fixed a large amount of issues involving lightmap UVs. Lightmaps are essentially pre-computed lighting and shadow information that are applied as textures to various assets in the game. UVs are co-ordinates controlling how these lightmap textures are rendered in-game.

For these textures, we replaced UV sets across large areas of the game with sets that were optimized by hand. These allows us to decrease the size of these lightmap textures without sacrificing pixel density, thus lowering the memory hit caused by these textures.

Mesh and texture streaming optimizations
In the LIVE version of the game, buildings are loaded from the hard drive as you move around the city, causing performance problems and placing design restrictions on the speed at which players are allowed to move around the district. We have now moved to a system where buildings are always available in memory, improving performance and reducing hard drive usage at runtime, and using the updated streaming in the new engine.


FEATURES AND WORKFLOW FIXES:

Lightmass
The entire game was re-lit using Unreal’s Lightmass global illumination system, resulting in more realistic looking lighting.

Foliage System
We have replaced all foliage in the game using Unreal’s own instanced foliage system, as it is far better optimized than what was present in the old engine.

Limited Dynamic Lighting
We can now use dynamic lighting under specific circumstances in the game. Currently, this is mainly featured in the customization suites, however we intend to look at ways to increase the scope of this in the future.

Pipeline replacement
We can now replace old, un-optimized pipelines when creating new content. This means we can now create new content that is designed specifically to get the best performance out of the engine such as modular environment creation. In practical terms, this means we can finally work much more efficiently on brand new content.

Draw Distance
With the new engine we have also been able to increase the draw distance on the PC version.

Improved gamepad support
Naturally the console versions fully support their respect gamepads, including analog driving controls and context sensitive stick sensitivity. We are bringing this code to the PC as well, for players who prefer to use a gamepad on PC.

What’s next - upcoming update for console and PC

Performance - Garbage collection optimizations
We are optimizing the game’s Garbage Collection system, which searches for any memory that can be freed up by removing unused assets. This is one of the main causes of stutter in the current version of the game, and will result in an overall smoother framerate.

Performance - Massive LOD
This is a new feature we are implementing that essentially merges distance assets together to speed up the rendering of objects far off in the distance. This also comes with the added visual benefit of less noticeable Level of Detail transitions, and comes with a nice performance boost.

UI fixes and improvements
With the console ports we were able to create a brand new Scaleform UI for the customization studios and the main menu. As no one wants a direct-console UI on PC, we are currently working to implement a PC friendly version of the new UI that takes advantage of the mouse and keyboard on PCs.

Time of Day
Due to the optimization work carried out Time of Day is currently locked. We are looking to re-enable time of day in the Xbox One version of the game in the next patch, but below you can see the actual "Time of Day" shots from the development version of the PC engine.

Iris Response/Bloom tweaks.
We are adjusting these values in order to fix an issue with over-brightness that some players are having on Xbox One, which should make the game feel less blown out.

Latest Engine Upgrade images (unreleased PC Version):





Latest Engine Upgrade images (w/ Xbox One UI):




Conclusion

Updating APB Reloaded and bringing the game on to a set of whole new platforms has been no small task for a development team of our size, especially considering the massive scale and scope of the original game.

We’re proud of what we’ve achieved so far, and greatly appreciate the patience of our players. It's been a long road to get to this point, and next up we are looking forward to launching the PS4 and the new PC versions, so we can start focusing on bringing new items and fun features to APB across all our platforms!

Thanks to everyone who took part in the brief “soft launch” of the Xbox One port. The feedback we’ve received so far has been extremely helpful and we look forward to continuing the work to bring you guys a great and unique game.

- Reloaded Team