The Making of MotorStorm Apocalypse
Digital Foundry talks to Evolution Studios about its most ambitious racer yet.
Gameplay boasts an identical performance level to the 2D version and while there are a number of visual tricks employed by Evolution to maintain a strict 30 frames per second update, just about the only compromise that we found consistently noticeable is a touch more environmental LOD pop-in. The 3D support is so accomplished, so consistent and so immersive that we wondered just how the Evolution team achieved it.
"Stereoscopic 3D renderers can be broadly classified as either 'reprojection' or 'draw everything twice'. In Apocalypse we draw everything twice - nearly everything anyway," says Oli Wright.
"We try to share as much processing as we can between eyes. For CPU, that's largely the scene processing and object culling phases. For the RSX it's essentially our shadowmap rendering. One area that we try to be very careful with is dynamically adjusting the inter-axial to prevent window violations. Also you won't find any frame tearing when Apocalypse is running in 3D. Those two things are incredibly important for having a 3D experience that is comfortable and easy to view."
As the Digital Foundry performance analysis affirms, the 3D mode in MotorStorm Apocalypse turns an experience with minimal screen-tear into one with none at all. A lot of the techniques Evolution Studios experimented with in MotorStorm 3D Rift are utilised in Apocalypse, with a bunch more added to ensure the best overall presentation.
First of all, there's the question of basic fill-rate - the amount of pixels being generated at any given point. Evolution budgeted for the additional overhead of 3D right from the very beginning. While the amount of 3DTV owners out there may be minimal, there's no shortage of PS3 owners running with a native 1080p display. In striving to support 3D, Evolution was able to provide a 1080p mode with a similar rendering spec to Gran Turismo 5: 1280x1080 (anti-aliased), upscaled horizontally to full HD.
"If we stayed at 1280x720 for 2D, it would inevitably mean a compromised 3D experience. We saw it as an opportunity to improve our 2D experience though," Oli Wright says, describing the fill-rate challenge.
"This is a gross oversimplification, but 1280x1080 is exactly the same number of pixels as 960x720x2 - so that's what we targeted, although in the end it became 1024x720x2 due to some boring alignment reasons. Of course we also wanted to add dynamic lighting, improve our shadows, fix our particle halos, add MLAA and add SSAO. It goes without saying that we're not sane."
Even with this performance 'cushion' established, the 3D mode still requires some real-time streamlining and optimisation in order to maintain its rock-solid frame-rate, and thus its first-class response level from the controls. As with its Pacific Rift 3D PSN work, a dynamic framebuffer is employed. The screen literally resizes on the fly to ensure solid performance - a technique we first observed on PS3 in WipEout HD's 1080p mode, but clearly far more refined here.
"With a game like Apocalypse, it's incredibly difficult to guarantee the RSX rendering time for any given frame up-front. The frames are just so variable, primarily because of the vehicles," says Oli Wright, going on to explain the specifics of the challenge.
"We like to have lots of vehicles on screen, and often they're close to the camera, and quite often engulfed in a fireball. So we have two choices. We either make everything so cheap that we can draw our most expensive frame still within budget, or we scale back the rendering for frames that we think are going to be over budget.
"We hugely prefer this latter approach. It means the RSX is close to being maxed out far more often, without losing frames. If we didn't do the dynamic detail scaling, then it would mean that the RSX would be idle for a lot of the time to give us the headroom for our variable frame cost, and frames that were more expensive than we considered for would tear and frame out."
3D mode makes use of this technique extensively, but as it kicks in when the screen is at its busiest, and when the player is likely to be most engrossed in the gameplay, the noticeable impact is minimal - it's only a factor if you're looking for it. The advantages in terms of smooth performance and no screen-tear are obvious. The same code is also rolled out for the 2D mode, for the same reasons, though it's relatively rare that it is required.
"We do use dynamic resolution changing in 2D - but we've tried to budget things so it only kicks in in exceptional circumstances," admits Wright, going on to explain how load-spiking is managed within the engine.
"When you play the game, it's really hard to notice it happening unless you have a little flashing light that pops up to say 'dynamic resolution active!' Our rule for anticipating the RSX rendering time is simply to assume that the current frame will cost the same as the previous one, unless there's a camera cut. It's a bit basic, but it works very well."
With the performance aspects of the 3D (and indeed 1080p) support established, the team built on making the overall effect as immersive and impressive as possible. With the team embracing the concept of full stereoscopy (literally rendering individual viewpoints per eye), the challenge then was in getting the most out of the effect.
"As we implemented the 3D, we began to maximise the elements that we discovered added most impact to the stereoscopic experience. For instance, small particles such as fire embers and airborne debris were suddenly the heroes of the scene, especially when seen in some density, allowing them to be perceived with a new volume and depth beyond the 2D version," reveals art director Simon O'Brien.
"We also needed to consider what methods we would need to employ to avoid the pitfalls of 3D such as negative parallax and frame violations, whilst taking the 3D effect to its limit. Mostly this came down to tuning of camera parameters and how best to frame the action effectively to sidestep these issues. As a result of taking time over every vehicle camera, scene camera and even the front-end GUI, we feel that it really is one of the strongest examples of stereoscopic presentation available today."
With MotorStorm Apocalypse complete, the focus at Evolution Studios now turns towards future projects and the process of re-evaluating the core tech and production workflow commences in earnest.
"I don't think we'd ever be complacent enough to say that any particular area can't be improved upon. There are always things that can be done better," observes Oli Wright.
"A major area for us that we know we need to improve on is that of world production - our existing process is simply too labour-intensive. In terms of exploiting the hardware better - yes - there are always things you have in your mind that could be done better. But there's always a difficult balance to strike between making something that's production ready vs. blue sky experimentation."
Do you want to know more? Read the full, unabridged Evolution Studios interview at GamesIndustry.biz.