Rebellion North on bringing PS4’s 1080p30 experience to Nintendo’s console hybrid.

Dynamic resolution is used, with a 918p to 1080p range, dropping to 684p to 720p handheld.

Beyond that, the nips and tucks are many and varied, but crucially, not especially noticeable.

Article image

There are some exceptions though: cutbacks to dynamic shadows and a lack of screen-space ambient occlusion.

The changes from here onwards are more subtle.

Effects such as particles and transparencies are also dialled back in quality.

Cover image for YouTube video

Likewise for the texture situation.

Still, the team found smart solutions.

Above all, they were determined to avoid a blanket dropping in res to every texture across the game.

Article image

Digital Foundry: What was the biggest challenge in bringing a game like Zombie Army 4 to switch?

Alex Houghton:To be honest, every limitation of Switch’s hardware was a challenge with this one.

If you run out of memory, that’s the end of it.

Article image

That’s quite a high level.

Arden Aspinall:It took us quite a long time to just dial it back to the memory.

But to get to that point with Zombie Army 4 we had to cram the whole thing in memory.

Article image

And even using the Nintendo dev kits, even that was a stretch.

So that kind of an interesting challenge.

But it meant that we couldn’t see the full [picture].

Article image

It took quite a while to get to that point.

And we were kind of saying to everyone, “look just hold off.

Let’s just get the thing working first.”

Article image

You know, we put everything we’d done in Sniper 4 [into the game].

And we’d obviously done Zombie Army trilogy as well.

So there was some nice little optimisations that we could do there.

Article image

So we get them eventually [to help on CPU].

And it was the same with the memory side of things.

kindly enable JavaScript to use our comparison tools.

Article image

And then you just start working through the problems, implementing more bits of the renderer.

You must have so much working: shaders building and executing properly just to render that.

So that’s another massive milestone in where we begin, and then eventually getting into the 3D.

Article image

I mean, I do remember seeing that zombie rendering on the front screen for the first time.

That was immensely satisfying.

Right from early on in the project, we could literally just graph our progress.

Article image

So that was kind of fun.

But it’s also kind of fun to look back at now.

Or was it mostly uniform, just testing everything?

Article image

So if it wasn’t in a forest, it was in like an underground bunker or factory.

And you’d be like, “okay, great.

This will run really well!”

Article image

Alex Houghton:Yeah.

I think it shows that every level is quite unique in the problems it had.

So there definitely wasn’t just one [solution] that fixed everything.

Article image

Was there a lot of fine tuning between areas?

And then you’ve also got SSR specifically for materials, which are water.

So [on Switch] we kept the SSR on the water.

Article image

In those cases, I don’t think it was a conscious decision.

But unfortunately, it was too expensive on Switch to have full SSR on everything.

Arden Aspinall:This is where we come to the dials and buttons to press.

Article image

And we find we enjoy games more when it’s not too blurry and drops too low in DRS.

But then you also get more accurate reflections in the puddles which weren’t classed as water.

What ultimately proved the biggest bottleneck in getting there in ZA4 specifically?

Article image

Was it the high number of enemy AI?

I think at the end, it was definitely the zombies.

Alex Houghton:I think ultimately, it was the number of zombies, to be honest.

Article image

We obviously didn’t want to cut down on anything like that.

They were the main things that we dealt with.

And again, like you mentioned, we had the variations in the characters.

Article image

Digital Foundry: To achieve a consistent 30fps, did you require a certain amount of overhead?

How fast would this game run on Switch without a 30fps cap?

And honestly some levels literally will not drop below 30fps.

Article image

But some levels do run - even with zombies on screen - at about 20 milliseconds on the CPU.

I was more like “we’re leaving it till the end, if we really need to”.

And for the most part it seems you are at 1080p docked and 720p portable?

Article image

Alex Houghton:I think you’ll find it is rendering native 1080p a lot of the time.

In terms of anti-aliasing, we didn’t go down the route of TAA or anything like that.

We never assume DRS is on.

Article image

It’s only right at the very end of the development cycle that we enable it.

Digital Foundry: I had a go on docked and portable modes on Switch.

I was wondering from your perspective, what is easier to optimise for?

Cover image for YouTube video

Do you start with just portable and then expand out to docked?

Or do you work from docked and then trim down to the portable side?

Which way round do you configure it?

Article image

Arden Aspinall:I think with the exception of Rogue Trooper Redux we always go from handheld to docked.

We made that mistake with Rogue Trooper Redux, which was obviously our first Switch title.

Alex Houghton:We target that because that’s the least powerful mode.

Article image

Handheld is definitely where the focus is initially.

We changed the compression system from .zlib to .zstd, which is actually faster at decompressing textures.

How did you go about that?

Article image

Arden Aspinall:I think there are multiple levels to that, really.

That’s always an easy target.

And then you go by via custom development, where we have tools on top of the Asura engine.

We [also] changed the texture formats from DXT to ASTC.

Other than that, we optimised some of the light maps in the levels.

Arden Aspinall:Compressing the vertex buffers…

Alex Houghton:Yeah, yeah.

All the model geometry we’ve optimised further on Switch so it is better compressed and smaller, basically.

Yeah, I’m still quite impressed myself that it’s such a small package size.

Arden Aspinall:I remember we were at 9GB.

And we were thinking we need to get below that 7.5GB limit.

So yeah… 6.4GB, we kind of overshot it in the end didn’t we?

Digital Foundry: What is special about the 6-7GB range?

Arden Aspinall:Just for Rebellion’s benefit, we wanted get it onto an 8GB cart.

Or is there still so much more you could do in your next project.

Arden Aspinall:What I always say to the team is there are always ways to optimise further.

It’s just time and ideas.

I look back from our first game on Switch - Rogue Trooper Redux.

We’ve got to submit now.

Can we get away with this one final optimisation?"

And we had to say no, that’s it.

They did an amazing job.

Maybe something we’ve not talked on or highlighted or we haven’t discussed yet?

It’s also a brand new feature to our Switch ports that wasn’t ever present before.

So, it’s little things like that.

But we didn’t do that.

You get the same gameplay experience that you do on all the other platforms, on Switch.

I’m quite proud that we didn’t compromise anything in that respect from the gameplay side.

We’ll go away, we’ll come back, we’ll find a way to optimise it.

We can do this."

Getting Zombie Army 4 to work on Switch was considered impossible.

And we did it.