In our graphics cards tests, there's one game that's our go-to title when carrying out gameplay performance analysis: Crysis 3. Crytek's last game is a technological showcase: one of the very few games built with next-gen development in mind, and the best stress test for the latest AMD, Nvidia and Intel GPU technologies. With the next-gen console zero-hour approaching, we reached out to Crytek to talk tech - to discuss how their multi-platform engine was ported onto next-gen, what the company view was of the new Sony and Microsoft architecture, and of course to sneak in a few questions about Ryse.
There's some interesting and dare we say it controversial stuff here. Image quality purists won't be too happy to see another developer signalling the death of multi-sampling anti-aliasing in favour of temporal and post-process alternatives, while a great many core gamers won't be ecstatic with the reasoning on the firm's line on 30fps as the preferred standard for console gameplay. And yes, we have an Xbox One developer telling us that multi-platform releases won't be that much different between the two next-gen consoles - a line of argument that doesn't go down very well with some at the best of times.
Regardless though, across the range of questions, there's some fascinating new information here - how the move from PowerPC architecture to x86 radically changes the way that developers code and optimise their games, a frank assessment of the raw CPU power of the new consoles, Xbox One's ESRAM and audio hardware, and Crytek's aim to bring CG-quality visuals to real-time rendering.
But before we dive in, a bit of background is required. Interviews tend to take three different forms - face-to-face, on the phone or, as is the case here, an email Q&A. The good news is that Cevat Yerli himself - founder, CEO and president of Crytek - took point on tackling our questions. The not-so-good news is that it took quite some time for the answers to return, hence our referring to CryEngine 3 and its successor when it was subsequently revealed at Gamescom that they are one and the same (and that the numbering has gone), before Microsoft announced that Ryse was running at sub-native 1080p resolution, and a long time before Yerli's DICE 2013 presentation where he revealed a raft of new visual upgrades for the firm's Xbox One launch title. It also means that our key follow-up question - specifically on how Crytek has quantified the performance differential between the two next-gen consoles bearing in mind the relative GPU specs - still remains unanswered, despite a lot of chasing.
Ryse is important as our first look at how CryEngine operates on the next-gen console, but this interview is more focused on how Crytek has managed the transition of one of the most advanced multi-platform engines onto the new hardware, and what we can expect from the technology in the future. And as for a fully maxed-out Crysis trilogy on next-gen console? Unfortunately, much as we would love for it to happen, Crytek isn't talking...
"With DX11 and 64-bit support being a core part of the engine, the transition to the Xbox One and PlayStation 4 was quite straightforward and the new consoles turned out to meet our technical expectations."
Digital Foundry: Crytek is at the bleeding edge of rendering tech and your demands from hardware are very high, so how satisfied are you with the final designs of the Xbox One and PlayStation 4?
Cevat Yerli: Both consoles have a DX 11.1+ capable GPU with full compute shader support which allows us to come up with new creative rendering techniques that were not possible before. The GPUs are very efficient in performing math operations and the CPUs, in contrast to the previous PowerPC-based architectures, have standard PC features like out-of-order execution and branch prediction. All this reduces the need for micro-optimisation and allows us to focus more on the high-level algorithms which is usually the more rewarding part of development. We are also looking forward to seeing what the PlayStation 4 will offer in regards to online compute capacities, and the strategy rolled out for Xbox One cloud support is certainly going to be very interesting in terms of compute power for next-gen games. I also think Microsoft's decision to include Kinect as standard is a positive one, as it avoids fragmenting the market and allows developers to treat its functionality as a given.
Digital Foundry: You were very vocal in the past about the need for a lot of memory in the next-gen hardware. At the time, your request for 8GB seemed crazy, but it actually happened! Are you happy with the amount of memory available, even factoring in the rather large system reservations?
Cevat Yerli: The available memory is a massive improvement compared to the less than 512MB that we had before and makes our life a lot easier. However, despite our improved streaming system, we got it filled up quite easily and had to eventually work on optimising asset sizes.
Digital Foundry: You designed CryEngine 3 with scalability in mind - you said it was "next-gen ready". Now next-gen hardware is here, to what extent were you successful? Did CE3 transfer as easily as you anticipated onto the new consoles?
Cevat Yerli: With DX11 and 64-bit support being a core part of the engine, the transition to the Xbox One and PlayStation 4 was quite straightforward and the new consoles turned out to meet our technical expectations. To our knowledge, at this year's E3 Ryse was the only next-gen game on show that was running on a commercially licensable engine. We felt that justified our statement from a few years ago that CryEngine was next-gen ready.
Digital Foundry: Can you talk about the process of moving the engine across to the new consoles - what are the challenges and the opportunities offered by the Xbox One and the PlayStation 4 architectures?
Cevat Yerli: The transition to the new generation is going smoothly, and although the workflow and tools are in their early stages, they are better at this point than they were in the early lifecycle of the last generation. Due to the improved specs and familiar PC-style development environment, developers have received a welcome overall improvement. This has been really beneficial, and has freed us up to spend a lot more time on just getting the best out of the system.
Digital Foundry: On the face of it the bigger GPU and wider bandwidth of the PlayStation 4 makes it far more powerful than the Xbox One. Yet developers like John Carmack - and even PC benchmarks on equivalent hardware - suggest that the two platforms may be closer than the specs suggest. What's your assessment?
Cevat Yerli: Both next-gen platforms have excellent specs and provide wins against each other in a variety of areas. But, in essence, both of them are going to run next-generation games in more or less the same quality due to the diminishing returns of optimising for these little differences. That being said, platform-exclusive titles might be able to take advantage of these slight variations on both Xbox One and PlayStation 4.
"GPU compute is definitely the future. The CPU performance is better than last-gen but not by a huge margin, the GPU on the other hand is a really sizeable improvement."
Digital Foundry: What's your take on Sony's emphasis on PS4 GPU compute? In multi-platform projects is it likely to be explored?
Cevat Yerli: GPU compute is definitely the future. The CPU performance is better than last-gen but not by a huge margin, the GPU on the other hand is a really sizeable improvement. If the task is suited to it, moving to the GPU can be an incredible performance win. However, this is taking away performance from the traditional graphics pipeline so there is a limit to what you can move to the GPU. As for the broader multi-platform question, supporting GPU compute isn't really much more difficult than supporting multi-platform rendering, so it's certainly something we'll be using more and more on all platforms.
Digital Foundry: If we look at AMD Jaguar in purely PC terms, we're essentially looking at two low-power laptop/mobile CPUs stuck together. CryEngine 3 will give any PC CPU a thorough workout - what is your assessment of the processing power you have available in next-gen console? Would you have preferred fewer cores and higher clock-speeds?
Cevat Yerli: An infinitely fast single-core CPU running the game single-threaded would obviously make things much simpler. However, these days have long since gone and engines are required to scale well across multiple CPU cores for games to run fast at high quality; that is, they need to be able to execute multiple jobs concurrently without introducing significant wait time and synchronisation cost. CE3 has been doing well in that regard and further improved over time and for Ryse in particular. Because of that a lower CPU clock rate is acceptable as long as there are enough cores available to offload work through our job system.
Digital Foundry: Crysis 3 performs admirably on AMD's eight-core FX CPUs. Do you feel that the presence of AMD hardware in the next-gen consoles will help AMD in PC gaming, where its CPUs have struggled in most games compared to Intel?
Cevat Yerli: AMD's involvement in next-gen consoles will certainly bring some improved compatibility for PC gaming, as a lot of optimisations will go into console development that will benefit AMD-based PC gaming architectures. But I believe those compatibility improvements will still have a limited effect.
Digital Foundry: You've previously talked about how supporting Xbox 360 and PS3 was holding back everything that Crysis 3 could have been. Ryse is an XO exclusive, meaning no such restrictions - what are the key technological advancements this enables?
Cevat Yerli: Next-gen console gamers will now experience high-end PC quality gaming, with higher resolutions, more complex assets, and better rendering techniques that all result in richer, more immersive gaming experiences. One key aspect is that having DX11-class consoles and better hardware allows us to set a new baseline for really high-end content development, and we can discard older generation restrictions. We're very excited about this particular aspect of the new consoles.
Digital Foundry: Xbox One is DX11-based. How useful was your CryEngine 3 DX11 work on PC in giving you a head start on XO development?
Cevat Yerli: The core technologies of the next generation are DX11 and 64-bit. CryEngine has been fully supporting both since Crysis 2. Because of that, getting the first version of Ryse running on early Xbox One kits was relatively easy and took us less than a week of focused work. Again, the fact Ryse was probably the only next-gen game running on a commercially licensable engine at E3 2013 is proof of how easy it was to use CryEngine was for the next generation.
"MSAA is quickly getting bandwidth-bound and thus expensive. With a deferred shading based renderer the bandwidth consumption is getting prohibitively high."
Digital Foundry: There were hopes that next-gen console would target 60fps - something John Carmack mentioned in his QuakeCon keynote this year. Can you talk us through the thinking behind Ryse as a 30fps game?
Cevat Yerli: Developers always have to choose whether they go for 60 or 30fps, depending on the type of game and complexity of the project. With Ryse, we wanted to go for a very emotional experience with complex and dramatic lighting, high fidelity environments, and rich characters and character animations. So 30fps was our choice, and we believe that most developers will go for richer worlds at 30 frames per second rather than 60fps - which would call for compromises, as 60fps demands twice the amount of compute rendering speed. 30fps is a standard that is above, for example, what most cinemas use for showing films. Early demos with higher frame-rate experiences have shown that gamers and viewers have a mixed opinion about its perceived quality - for example, how 48fps cinema experiences were received. So it's both a production design choice as well as user research.
Digital Foundry: What is your experience with the ESRAM on Xbox One? How do you utilise it in Ryse? Is 32MB really enough for the high-bandwidth rendering elements you'd want to utilise? How important is allocating graphics between DDR3 and ESRAM for Xbox One development?
Cevat Yerli: We put our most accessed render targets like the G-Buffer targets into ESRAM. Writing to ESRAM yields a considerable speed-up. While 32MB may not be enough to use something like MSAA to the fullest, with a smart memory management strategy it is possible to deal with that.
Digital Foundry: Can we expect to see any new CE3 features in Ryse that we've not seen before in the Crysis games?
Cevat Yerli: We have many new features in Ryse. On the rendering side the main focus was on moving to more physically-based paradigms but we have a lot of improvements for animation and physics as well. For example, all the cloth and armour parts are moving dynamically but we can also pre-bake complex simulations now and replay them in real-time.
Digital Foundry: The Xbox One has dedicated audio processing hardware that is not present in PS4 or PC. How do you utilise it in Ryse?
Cevat Yerli: Essentially the hardware is performing calculations on audio data, handling the decode of audio that is encoded in XMA, Microsoft's proprietary, designed-for-game-audio, encode/decode compression algorithm. It takes weight off the main processing cores by using this optimised processor, which is approximately twice as powerful as the 360's, which means we can have higher voice counts, that is more sounds playing simultaneously. Also it supports the 7.1 surround sound architecture, which vastly improves the 3D localisation of sounds and the immersive audio environments we have created for Ryse.
Digital Foundry: Xbox One has its data move engines, dedicated audio hardware etc that should free up CPU resources. Are we seeing a situation almost like the reverse of 360/PS3 - this time with Sony having less CPU resource but more GPU power?
Cevat Yerli: Xbox One's move engine has proven to be quite useful to us by accelerating streaming of texture data, etc. How well that fares overall and compares to the prowess of PS4's compute engines remains to be seen and likely depends on the specific type of game you want to build.
Digital Foundry: Very few - if any - of the next-gen games we've seen target multi-sampling anti-aliasing. What's your solution for Ryse? Do you think that MSAA is now a thing of the past in console game development?
Cevat Yerli: MSAA is quickly getting bandwidth-bound and thus expensive. With a deferred shading based renderer the bandwidth consumption is getting prohibitively high. For Ryse we developed our custom SMAA 1TX, in essence it is a combo of morphological AA with smarter temporal anti-aliasing. It's a new robust and fairly efficient technique which we shared some details about at Siggraph this year. It's a solution which deals with any signal input changes in order to smooth out potential shimmering during movement, while masking out any potential ghosting, and together with shading aliasing solutions it provides a more filmic image quality overall.
Digital Foundry: Until recently, PC games development has been characterised as being a case of taking the console versions and then scaling them up to PC. Crysis 3 was different - PC was the target and you scaled down. We have other developers using the same approach for their next-gen titles - working on PC then porting to console. In your view, is this a short-term thing until the new consoles are established, or will it continue throughout the generation?
Cevat Yerli: Next-generation consoles provide an excellent platform for any high-end PC developer. Naturally, in a few years from now, console developers are going to get more out of the new generation of consoles and we should see a big jump with optimisations providing even better console game experiences. The choice some developers are currently making to port from PC to console, in our opinion, has only happened because the development environment on PC is very stable, and building a launch title is very challenging - due to the fact the console itself is not finished until late in the process. So it's a decision based not on performance, but comfort.
Digital Foundry: On a more general level, do you think this means that next-gen console will only help PC gaming? There was a time when people thought that PC gaming was dying, and that console would entirely replace it...
Cevat Yerli: We definitely think that the new console generation will create a level up in the PC gaming market for many other developers, and we've always been big advocates of PC gaming. Developers will be able to maximise their investment because of the PC-like architecture of the consoles. So we should be seeing a great boost in quality on all multi-platform games that appear in the future.
Digital Foundry: In his QuakeCon keynote, John Carmack talked about the potential of giving the GPU access to the complete address space of the consoles' memory and suggested that something needed to be done on PC. What's your view on this?
Cevat Yerli: In an ideal world, the GPU and CPU would be accessing and sharing the complete memory address space to really close the gap between PC and console gaming. Besides closing the gap, it would simplify many developments in graphics, in compute and also generally speeding up many operations which are data heavy. However, on PC we are restricted to DX or OpenGL standards for many of the aforementioned operations. As long as MS or the OpenGL ARB don't update these standards, developers will be limited to what they have. We see that OpenGL is gaining traction, but DX11 has received very little update and traction on PC. I think DX11's use has been boosted only by the appearance of next-gen consoles. So we all want, essentially, is a unified architecture for PC and console gaming, coupled with unified development tools, or, even better, access below abstraction layers in a unified way.
Digital Foundry: It seems that almost everyone is utilising a form of physically-based rendering on next-gen console. Often we hear about brand new engine enhancements only to find out that CryEngine 3 has featured similar tech for years. In your view, how does CE3 compare to the physical rendering technologies you've seen so far on next-gen console?
Cevat Yerli: Well, it's nice to hear someone finally acknowledge that, so thank you! Many of the core components used for physically-based rendering were available in CryEngine since Crysis 2. This includes image-based lighting with pre-convolved environment maps and a normalised BRDF. However, for Ryse we started working more on the consistency of all these features and how they interact with each other within the rendering pipeline. We also heavily reworked our art pipeline to enforce plausible material setups and evolved the lighting pipeline to make sure the integrity of materials is preserved up to the final frame output.
"The future will not be just about realism, but also about new kinds of artistic expressions. The next few years will be great times for the PC community and console gamers."
Digital Foundry: We saw Unreal Engine 4 demonstrate real-time global illumination before reverting to a specced-up Lightmass solution. What's your approach to GI in Ryse, and do you think we'll see a full real-time solution this generation?
Cevat Yerli: In Ryse we are using light probes (image-based lighting) as these work very well with physically based rendering, and, on top of that, our artists wanted to have full control over a cinematic look, so we developed a manually placed bounce lighting technique. We also have much improved solutions for ambient occlusion (our fifth generation) and local, real-time reflections. With the limited power of the new consoles, 100 per cent real-time GI remains a challenge, but we think it might be feasible. The more important question is whether art directors wish to lose their control. Top production designers working on high-end CG animation usually apply a very artistically controlled lighting system. If the desire is to light a scene to be photo-realistic, then this may be a choice. If you want a cinematic experience or lighting style, full GI might not be desirable.
Digital Foundry: The Crysis Trilogy on Xbox One and PS4 - will it happen? Bearing in mind the scalability of the engine and the fact that you managed to get all three Crysis titles running on 360/PS3, how difficult would it be?
Cevat Yerli: At this point we can't comment on any other next-gen projects apart from Ryse.
Digital Foundry: Finally, are you working on CryEngine 4? Or will continue to evolve CE3? The current focus from most developers is on physically based rendering - where do you think we'll go from there?
Cevat Yerli: Going forward, as we have announced at Gamescom, we've dropped the numbers from CryEngine and will keep providing the engine as a frequently updated service for developers. CryEngine will always evolve and improve. There are many research directions besides fully physical-based rendering and shading, and we still have quite some work before we reach a cinematic/photo-realistic world that's consistent in every area. Character animation, for example, has a long, long way to go before hitting realistic and believable quality on all fronts.
The future will not be just about realism though, but also about new kinds of artistic expressions. The next few years will be great times for the PC community and console gamers. In a talk I gave about the future of computer graphics in 2008, I said that the next-gen consoles would arrive in 2012/2013, and that we'd receive CG-quality rendering of games. These consoles will provide us a baseline to not just deliver that, but over the years to go beyond it. We will close the gap more and more between CG animation that people see and CG-quality games that they can play.