Part 3: Building “Last Of Us” (The Game) Using Unreal Engine

Dinuka Jay
4 min readOct 6, 2018

--

It’s been 3 days since my last update. Here’s where we are at. I designed a character model that looks like Joel (or as close as I can get 😅), imported new infected models from Mixamo, attached basic navigational AI to the infected along with the pawn sensing I described in the last post, added lighting to the scene and modified the level design a little bit.

Joel’s got some sneaking to do in this level

Designing Joel

The model for Joel was designed using Adobe Fuse CC. Basing off of a template, I looked at some of the facial and clothing detail of Joel from “The Last Of Us” to recreate a guy who barely resembles him. Amazing how much detail that has gone to these characters. Hats off to Naughty Dog for the commitment. You truly understand the depth of their work when you try to do it yourself.

Here’s how my Joel looked in Adobe Fuse:

Okay it’s not that great. But it’s definitely a start.

Comparison for lols

Left: The REAL Joel. Right: My version of Joel 😆

Gotta start somewhere. Let’s see how my model becomes better as it goes. Challenge accepted.

Gameplay Improvements

The most significant improvement I’ve done so far was to the AI behavior of the infected. The infected receives random navigable points in the map with an added wait time of 6 seconds before choosing to move again. This significantly improved the difficulty for the gamer as they constantly need to be on the lookout for any infected enemies sneaking around them.

The Pawn sensing was improved in terms of sight radius and sight distance. I also blocked out the pawn sensing from detecting the player while he’s in hiding. If Joel goes behind a cover, the infected will not see him even though the pawn sensing radius goes well beyond the player’s current location.

Pawn sensing with the exception of allowing the player to hide behind a cover

This suddenly brought in the ‘realism’ as well. The relaxation went away. I feel like the infected are now alive and dangerous and that little moment of realization brought me so much joy 😃

Infected Behavior

I brought in a twitching/agony motion for the infected’s idle state. This definitely made it a bit more creepier. Running around and stopping every now and then to make this motion brought in so much realism to the gameplay.

Infected screaming in agony in their idle state

Level Design Improvements

Since this is a block level, I will not be focusing on textures and extra bling at this stage. I did brought in some lights just so that I can learn how lights work in Unreal Engine and the proper usage of them. I brought in 2 spot lights with volumetric lighting to create that visual effect of light beams coming in to the scene from openings in the level. I entirely covered the ceiling for this purpose and made 2 openings in each wall. The final lighting placement looked like this from the outside:

Volumetric Spot Lights

In addition to the lighting, I also added an Exponential Height Fog to create that illusion of an abandoned and eerie environment. With a slight shade of dark blue, the level started looking way more creepier.

Amazing how lighting can bring so much life to a scene
Placed some infected near the windows to get the gamer all hyped up. The shadows make it so much better

With all these blended in, here’s what the gameplay looks like now:

Creeping behind an infected
Joel being a creep as usual. Just say hello. Why you gotta creep up like that?

I’ve learned so much while building and designing this. This journey is amazing! I’ll update you guys when I make further improvements.

UPDATE: I’ve moved this to a YouTube series! Check it out here:

--

--