25 September 2021

Consoles aren't good enough for Ray Tracing...

[From Henrik, via Wikipedia]


I remember seeing articles and thought pieces before the release of the current gen console hardware regarding their ability to perform ray tracing (RT, for short) in games. Overall, I think they were pretty pessimistic on the whole and, especially towards release, the Series S was never really considered as a serious RT machine. 

However, since release we've had several games that have proven that there was little to fear and that, if integrated at an early stage in a game's design or within the engine design, ray tracing is perfectly possible. 

So, it's surprising to see this article on Tom's Hardware stating the opposite.

Based on a sample size of one, unreleased, game, Jarred is unequivocally stating that PC is where RT should stay and be the focus because consoles just don't have the performance:
"Eschewing ray tracing on console versions of Far Cry 6 is a telling stance for Ubisoft to take. Forget all that nonsense about RT on consoles because the PlayStation 5 and Xbox Series X simply aren't fast enough to do RT justice, which we've known for about a year now, ever since the RX 6000 series launched. Add a few minor ray tracing effects and you can get okay performance on the RX 6000 GPUs and the latest consoles, but those minor ray tracing effects are just that: minor."
The thing is, Far Cry 6 has been in development for years, using an engine that is not optimised for RT*, a production workflow that is not optimised for RT and against unknown specific hardware targets for the new consoles. 
*The engine is an update to the Dunia 2 engine (from what I can infer here). It is not designed from the ground upward for RT output.
It's a game that was supposed to release earlier this year, within the launch window of the new consoles and was primarily designed for playing on the last generation of console hardware as it was and always has been a cross-gen title. Which means that we should be analysing it from that point of view. We should be comparing it to other "cross-gen" games like Call of Duty, Dirt 5, Godfall, RE: Village, and Shadow of the Tomb Raider... which are all the games Jarred listed as being poor showings for RT features.

Developing for three platforms is pretty difficult, developing for six is monumentally harder. In my opinion, it's a smart move to not force features into the development of your game and engine late into the process. i.e. the fact that they had RT in the PC version is probably because they always had it there but they'd have to shoehorn the feature in on the consoles which may break compatibility, throw out their frametime budget for other effects, cause issues or double the work because of a focus on the last gen build and play havoc with pre-approved QA testing budgets, etc.

The examples of games where RT features are slight are mostly really not great examples and, in fact, back up the developer's decision not to include RT in this game because they were probably a lot of effort for very little gain. 

In the lens of this being a cross-gen title, removing the RT feature set on console means that the developers were probably cognisant of the poor reception of those titles that I (and Jarred) listed above as being lacklustre.

I believe that the fact that there's no RT, FSR and other items is not an indictment on the consoles capabilities or of those features but a reality of game development and budget constraints. 


The art for this game is really good... specifically the mobile art is really evocative. Shame about the desktop stuff in the fan pack: it's really generic screenshot type files.


The easy counterpoint to Jarred's argument is that Metro Exodus: Enhanced Edition runs perfectly well on XSX and PS5... at or around 60 fps at resolutions above 1080p, in fact. We can see that RT was pretty lacklustre in the original Metro Exodus release and that gives us the information to tell us that shoehorning-in the RT feature set doesn't enable full utilisation of the graphical ability. It's almost like the engine is doing double duty - once for RT and once for raster and, as the old adage goes, "being a jack of all trades makes you a master of none..." 

Taking this into account, it's clear to me that in Far Cry 6's case, this is purely a development decision and not a technical limitation of the new console hardware. Thus, for one, I think it's premature to slate RT as being beyond the current gen console hardware and, secondly, it's jumping the gun to lay all that on one game/game engine release. Lastly, AMD hardware is only now coming into its own regarding ray tracing. It will take some time for developers to get to grips with both Nvidia and AMD's hardware implementations for the DXR feature set. They've had the ability to play around with Nvidia's hardware implementation for the RTX feature set for more than two years now but RTX/DXR are not 100% overlays of each other, meaning that we will likely see better optimised performance for AMD's hardware in future titles - not least because the consoles sport this implementation.

I've said it before and I'll say it again: ray tracing is the future of game design; it's the future of engine development; it's the future of hardware design. To say otherwise, based on a last-gen engine, on a game primarily targetted for the last generation of console hardware is borderline delusional and, in my opinion, sets up the person making those claims to look short-sighted a couple of years down the line.

No comments: