NASCAR 25 PC review – good game, basic port

13 min read

Introduction

It’s been slightly over a month since NASCAR 25 released on consoles on . As announced a few months back, we had to wait one more month for the PC release, and it got released according to plan, on .

Although I’m not big on NASCAR, I wanted to cover this game ever since I learned it’s developed on Unreal Engine 5 by the legendary Monster Games – the same studio that gave us Viper Racing, NASCAR Dirt to Daytona, and Test Drive: Eve of Destruction. In the 2010s, they’ve been busy working on the new NASCAR Heat games, and after a disastrous NASCAR 21: Ignition from Motorsport Games, Monster Games got a chance to work on a NASCAR game again, this time under iRacing.

iRacing Motorsport Simulations supplied a review key for the purposes of this review, and so over the past several days, I played through NASCAR 25 and documented my technical findings. As the game is locked down way more than a typical UE5 game, it was more difficult than expected, but not impossible. While I can’t give you an informed opinion on how accurately this game portrays stock car racing, I will voice my thoughts on the technicalities, as I tend to do in my reviews.

Gameplay impressions, aka car go left very well

NASCAR 25 features four racing series:

It’s no secret that I’m a tourist when it comes to NASCAR games – after dabbling with the demos of excellent NASCAR Racing 3 and NASCAR Legends as a kid, during my adult years I’ve only played NASCAR Heat 2002 on the PS2, and Heat 2, and Heat 3 on PC (NASCAR Rumble doesn’t count in this context); thus, I lack much insight on how the games have been progressing over the years, and I have no interest in this sport IRL either, to the point that three-segment races featured in Heat 2 completely caught me off guard.

This is all to say that my opinion of the game’s gameplay loop is that of an outsider’s. For this piece, I’ve almost exclusively played the Career Mode and have not advanced past the ARCA Series or touched the online mode. During that time in the Career Mode, I got to manage my own car, personnel, itinerary, and reputation. None of those gameplay mechanics are particularly in-depth, and are usually limited to reacting to a message from a team member and making a hiring decision, or selecting what event to attend. Managing the car has slightly more nuance, as the player needs to balance upgrading the car and keeping it in good shape, and resources are quite limited. So far, I have always found myself with more than enough money to buy upgrades, but not enough time to get my car in good shape. Maybe this means my driving is too reckless.

Finally, I get to inspire someone.

Initially skeptical about the prospect of turning left for 15 minutes at a time (as I played at a 25% race length and 4x the fuel usage/tire wear), I think I now see the appeal. For the first few races, I was slightly too careless, punting AI along the way as I wrestled for better positions, and burning through fuel way too fast. This not only led to me finishing very far down the pack due to me having to pit more often than the rest, but also the in-game social media coverage of my driving was dire.

But then, I started figuring things out. Smoother lines, less aggression, and higher awareness of my car’s dimensions, and coasting around the corners – each next race in the season was cleaner and more satisfying. I started seeing a shift in perception both in the social media coverage, but also on the track, as I collided with AI much less – I’m not sure if I simply got better at avoiding contact, or if the AI respected me more and gave me space. As much as I’d like to believe it was the AI, it’s probably all on me predicting the AI lines better.

Then, the very last race before I sat down to write this review, my pitting strategy and a lucky yellow flag from the AI crashing independently of my actions, I won the race.

As I got better, I could see the perception in the in-game social media shift.

Unfortunately, the game didn’t give me a chance to celebrate my win by doing a victory lap or a burnout. This is still done in real-life races, and the older NASCAR Heat games from Monster Games included that, so I’m not sure why NASCAR 25 completely omits it. Oh well.

Regardless, I’ll keep playing NASCAR 25 more. I want to progress in the career at least far enough to enter the Craftsman Truck Series. Career progression is reputation-based, so the better my driving is, the sooner I’ll get invited.

The technicalities

Now, for the main reason I’m looking into this game. All analysis and benchmarks were done on the launch PC version of the game, dated . A small patch was released during the writing of this review, but it didn’t contain any performance changes or fixes to issues I outline here. Since the time I published my previous game review, I upgraded my main PC and retired my aging graphics card to a secondary PC. This makes my benchmarks more meaningful and “true to life”, and I can try the game on both setups!

Does it work fine? Does it scale? Does the PC port go above and beyond, since it was released a month after the consoles? Let’s find out.

Game engine, graphics, system requirements

