How the Insomniac classic was ported from PS5 to PC.
When did Nixxes start helming the project?
How long has the game been in development up until release?
And what were the starting building blocks that you were given to make a PC port?
Michiel Roza:Well, I think that the starting blocks were quite good actually.
There was already an implementation for PC they were using on the tool side.
Michiel Roza:I did my first submits in the beginning of September.
Jurjen Katsman:Yeah.
So that is your first submit.
So I look back actually, I was quite surprised to see the answer.
The actual first submit on this project was only like five, six days after the acquisition.
Very quickly, we got some people to jump in and start doing their first pieces.
Digital Foundry: The game is shipping on DX12: were the tools on PC DX11?
What was the exact starting core you had there?
Michiel Roza:They had a fully DX11-based renderer.
Digital Foundry: Why DX12 and not Vulkan?
Michiel Roza:Yeah.
I wouldn’t say that it was a serious rethink, but there were definitely some challenges there.
But those are fairly minor changes.
It’s just an extra copy.
On the performance side, it caused more trouble than we wanted.
You never have to worry about that on console.
Yeah, these things come up.
The consoles are nice and simple machines.
We love working with consoles.
What did bringing that over to DXR entail?
Are you, for example, specifically using DXR 1.1?
What was the translation like?
Michiel Roza:It was complicated!
[all laugh] Some parts were really straightforward.
That isn’t going to change between platforms.
But when we did need to verify that it’s all DXR compatible.
All the DXR calls are obviously different.
Rebecca Fernandez:Yeah, and a lot of their traces were inline within their shaders.
And we couldn’t really do that either, so that’s been pulled out.
Yeah, so it’s not an inline hit shader now.
It comes back into the trace, as well.
But the rest of the shaders actually, we kept quite a lot of the shaders intact.
It was just like, trace the ray, bring back the information, sending information around the shaders.
That part looks quite different.
Michiel Roza:Yeah mostly all the administration around the shaders [is what is different].
What was the design process and why do this for the PC version specifically?
Rebecca Fernandez:Um…Because it’s cool?
[everyone laughs]
Coen Frauenfelder:That is a motto we need to print out.
It was a combination of what we wanted and what they wanted to push this to the next level.
And we saw the lower quality buildings and thought ‘this can be better’.
How do we give people the right amount of flexibility to configure that just right for their system?
Michiel Roza:Yes.
It was, however, a lot of code to write.
Rebecca Fernandez:Yeah, to get this working did take a lot of time.
Digital Foundry: I can only imagine.
Rebecca Fernandez:Those changes were all on the reflections side, actually.
We didn’t change anything.
I don’t think there was anything DLSS specific that improved that.
The denoiser for the reflections is very not DLSS-friendly.
The pattern that it uses to do the merging does not play well with DLSS.
Perhaps that is knock-on, but it is a change that I noticed.
Rebecca Fernandez:Because on PlayStation 5, they have the temporal upscaling like the temporal injection upscaler.
So they built their reflections with that in mind.
- we still need to check that that looks okay.
Digital Foundry: The game is incredibly aliased without TAA - I am surprised people would turn it off.
But yeah, that is the way it is.
You also mentioned that there was direct involvement from Insomniac Games here.
Could you detail what that involvement was?
That’s been the majority of my involvement with them.
Coen Frauenfelder:How they work together with us was really great.
Really helpful from day one.
They gave us a lot of trust.
And they had a lot of trust in how we picked up things.
“you’re free to bring in this and this person” etc.
They just immediately let us do what we wanted, they believed that we could do it.
It has lurches down to the upper 40s.
So what exactly is the CPU limitation bottleneck?
What work do you want to do there in the future?
So it turns down crowd density for example, or there’s fewer cars around.
And in general, the game originally came from the PS4 right?
The PS4 CPU cores were not so stellar and the PS5 and the PCs were far more powerful.
With the PS5, that gap has certainly gotten smaller.
So we certainly have more CPU challenges to go around even when we’re doing the same things.
And they will have to rely on lower options of scalability, as well.
Digital Foundry: That is what I imagine would happen too.
So you mentioned decompression being done on the CPU on the PC.
We’ve also been exploring things like DirectStorage.
So some of it is also about trying to think about that for the future.
But we’re not using utilising DirectStorage here right now, as you’ve probably seen.
Digital Foundry: Even then the game is loading fast.
I did a loading test, just between PCs.
It is very fast in comparison to other PC games.
Still, what is actually the bottleneck in loading times on PC?
So we backed that away, and it didn’t really meaningfully impact loading screens.
Digital Foundry: So you mentioned PSO compilation which is my bugbear as of late.
I mention it everywhere, I cannot stop talking about it and won’t stop talking about it.
The game does not suffer from prolonged stutter from just-in-time shader compilation.
How is PSO compilation done for this game on PC?
Michiel Roza:In our case, we simply asked QA to play the entire game.
So what that means is, we just know beforehand, which PSOs will be used in-game.
And if we then load all those PSOs in the loading screens, we’re golden.
Michiel Roza:Not entirely, there is still this possibility to stream in more shaders.
And those shaders will then kick off the PSO build.
Digital Foundry: When these new shaders are streamed in-game, it is not happening in real-time right?
So you do not get the just-in-time stutter, right?
Jurjen Katsman:It’s effectively slowing down the load, you could say.
Coen Frauenfelder:And especially with this material system.
And yeah, the amount of stutters after the first collection was already almost gone.
It is working well.
And like you mentioned, the end user experience isn’t always that great.
Or it was supposed to remove the shader compilation stutters and in reality it doesn’t really do that.
But that also still happens.
So it hasn’t really solved any of the problems.
But it doesn’t make it a lot better.
It’s just a bit better than DX12.
Michiel Roza:It’s more of a band-aid.
Digital Foundry: That is what I am hearing elsewhere as well.
And this time, we also included Steam Deck in that analysis.
Digital Foundry: There was a list of recommended specifications that was published by Nixxes and Sony for tweaks.
What is the highest spec you would target vs the middle spec?
Then we often look at the ‘new spec’ - how has the market evolved?
What CPUs are now clearly out of date?
But we do try and hold that line pretty strictly, right?
The top-end I think is far harder because there is always new hardware that will always run it better.
I think that is more of a communication challenge, almost.
What is the right top-end PC to communicate?
There is always something better, there will be something better again next month, always!
For me it is about scalability and pushing the barrier in both directions.
Michiel Roza:We had never had a recommended PC spec for the high-end before.
We always had a min-spec and a recommended spec, but not really a high-end spec.
Jurjen Katsman:I remember doing an ultimate spec or something once?
Rebecca Fernandez:I always feel like we also have almost like a secret extra min spec.
[everyone laughs] you might still probably run below that point, probably.
But it will be bad times.
Coen Frauenfelder:Good luck, have fun.
I like that they can try.
Jurjen Katsman:And it’s not always horrible!
So maybe the i7 from that old generation could still run it or do we draw the line somewhere?
I think we’ve even made some improvements to that recently.
So like, yes, this 12-year-old CPU will actually get to launch the game.
Michiel Roza:I don’t think we support the Phenom 2 this time.
Jurjen Katsman:That is quite possible.
Rebecca Fernandez:We gave it up, finally.
[everyone laughs]
Michiel Roza:There was always a project of mine to make Phenom 2 work.
Is this taken over one-to-one from the way it is handled on PS5, or is it custom?
Michiel Roza:It is very similar, but we did make some improvements.
What is Windows doing in the background?
So we made it respond a lot faster than it would on PS5.
Michiel Roza:Yeah, but it’s easier on PS5 because your hardware is fixed.
So you could just target your content on whatever is available.
But if it drops even further, the content will just have to change.
Michiel Roza:The short answer is yes.
But yeah, we don’t have plans to do that right now.
I think we were talking about it today.
I think PC consumers like that.
Michiel Roza:There’s only so much you’re free to support.
At some point you have to stop.
First, it really felt like a niche product and now it’s becoming more and more popular.
Being able to fly through the city at 21:9 or 32:9 is actually very, very fun.
It is a really nice shot.
What was it like getting HDR to work for this version of the game under Windows 10 and 11?
Rebecca Fernandez:At this point we have experience with that minefield.
It was okay because of what we’ve already learned previously with this.
Yeah, Windows 10 and HDR is not a great combination.
It’s getting better, it has improved since the first time we did this.
But yeah, it’s still got to be like the moons are aligned for this to function correctly.
Everything turns green all the time with HDR!
It’s very frustrating.
No, but I think in general we didn’t need to do anything particularly special this time.
It all just worked with what we already knew.
Michiel Roza:It also helped that the game was already authored for HDR.
And some people felt they were making jokes, but by mentioning some Sony titles like Spider-Man.
Michiel Roza:I have something nerdy to say.
I was really happy to see the entire city in a debug BHV view.
Digital Foundry: I can only imagine.
Michiel Roza:That made me very happy!
Jurjen Katsman:How do you top that, Rebecca?
I learned a huge amount about ray tracing, that’s been good.