On the face of it, the notion of Nintendo Switch hosting a conversion of CD Projekt RED's The Witcher 3: Wild Hunt seems almost ridiculous. The original release pushed the current-gen consoles hard and the notion of the game transitioning across to a significantly less powerful mobile-orientated platform almost beggars belief. And yet, the rumours surrounding a Switch port are gathering pace: Chinese retailers have shown packaging and even a special edition console, and when Eurogamer approached CDPR about the game, the firm declined to comment when erroneous rumours could have been categorically ruled out. Nothing is confirmed, but the possibility remains open - and I couldn't help but wonder how such an ambitious port could be achieved.
Of course, the Switch itself has played host to a number of impressive technological showcases, and it has done so since launch with the arrival of Fast RMX - a hugely impressive work-out for the Tegra X1. But the notion of challenging current-gen fare receiving viable Switch ports really kicked off with the arrival of Doom 2016, translated across to the mobile chipset by the brilliant Panic Button, who've since impressed us still further with conversions of Wolfenstein: The New Colossus and Warframe. Other developers have pushed Switch hard too, with QLOC's impressive Hellblade port and Shiver's Mortal Kombat 11 bringing current-gen console experiences into the palm of your hand.
The Witcher 3 though? The scale of this project is a class apart: we'd be looking at the conversion of a massive game that challenges hardware on many levels. First of all, there's the concept of bringing a current-gen open world across from systems with significantly more CPU power and a lot more memory. Then there's the density of the visuals - The Witcher 3 delivers a very rich sandbox within which to play. And finally, there's the issue of memory bandwidth: the PC version of the game (likely the major donor towards a potential Switch port) really does like bandwidth, and Switch is somewhat limited there.
When I first played Doom 2016 on Switch, I wondered how Panic Button had managed to deliver this conversion - so I built a low-power PC with some commonalities with Switch hardware. Nvidia's GT 1030 graphics card features 384 CUDA cores vs Switch's 256, and with some insane underclocking, we could get an approximate match for its compute power. CPU-wise, I chose (perhaps ironically) low-power AMD Jaguar cores in place of Tegra X1's ARM cluster. By introducing harsh hardware constraints, we could see that a Doom 2016 port would be viable by halving the frame-rate and stripping back visual features to the minimum. Panic Button tailored the experience still further for Switch and introduced dynamic resolution (and based on recent tests, it seems that Nintendo helped out with dynamic GPU clocks too).
But could the same configuration get the Witcher 3 working? Well, I'd say that the evidence is far less clear-cut this time around. Initial experiments at 720p resolution on a low graphics preset yielded results from a terrible sub-20fps update that settled more into the low 20s. The experience doesn't work because it's so variable, and what's instantly apparent is that CPU power, GPU compute and memory bandwidth limitations all play their part in presenting a series of profound bottlenecks that can manifest at any given point. The Doom 2016 experience on this PC showed that a Switch port could be done, while repeating the exercise on The Witcher 3 only served to demonstrate the extraordinary challenges in porting this title to Tegra X1.
I tweaked the PC setup after these initial tests, stacking the deck more in my favour. Some of the limited CPU power I had was being sucked up by Windows, DX11 and the GPU driver - aspects that would present far less of an issue on Switch. Moving over to a more capable CPU, there was more stability in achieving 30fps - and now I could get a better focus on the GPU and memory bandwidth challenges. A 576p native resolution helped to address the GPU compute limitation, but the GDDR5 memory couldn't be underclocked enough to simulate Switch without kicking into what I think is a low-power mode of just 810MHz, resulting in a frame-rate slideshow. The next step up bandwidth-wise was an almost lavish 2500MHz (far beyond Switch's capabilities) and obviously performance improved massively as a result. I still don't think the memory bandwidth question has been answered, but enough data points were available to draw some conclusions about the viability of a Witcher 3 Switch port.
First of all, the main positive to draw from this is that when presented with ultra constrained hardware, The Witcher 3 could still run - something that doesn't apply to all PC titles I've tried to boot on this system. Secondly, while 576p on low settings (with some further foliage and shadow tweaks in the .ini) isn't exactly a visual showcase, it is still recognisably The Witcher 3. Both of these things do suggest that the game is inherently scalable enough to get something worthwhile running on the Nintendo hybrid - especially when far more tweakables are available to the developer under the hood of the RED engine.
But there's also the sense that a lot of work would be needed to stabilise performance to a consistent level. The Witcher 3's lush foliage and alpha-heavy areas like Crookback Bog push bandwidth hard - a commodity that's in extremely short supply on Switch - while the CPU burden in places like Novigrad (even on the lowest settings) is considerable. And how would a prospective port handle the graphics burden bearing in mind Switch's limited compute power? Well, in this respect, a template has been established: dynamic resolution scaling (already present on Xbox One) in combination with temporal super-sampling has been a constant factor in getting these 'impossible' Switch ports playable at acceptable frame-rates.
It's a massive challenge then but we can't discount the quality CDPR consistently delivers - and of course, the studio has already proven how it can adapt its content to run on console, as we've seen with the remarkable Xbox 360 conversion of The Witcher 2 back in the day. To make this project viable, CDPR re-architected key parts of the RED engine and re-authored much of the content. That said, we know that the studio is focussed on the new Cyberpunk 2077, which many believe will ship sometime next year. The Witcher 2 on Xbox 360 was a studio-wide effort and that's highly unlikely to be the case with a potential Switch Witcher 3 port, which is much more likely to be a collaboration with an external studio.
Of course, this is all 'in theory' - and despite the mounting evidence suggesting that something may well be happening, there's no actual guarantee that the game even exists right now. But stripping back PC hardware to the bare minimum and seeing just how much of The Witcher 3 experience can be retained has been an enjoyable experience - and what it clearly demonstrates is just how much of a challenge such a port would represent to even the most talented of Switch developers. And if it's really happening, and if it's as impressive as some of the other current-gen Switch ports, it would be a stunning achievement for a mobile-orientated piece of hardware.
Will you support the Digital Foundry team?
Digital Foundry specialises in technical analysis of gaming hardware and software, using state-of-the-art capture systems and bespoke software to show you how well games and hardware run, visualising precisely what they're capable of. In order to show you what 4K gaming actually looks like we needed to build our own platform to supply high quality 4K video for offline viewing. So we did.
Our videos are multi-gigabyte files and we've chosen a high quality provider to ensure fast downloads. However, that bandwidth isn't free and so we charge a small monthly subscription fee of €5. We think it's a small price to pay for unlimited access to top-tier quality encodes of our content. Thank you.Support Digital Foundry