Book Image

Mastering Game Development with Unreal Engine 4 - Second Edition

By : Matt Edmonds
Book Image

Mastering Game Development with Unreal Engine 4 - Second Edition

By: Matt Edmonds

Overview of this book

<p>To make a basic combat game from scratch, you will quickly override existing UE4 classes, and add and implement simple C++ functions while running and building them. These are all discussed as a short summary for new developers and as a quick refresher for experienced developers. Next, you will build a combat player character with expanded controls, create logic for a character, swap weapons, attack and move, bridge over scene changes and transitions, retain data between scenes, and manage the scene-change process. </p><p>You will then build an intelligent enemy AI and add physics based particles for weapon impacts. You will also get acquainted with cutting-edge features such as Volumetric Lightmaps for precomputed lighting, and Atmospheric and Volumetric Fog, to build advanced visuals in our ongoing GitHub project. </p><p>Moving on, you will explore the tools required to build an in-game cut-scene for a more professional gameplay experience and story direction. </p><p>Along the way, you will implement a solid game UI, including writing a full in-game load and save system that will enable players to resume their game from any point. You will also prepare, build, and work on VR and AR taking them from editor to real-world, building two new projects one in each of these brand new areas of UE4 and integrate classes from the main project into AR! </p><p>By the end of the book, you will have mastered all major UE features and will be able to bring self-imagined games to life through Unreal Engine 4.18+.</p>
Table of Contents (15 chapters)

What this book covers

Chapter 1, Making a C++ Project for a First-Person Shooter, is our starting point for the whole book and its corresponding UE4 project on GitHub. We'll start by installing the engine and building it in C++. Then we'll add the first-person shooter template Unreal supplies for us, go over building it in C++ as well, and then add a new player class and controls.

Chapter 2, Inventory and Weapons for the Player, adds some basics of gameplay and gets you comfortable with adding C++ classes and connecting them to blueprints in the editor. By the end of the chapter, the player has a fully functional inventory system, including picking up items and cycling through them with new controls.

Chapter 3, Blueprint Review and when to Use BP Scripting, is a section where we examine UE4's Blueprint scripting system and its advantages and disadvantages in some detail, including a practical implementation in our game's map.

Chapter 4, UI Necessities, Menus, HUD, and Load/Save, quickly accelerates into some deeper topics: after first getting our UI and HUD set up and hooked to our inventory, we'll deep dive into UE4's filesystem and other classes to implement a save-anywhere load/save system and hook that up via the UI as well.

Chapter 5, Adding Enemies!, covers how to import a new character and build and hook up its entire AI system to notice, animate to, and attack our player.

Chapter 6, Changing Levels, Streaming, and Retaining Data, explains that switching maps (levels) in UE4 or utilizing one of its streaming options is a must for all games. We'll take some time to get familiar with Unreal's options here and then move on to retaining data when changing maps. We'll adapt our load/save system to allow our player to persist inventory across levels while also retaining the state of each map as it was left.

Chapter 7, Getting Audio in Your Game, discusses how audio is an often-overlooked aspect of games that can make or break their immersion! After an overview of UE4's major audio systems, we'll dive into topics such as material-based impact sounds and environmental effects.

Chapter 8, Shader Editing and Optimization Tips, explains that materials and the shaders they create are arguably Unreal's most important system. The visuals possible in UE4 are nearly limitless, but you need to have an understanding of the limits and costs when using them. We'll go through some practical examples of creating new materials and profiling them to get familiar with how to optimize your shaders and adapt to different platforms.

Chapter 9, Adding an In-Game Cutscene with Sequencer, introduces the reader to Sequencer, the in-game cutscene tool that's mainly used and supported in UE4 now. After making an in-game scene with our player and enemy AI, we'll discuss some alternatives to Sequencer.

Chapter 10, Packaging the Game (PC, mobile), explains that no game is complete if it can't be put and run on its target platform!  Here we'll go through some examples of packaging the game and installing it, and discuss some of the differences in UE4 between launching on a device and doing a standalone build.

Chapter 11, Volumetric Lightmaps, Fog, and Precomputing, explains that UE4 offers a ton of amazing graphics systems, but its lighting is well-known and respected in the industry as top-notch. This chapter explores some of the advanced lighting available and explains how to add it to our game. It also covers adding and modifying both atmospheric and volume fog.

Chapter 12, In-Scene Video and Visual Effects, explores UE4's Media Framework and some of the cool things it provides.  Specifically, we'll take some video of the game's earlier in-game scene and play it in-game as a video file (MP4). We'll also explore Unreal's particle systems and physics particles, adding these to our projectile impacts.

Chapter 13, Virtual Reality and Augmented Reality in UE4, covers two of the newest major additions to Unreal's growing list of platforms: VR and AR. In this final chapter, we'll create two standalone projects (one for each) and modify and implement the unique features of each of them, including porting our projectiles from the main project into our AR project.