This is a solo passion project that produces quality videos with in-depth tech analysis, performance optimizations, and all things Steam Deck and gaming tech.
If you're interested in supporting the channel, please check out our Patreon page to get early access to ad-free uploads and behind-the-scenes content, as well as entry to an exclusive area on our Discord server!
Game Review |
Insomniac Games / Nixxes
12 Aug 2022
PC & PlayStation
There’s a reason why Marvel’s Spider-Man from Insomniac Games is considered as one of the best superhero games of all time. It’s an amazing combination of perhaps the most fun way to move around in a game world, a great story, and the brilliant and captivating soundtrack by John Paesano. Of course, you can criticize its Ubisoft-style watchtowers, unnecessary mini-games, quicktime events as well as repetitive side quests... yet in the end Marvel's Spider-Man is a great overall package.
The game has finally been released on PC and although it does indeed look great on a beefy GPU and big screens, it begs the question: how good does it run on the Steam Deck? Without further ado, let’s get to it!
Fighting against input latency
Upon first launch on the Steam deck, the game resorts to medium settings by default: full screen, upscaling through AMD FSR 2.0 and a dynamic resolution with a frame rate target of 30 FPS. Everything else uses the Medium preset, which is why most things are set to Medium, except Depth of Field and Shadow Quality.
Nixxes Software, who are responsible for the port to the PC, seem to aim for a frame rate target of 30 FPS here, which can successfully be maintained by the Steam Deck in most cases. Only very rarely does the performance drop to around 25FPS for a few seconds, but due to the lack of an in-engine frame rate cap there is a constant fluctuation upwards, which results in a very inconsistent gaming experience. You could indeed use Wayland’s frame rate limiter you can find in the Deck’s quick menu, but this will inevitably introduce a massive amount of input lag due to its forced tripple buffering. Another valid option would be leveraging half refresh rate V-Sync. In theory while using a refresh rate of 60Hz, this would slice the same amount in half and therefor cap the FPS at 30. Sadly this too won’t work because of a driver-issue with Proton.
So right out of the box for a 30FPS experience you either have to deal with an uncapped frame rate or input lag. If there were no other option, I would actually choose the latter for the sake of frame pacing consistency. But thankfully there actually is: During my testings, I came up with an idea that revolves around something Simon Hallsten, more widely known as Flightless Mango created. I’m talking about MangoHUD - which is an overlay preinstalled to your Steam Deck. I bet you already had a chance to try it out: When activated through the quick menu, it provides various stats around your Deck’s hardware. You might not know, but MangoHUD is capable of more than you would expect at the first glance. One of those things is capping the frame rate without forced tripple buffering!
Long story short: If you want to play at consistent 30 frames per second, I’d highly recommend on adding the following launch option to Spider-Man in your Steam Deck’s library to cap the frame rate to 30:
MANGOHUD=1 MANGOHUD_CONFIG=fps_limit=30 %command%
Make sure to uncap the frame rate in the quick menu as well as set the refresh rate to 60Hz. Still, as with everything there’s sadly a small caveat to it: While Wayland’s frame rate limiter with its input lag still ensures a near perfect frame time, the MangoHUD solution come’s with some fluctuations. I personally rarely noticed that, so in the end it’s up to you to decide which feels the best.
Golden 40 to the rescue
But now unto the juicy stuff: Setting the refresh rate through the Deck’s quick menu to 40Hz and activating V-Sync as usual organically caps the frame rate to 40. Now we only got to make sure the Deck can maintain that value somewhat consistently. During my testings, I came across some interesting things that I would like to share with you. For example, I was initially very excited about FSR 2.0 in Spider-Man. Especially for the Steam Deck a true blessing, I have already added this feature via mod in Cyberpunk 2077 and Red Dead Redemption 2. Yet the way FSR 2.0 seems to work in Insomniacs proprietary engine results in both strange short frame time spikes and fuzzy visuals. So I decided against those and opted for Dynamic Resolution scale on 45 instead; which I’ll cover later on. I’ve also noticed that the game’s Occlusion Culling isn’t always fast enough to catch up with a fast swinging hero from the neighbourhood when using either FSR or ITGI, Insomniacs own upscaling technique.
In terms of Dynamic Resolution Scaling though, I would love to see Insomniac or Nixxes adding an option for a 40 FPS goal. Setting DRS to 30 somewhat ensures that this value is hold to in most situations, but since we’re looking for the Golden 40 experience, we should resort to a frame rate goal of 45. Combined with the 40 FPS cap through v-sync this leads to the engine constantly trying to alter the resolution. That results in a lower resolution scaling than set to 30, so it would be cool to get that 5FPS-headroom back in terms of overall visual clarity.
That being said: During tweaking I furthermore noticed, that some textures on glassy buildings lack of reflections when set to low or medium. Even with screen space reflections activated, which fundamentally complement stuff like puddles, windows on buildings look rather dull. Once we set Texture Quality to high, we get fancy cube maps, which mimic their surroundings. While nothing like real-time reflections, they add massively to the overall look to the game, so I decided to stick to them.
Working off of the other default’s medium settings, I preferred to leave some of them unchanged: Especially texture filtering and ambient occlusion are already set to their best compromises in visuals and resource expenses. Four times of anisotropic filtering and everything above cost us respectively up to 4 FPS. While SSAO adds a lot to the game’s visual depth, HBAO+ would be a massive strain to the frame rate and doesn’t even properly work right now. Level of detail at medium seems to be a good choice as well, since the performance hit stays reasonable and the lower settings ending up too ugly, everything above is hardly noticeable in 800p. Both Traffic and Crowd Density should be set to low as they will massively bloat up the data streaming and result in more frame rate dips while traversing through the city.
Hair quality seems like a big strain in cutscenes and weather particle quality has also an unexpectedly huge impact to Spider-Man’s open world performance, so we set them both to low as well. Same goes with Depth of field, just make sure to not set it to very low as this ends up quite messy in some cutscenes. Everything after that relates to personal preference, though I would definitely recommend on leaving Chromatic Aberration activated. Unlike how CA works in other games, here you will instead get a very slight but pleasant blurring towards the screen’s edge. This helps to visually fight aliasing which is often more noticeable in that area due to objects usually being closer to the camera. I personally prefer zero film and lowering motion blur strength to 5, because it still adds to the sense of speed.
Important Disclaimer: With everything set we now only have to make sure the quick menu’s per-game profile is activated and refresh rate at 40Hz. While all of this results in a pretty consistent frame-pacing due to the Golden 40’s nature - which I comprehensively explain in my Golden 40 video - we still have to accept some FPS dips while swinging through New York and in intense combat situations. This may be fixed in the long run since it’s related to the data streaming of Insomniacs engine due to the Deck’s limited power budget.
Golden 40 Settings
|Window Mode||Exclusive Fullscreen|
|Dynamic Resolution Scale||45|
|Texture Filtering||2x Anisotropic|
|Screen Space Reflections||On|
|Level of Detail||Medium|
|Weather Particle Quality||Low|
|Depth of Field||Low|
|Motion Blur Strength||5|
Quick Action Menu:
|Use per-game profile||On|
|Half Rate Shading||Off|
|Thermal Power (TDP) Limit||Off|
As always - one last thing: Please keep in mind, that this preset will push your Deck’s hardware to its limit. Expect the device to get pretty hot and the game gnawing through your battery in no time - you can expect a battery life of one and a half hour - in rare cases up to two hours.
If you’re instead looking for more battery-focused optimisations, I would like to recommend to pay SteamDeckHQ a visit. They usually provide great settings to keep your device cool in order to enjoy longer play sessions without an external power source nearby.