Book Image

Unreal Engine 5 Game Development with C++ Scripting

By : ZHENYU GEORGE LI
Book Image

Unreal Engine 5 Game Development with C++ Scripting

By: ZHENYU GEORGE LI

Overview of this book

Unreal Engine is one of the most popular and accessible game engines in the industry, creating multiple job opportunities. Owing to C++ scripting's high performance, advanced algorithms, and engineering maintenance, it has become the industry standard for developing commercial games. However, C++ scripting can be overwhelming for anyone without a programming background. Unreal Engine 5 Game Development with C++ Scripting will help you master C++ and get a head start on your game development journey. You’ll start by creating an Unreal Engine C++ project from the shooter template and then move on to building the C++ project and the C++ code inside the Visual Studio editor. You’ll be introduced to the fundamental C++ syntax and essential object-oriented programming concepts. For a holistic understanding of game development, you’ll also uncover various aspects of the game, including character creation, player input and character control, gameplay, collision detection, UI, networking, and packaging a completed multiplayer game. By the end of this book, you’ll be well-equipped to create professional, high-quality games using Unreal Engine 5 with C++, and will have built a solid foundation for more advanced C++ programming and game development technologies.
Table of Contents (18 chapters)
1
Part 1 – Getting Started with Unreal C++ Scripting
6
Part 2 – C++ Scripting for Unreal Engine
12
Part 3: Making a Complete Multiplayer Game

Destroying actors

Game actors may need to be destroyed when they are killed or no longer needed in a game map. The Pangaea player character, for example, is killed when HealthPoints reaches 0; once it reaches 0, then we want to remove the player character from the map and kick the player from the game.

To complete this task, we will do three things in the DieProcess() function:

  • Stop the character from ticking. Setting the PrimaryActorTick.bCanEverTick variable as false does this.
  • Call the K2_DestroyActor() function to destroy the character. This Unreal actor API destroys the actor and marks the occupied memory for garbage collection, resulting in the release of memory
  • Call the engine’s ForceGarbageCollection function to force the engine to perform garbage collection.

To implement this, we can insert the following three lines of code within the curly braces of the DieProcess function:

void APlayerAvatar::DieProcess(){
	PrimaryActorTick.bCanEverTick...