Book Image

Elevating Game Experiences with Unreal Engine 5 - Second Edition

By : Gonçalo Marques, Devin Sherry, David Pereira, Hammad Fozi
Book Image

Elevating Game Experiences with Unreal Engine 5 - Second Edition

By: Gonçalo Marques, Devin Sherry, David Pereira, Hammad Fozi

Overview of this book

Immerse yourself in the Unreal game projects with this book, written by four highly experienced industry professionals with many years of combined experience with Unreal Engine. Elevating Game Experiences with Unreal Engine 5 will walk you through the latest version of Unreal Engine by helping you get hands-on with the game creation projects. The book starts with an introduction to the Unreal Editor and key concepts such as actors, blueprints, animations, inheritance, and player input. You'll then move on to the first of three projects, building a dodgeball game, where you'll learn the concepts of line traces, collisions, projectiles, user interface, and sound effects. You’ll also discover how to combine these concepts to showcase your new skills. The second project, a side-scroller game, will help you implement concepts such as animation blending, enemy AI, spawning objects, and collectibles. And finally, you'll cover the key concepts in creating a multiplayer environment as you work on the third project, an FPS game. By the end of this Unreal Engine book, you'll have a broad understanding of how to use the tools that the game engine provides to start building your own games.
Table of Contents (21 chapters)

Exploring interfaces

There’s a chance that you may already know about interfaces, given that other programming languages, such as Java, already have them. If you do, they work pretty similarly in UE5, but if you don’t, let’s see how they work, taking the example of the HealthComponent class we created.

As you saw in the previous exercise, when the Health property of the HealthComponent class reaches 0, that component will simply end the game. However, we don’t want that to happen every time an actor’s health points run out: some actors may simply be destroyed, some may notify another actor that they have run out of health points, and so on. We want each actor to be able to determine what happens to them when they run out of health points. But how can we handle this?

Ideally, we would simply call a specific function that belongs to Owner of the HealthComponent class, which would then choose how to handle the fact that Owner has run out of health...