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

Summary

In this chapter, you started by designing the basic game flow for Pangaea and then created three UI widgets called BP_LobbyWidget, BP_HUDWidget, and BP_GameOverWidget. You also learned how to use Unreal’s OpenLevel function to start a listen server, join a game as a client, and travel back to the lobby. Based on knowing that a game instance always exists on the client side, you created the networking member functions for APangaeaGameInstance. By clicking buttons on the user interfaces, players can play the online game by choosing to host a game or join other people’s game sessions and even exit the current game to go back to the lobby.

To add something fun to this game, you added some conditions for players winning or losing the game. The Timer value was used to determine whether the game ends due to a timeout. You also finished implementing DefenseTower by allowing designers to designate any defense tower to be the base tower so that once a base tower is destroyed...