Monday, October 14, 2024

Warhammer 40K: Space Marine 2 – a technologically ambitious sequel that can look stunning


Warhammer 40,000: Space Marine 2 is one of Digital Foundry’s most eagerly anticipated games, effectively hitting the beats that made the first series entry so enjoyable. The grand scale of the environments, the dense swarms of tyranids, the absolute carnage of combat – it’s all back in Space Marine 2, enhanced by the impressive technical capabilities of the Swarm engine. Focus Entertainment recently shared a preview build of the PC version of the game, and we’re eager to share our impressions with you. We’re liking what we see – but Space Marine 2 pushes hardware, which poses interesting challenges to the current generation of consoles, especially on the CPU side.

Saber Interactive has taken on development duties for this game, and our first impression is that it’s done a fantastic job of capturing the Warhammer 40,000 aesthetic: colossal, heroic figures, massive-scale gothic architecture stretching out into the far distance and an enviable wealth of animated detail in the immediate area. The sense of density is only heightened once you get your first taste of combat: dozens of tyranids rushing you, while hundreds (possibly even thousands more) can sometimes be seen massing in the background.

Density in detail at close range also impresses, though it’s not quite to the same extremes as Warhammer 40,000: Darktide. That said, as third-person game up against a first-person experience, that’s not actually a bad thing. It works exceptionally well. The emphasis on detail also means that something has to give elsewhere: Space Marine 2 doesn’t seem to be using cutting-edge lighting or global illumination technology, but you do get accomplished versions of mature technologies like shadow maps, screen-space reflections and screen-space ambient occlusion, while the GI solution (which does seem pre-calculated or ‘baked’) does give a good impression of light bounce. The quality of the physically-based materials also works well.

Digital Foundry’s Alex Battaglia and Oliver Mackenzie share their impressions of Warhammer 40,000: Space Marine 2.Watch on YouTube

Whether you’re watching the video above or just about any of the trailers of the game seen to date, the density of detail must be raising questions. Just how well does Space Marine 2 perform? It’s difficult to answer conclusively owing to the fact that the code we had was obviously not final – but it is possible to draw some conclusions. We initially played the game maxed out on an RTX 4090 with a Ryzen 7 7800X3D – the premier CPU and GPU components right now – finding that we could sustain a native 4K with Nvidia DLAA (that’s DLSS at native resolution) delivering pristine image quality at 60 frames per second, with overhead to spare.

We also decided to run the game on the Digital Foundry ‘Frankenstein’s Console’ which is a PC built on the actual Xbox Series X CPU running Windows, paired with a Radeon RX 6700 – the closest GPU on the market to the architectural make-up of the PlayStation 5 GPU. Think of this as a ballpark-equivalent console, and it’s here at high settings where we start to find the limit. In running so much animated detail, we can surmise that Space Marine 2 is particularly heavy on the CPU, dipping into the mid-40s on the limited amount of content we had to work with (one campaign mission and a couple of PvE levels).

There’s scalability on the GPU side, though, where the RX 6700 could deliver a dynamic 4K 30 that locks nicely to the target frame-rate – or a less stable 1440p experience targeting 60 frames per second. So, it’ll be interesting to see where Saber targets the console versions of the game. There’s a genuine sense of majesty watching the carnage play out at this level of scale, but there’s no such thing as a free lunch when it comes to rendering and simulation, so we’re looking forward to seeing how Saber chooses to optimise.

As we noted in last week’s DF Direct Weekly, the PC build we have does have some stutter – seemingly traversal and shader compilation-based. In the wake of our comments, Saber got back to us and it’s great to see feedback taken on board as the game moves into the final phase of development:

“Our engine is designed so that all shaders are precompiled in advance, meaning that, technically speaking, compilation isn’t possible during runtime. However, on a PC platform, it is also necessary to ‘precreate’ (or ‘pre-use’) all of them to avoid smaller but still noticeable “driver compilation” hitches.

“We perform this precreation process at the game startup for every shader that could be used by the game. This is why you might notice longer loading times during the first launch. However, in the build you’ve seen, some non-material shaders (such as those for post-processing or certain effects) were missing from this precreation stage. This issue is being addressed and will be fixed for the release build.”