NASCAR 25 runs on Unreal Engine 5.5, although unlike the other games I’ve covered, it’s been heavily UE4-ified. You won’t find any signs of Nanite or Lumen in here; they’ve been permanently disabled at the project level, and no amount of INI tweaks will get you any ray-tracing. For this game, I am going to completely ignore the minimum requirements, as they’ve been copy-pasted straight from iRacing, and I don’t trust them to be meaningful. I threw NASCAR 25 at two setups:

For my impressions, I’ve been using exclusively the primary PC. However, for benchmarking, I used both. All screenshots in this article were taken on the Highest quality levels, unless stated otherwise.


Graphically, I feel like NASCAR 25 caught the bug of a typical annual sports game – it doesn’t look “bad”, but it’s far from impressive. To my knowledge, tracks come straight from iRacing, and they certainly show their age. Lighting is basic and relatively dull, and effects like the lens flare appear to be similar to stock Unreal Engine 5 effects.

This decision makes sense to me, though – in the absence of ray-tracing and heavy upscaling, the game looks reasonably sharp, and doesn’t require a top-end PC. Additionally, since it’s obviously not open world, in my experience, it’s free of any Unreal hitches: I don’t think I have seen a shader compilation stutter even once. The game doesn’t seem to be shader-heavy in the first place – even though it doesn’t ship any precompiled PSOs, at the time of writing this review, my gathered PSO cache file sits at around 760KB, which is not a lot for Unreal standards.

That said, even before I started inspecting the graphics options, I couldn’t help but notice how blurry the cinematics are:

These aren’t temporal artifacts or anything like this – these cinematics are simply out of focus! I have no idea if this is a bug or if cinematics neglect to set the focus points correctly, but I reported it to the developers with an assumption that it’s an oversight, as I can’t imagine the camera focusing on a random cameraman is intentional.

The port’s disappointments

With this PC port arriving a month after the console releases, I was hoping the game would be well-adapted for PCs and offer a wider range of options. Unfortunately, the reality couldn’t be further away from the truth, and we instead were given a simple, straightforward PC port that works, but doesn’t offer anything of note either.

On the first boot, the game defaults to disabled VSync, so first-time players see the intro FMV with frame tearing and maxing 100% of their GPU. The system mouse cursor doesn’t ever hide, and the mouse can’t be used to navigate menus, so it’s on you to tuck it away somewhere. Keyboard prompts are nonexistent, so it’s up to you to figure out the keyboard menu controls. Even then, you’ll soon find out that some actions, like opening the driver name text input field, require using the gamepad (and then you need to use the keyboard to type the name, of course).

On the upside, all input controls are customizable. Unfortunately, they are presented in such a disorganized way that I initially suspected some of the mappings were listed by mistake, as the game’s enormous Input Mapping list includes game actions, followed by… remappable gamepad buttons.

“Toggle mirror” and radio controls, followed by DPad and gamepad buttons? Sure, whatever.

Later, I realized that those are mappings for menus, and so they correspond to the legends of the UI actions.1 While this does make some sense, I feel like they should have been at least separated into a distinct sub-list, just like the axes (throttle/brake/steering) are. To top it off, there is no way to reset bindings back to the defaults! The only way to do that is by deleting the input configuration file.

The game also lacks any sort of customizable FOV. It’s not as much of a port issue, but it would have been welcome to see, especially since ultra-wide monitors are supported. However, the biggest indicator of this port’s simplistic nature is the Display menu.

In-game graphics options

If you were like me and expected this port to have reasonably extensive graphical options, I have bad news. NASCAR 25 features only the most fundamental options typical of UE games:

Missing something? Yes, a lot:

Let me demonstrate: with a simple Engine.ini change, I can make the game look better than the default max details, by disabling forced TSR, and setting the resolution scale to 200%:

[/Script/Engine.RendererSettings]
r.AntiAliasingMethod=0
r.ScreenPercentage=200

The result maxes out my GPU, but looks far better than the default anti-aliasing:

If users were given an option to use DLAA and/or FXAA, or an option to disable AA entirely, they could rely on DSR configured externally, without the need for any INI tweaks like this.

Graphics presets

The game comes with a set of 5 presets that correspond directly to the scalability levels in Unreal: Low, Medium, High, Very High (renamed Epic), Highest (renamed Cinematic). Interestingly enough, Epic discourages developers from exposing Cinematic in games as it’s only meant for offline rendering (e.g. movies or FMVs), and yet NASCAR 25 uses it. From what I can tell, those scalability options are mostly left untouched from Epic’s defaults, although since Lumen is globally disabled, higher Global Illumination options have barely any noticeable differences.

