Working my way through Unreal Engine

It's been 11 days since I published my first post about UE. I've been busy, alongside my day-to-day work, I'm moving to a new place soon, and have been following the Unreal Engine 5 Blueprint FPS course, where I learn how to control and navigate the UE interface, add objects and control the movement of a character in the game.

Initially, I wanted to publish short blog posts about my path in learning game dev, but it felt a much better use of my time to just build and follow the tutorial. So every day I delayed writing the post to tomorrow. UE works well for me, but it's running in a low display quality so I miss stuff that I see in the course videos. I've been looking into buying a new machine and into the azure solution. When I finish the course I think I'll start working with Azure.

So let's go over what I did in the course. It started with some introductions and the setup of UE. A bit about the user interface. Everything Stephen, the instructor, does, he does it slowly, so it's very easy to follow. I already had a bit of experience doing some of the stuff, but I started with some patience because I knew very fast I'll start missing stuff.

We downloaded a few asset packages from the UE marketplace, made some changes to the provided level, and added a few objects. We made the level smaller by adding a few obstacles (while Stephen show us how to duplicate and move objects) and changing the lighting to make the level appear at night.

The next section was about the character. We've created a blueprint for it, with a mesh (how it looks), a camera, and an event graph. The event graph is really interesting. Instead of writing code, we use visual programming to do that. Adding nodes, and connecting them with arrows.

The event graph

So added a few events, like "LookUp" when the mouse moves up and down, and "MoveForward" when W and S are pressed, and we make the character move accordingly.

We learned about action and axis mappings, that map events to a click on the keyboard or move of the mouse.

We also learned about different data types that UE supports like vector and rotation (which is a 3-dimensional vector of yaw, pitch, and roll).

We added the ability to jump and learned about the Character movement component, which has many properties to control the movement, like acceleration, gravity, and friction. Then we added animations to walking, so the character doesn't look frozen.

The last part was using a weapon. Connecting a weapon to a socket on the hand, and moving it. Shooting bullets and adding the correct animation so it looks like we shot one bullet when there's a sound of one bullet shot. We added the ability to aim, and change between animations of moving while aiming and while not aiming.

We learned about the line trace, to decide where the gunshot has hit. Also adding things like custom functions to our blueprints and returning values from those functions.

Following, The course will go over adding computer-controlled moving objects (or enemies), fighting them, and different game states.

What I did so far