Space Marine 2’s PC specs requirements may look onerous, but the preview code showed plenty of scalability on the graphics side and support for upscalers. It’s heavier on CPU, as Saber’s spec recommendations imply.

Going back to the CPU-heaviness we noted, it’s worth bearing in mind that the Xbox Series X CPU running Windows delivers performance well below the capabilities of today’s mainstream processors and our observations are entirely in line with the published PC spec requirements. On the graphics side, there’s certainly scalability – plus support for dynamic resolution scaling in conjunction with reconstruction based upscalers. The preview build supported DLSS and FSR 2, but XeSS and frame generation were notable by their absence. That’s a shame as frame generation is useful for CPU limited scenarios in taking you well into high refresh rate territory, while XeSS has proven to be an excellent upscaler, not just for Intel GPU users but AMD too.

There are some technical issues to address based on this preview code, but it’s heartening to see constructive feedback from Saber Interactive, while a simple look at the game in action demonstrates that there’s some exceptional results coming from the Swarm engine.

And as for the game? It’s genuinely thrilling stuff with an excellent balance between ranged, projectile gunplay and close-quarters melee combat. There’s a sense of danger from the simple act of reloading, where even a short pause in gunplay can see the hordes descend. Enhancements to the dodge and parry mechanisms also enhance the gameplay loop. The relentless nature of the combat may prove fatiguing – but it’s worth stressing that we were given just a few levels to play with, so we were mostly lacking context, a sense of progression or even a basic tutorial on the game’s systems.

Even so, we really enjoyed what we experienced during the preview phase and look forward to seeing the complete game – and getting to grips with how Saber Interactive balanced the experience for the console versions.





Article credit

FOLLOW US

0FansLike
0FollowersFollow
0SubscribersSubscribe

Related Stories

An Efficient and Handy Guide to Earning from Gaming
Enter your email address and we will send you a 100% free e-book on actionable guide.
Building a Profitable Gaming Channel
GopoGamers.Com
Limited Copy Left

Fatal error: Uncaught ErrorException: md5_file(/home/execinsi/gopogamers.com/wp-content/litespeed/js/f8dc080f4264e061a0e88558a8f55cfd.js.tmp): Failed to open stream: No such file or directory in /home/execinsi/gopogamers.com/wp-content/plugins/litespeed-cache/src/optimizer.cls.php:130 Stack trace: #0 [internal function]: litespeed_exception_handler() #1 /home/execinsi/gopogamers.com/wp-content/plugins/litespeed-cache/src/optimizer.cls.php(130): md5_file() #2 /home/execinsi/gopogamers.com/wp-content/plugins/litespeed-cache/src/optimize.cls.php(837): LiteSpeed\Optimizer->serve() #3 /home/execinsi/gopogamers.com/wp-content/plugins/litespeed-cache/src/optimize.cls.php(382): LiteSpeed\Optimize->_build_hash_url() #4 /home/execinsi/gopogamers.com/wp-content/plugins/litespeed-cache/src/optimize.cls.php(264): LiteSpeed\Optimize->_optimize() #5 /home/execinsi/gopogamers.com/wp-includes/class-wp-hook.php(324): LiteSpeed\Optimize->finalize() #6 /home/execinsi/gopogamers.com/wp-includes/plugin.php(205): WP_Hook->apply_filters() #7 /home/execinsi/gopogamers.com/wp-content/plugins/litespeed-cache/src/core.cls.php(477): apply_filters() #8 [internal function]: LiteSpeed\Core->send_headers_force() #9 /home/execinsi/gopogamers.com/wp-includes/functions.php(5427): ob_end_flush() #10 /home/execinsi/gopogamers.com/wp-includes/class-wp-hook.php(324): wp_ob_end_flush_all() #11 /home/execinsi/gopogamers.com/wp-includes/class-wp-hook.php(348): WP_Hook->apply_filters() #12 /home/execinsi/gopogamers.com/wp-includes/plugin.php(517): WP_Hook->do_action() #13 /home/execinsi/gopogamers.com/wp-includes/load.php(1280): do_action() #14 [internal function]: shutdown_action_hook() #15 {main} thrown in /home/execinsi/gopogamers.com/wp-content/plugins/litespeed-cache/src/optimizer.cls.php on line 130