The presets look as follows. The differences are very subtle, so you’ll likely want to click on the images to open them full screen:

Low
Medium
High
Very High
Highest
Low
Medium
High
Very High
Highest

I’ll be honest: with the game not letting me change options in-race (so the comparison screens are not identical), and with differences this small, pointing out the differences is difficult. Perhaps presets affect more under different circumstances, for example, during the night races, but during the day, there isn’t much to talk about.

Overall, the differences seem quite miniscule, other than shadows and the texture resolution. Not sure if they warrant 5 distinct presets, but my guess is that it was done so they “automatically” benefit from the overkill settings of the Cinematic detail setting.

Benchmarks

As mentioned before, I benchmarked the game on two PCs, on all graphics presets. For the benchmark, I selected a night race setup and tried my best to drive as consistently as possible. I selected:

For the RTX 5070 Ti machine, I performed the benchmark at 1440p, as otherwise all presets had nearly identical readings due to a CPU bottleneck. On the GTX 1070 machine, 1080p was enough.

The results look somewhat acceptable: similar Low 1%’s and Low 0.1%’s show that the game’s performance is stable and consistent. Both machines started by being CPU-bound, before becoming GPU-bound on the higher details. The claim of a CPU bottleneck on an i9-12900K might sound strange, but it’s a bottleneck on a single thread performance: it doesn’t show up in Practice or Qualify sessions, so I suspect it’s caused by the AI and physics simulation happening on one or just a few threads for all 40 cars. A game of this type being more CPU-heavy than GPU-heavy makes perfect sense.

With those results, I could draw those conclusions about my hardware:

Steam Deck

When I started this review, this section was intended to be very short – at launch, the game instantly crashed on the Deck (and on Wine/Proton) in general, and a rather sparse official disclaimer was published shortly after launch:

Steam Deck Compatibility Information

NASCAR 25 does not support Steam Deck.

The game crashed instantly while attempting to execute an illegal processor instruction. I investigated it and found that it was due to the block of code being… encrypted. On Windows, this same block of code was not encrypted in-memory, yet it was encrypted on-disk, so it looked like under Proton, decryption was either failing or deliberately not running at all. Just to be sure, I reported this incompatibility in the Proton repository, and just before this review was finalized, I heard back – the game crashed as it exposed an API implementation bug in Wine! Proton Bleeding Edge has since been updated with a few fixes, and suddenly, encryption was no longer an issue, and the game boots!

As the game has anti-debug measures, I was not able to troubleshoot the exact cause properly, and thus my conclusion was incorrect – encryption was not the root cause of this issue, and instead, a failure to create a resource executed code that was not decrypted yet. If, for any reason, this resource fails to be created on Windows, the same crash would occur – and maybe it does, as some people report that the game crashes on launch instantly even on Windows.


That said, you probably can tell that the performance on Deck leaves a lot to be desired. Similar to my desktop benchmarks, a severe CPU bottleneck appears in races, while big, open courses (like Chicago) are GPU-bound. With a full grid of cars on a small oval track, the CPU bottleneck is so significant that it leaves the GPU starving for power, downclocked to less than half of its maximum frequency!

I wasn’t able to get the game to maintain a stable 30 FPS no matter what, so I wouldn’t consider it Deck playable. However, those findings benefit all users of Wine/Proton, and are good news for the future owners of a Steam Machine – the game will probably run great on it. I was able to squeeze a few more frames per second by disabling the rear view mirror and TSR (via the INI tweak), but it’s still underwhelming:

iRacing, please let us disable TSR and mirrors in the cockpit cameras!

Conclusion

Overall, I’m content with the state of NASCAR 25 as it is now. Sure, I would have preferred if the game scaled better, offered better graphics, and more PC customization. However, none of those were ever a priority for NASCAR games, and I need to acknowledge that it’s treated more like an annual sports game than a beefed up racing game – with games of this kind, their absolute priority is to capture a wide range of fans of a particular sport or motorsport, and those folks don’t necessarily have to be gamers.

In the long run, a decision to aim lower might be a better one, as it means more “casual gamers” can enjoy the game.


  1. My reaction to this realization was approximately like THIS