Search icon CANCEL
Subscription
0
Cart icon
Your Cart (0 item)
Close icon
You have no products in your basket yet
Arrow left icon
Explore Products
Best Sellers
New Releases
Books
Videos
Audiobooks
Learning Hub
Free Learning
Arrow right icon
Unreal Engine 4 Game Development Quick Start Guide
Unreal Engine 4 Game Development Quick Start Guide

Unreal Engine 4 Game Development Quick Start Guide: Programming professional 3D games with Unreal Engine 4

Arrow left icon
Profile Icon Rachel Cordone
Arrow right icon
$19.99 per month
Full star icon Full star icon Full star icon Full star icon Empty star icon 4 (6 Ratings)
Paperback May 2019 202 pages 1st Edition
eBook
$13.98 $19.99
Paperback
$26.99
Subscription
Free Trial
Renews at $19.99p/m
Arrow left icon
Profile Icon Rachel Cordone
Arrow right icon
$19.99 per month
Full star icon Full star icon Full star icon Full star icon Empty star icon 4 (6 Ratings)
Paperback May 2019 202 pages 1st Edition
eBook
$13.98 $19.99
Paperback
$26.99
Subscription
Free Trial
Renews at $19.99p/m
eBook
$13.98 $19.99
Paperback
$26.99
Subscription
Free Trial
Renews at $19.99p/m

What do you get with a Packt Subscription?

Free for first 7 days. $19.99 p/m after that. Cancel any time!
Product feature icon Unlimited ad-free access to the largest independent learning library in tech. Access this title and thousands more!
Product feature icon 50+ new titles added per month, including many first-to-market concepts and exclusive early access to books as they are being written.
Product feature icon Innovative learning tools, including AI book assistants, code context explainers, and text-to-speech.
Product feature icon Thousands of reference materials covering every tech concept you need to stay up to date.
Subscribe now
View plans & pricing
Table of content icon View table of contents Preview book icon Preview Book

Unreal Engine 4 Game Development Quick Start Guide

Introduction to Unreal Engine 4

Welcome to Unreal Engine 4 (UE4)! Unreal Engine can make developing your own games simple, even for those of you with no prior programming experience. But, it is important to familiarize yourself with some of the major systems to save yourself time and headaches down the line. This book will get you up to speed with the major features of UE4 quickly, and leave you with the resources required to expand on your knowledge through other tutorials and official documentation.

This book is intended for people with some previous programming experience. I won't go into detail about how variables and functions work, but I will explain how UE4 uses them with the Blueprint system. We will go into more detail about some systems that are specific to game programming or to the UE itself, such as UMG and multiplayer.

We will use examples to learn. Each chapter will build and expand on a working game. It won't be anything fancy, but you'll be able to see how UE4's systems interact by means of a working example.

In this chapter, we will cover the following topics:

  • Downloading and installing the Unreal Engine
  • Using Project Templates to save time developing basic functionality
  • Explore the layout of the editor so we know where to find what we need in order to develop our game
  • Examine the settings we can use to fully customize our game and the editor itself to save development time
  • Adding plugins and marketplace items to further expand your development possibilities

So with that, let's get started!

Downloading the UE

Before we get into the engine itself, we need to download and install it as follows:

  1. Search the internet for Unreal Engine, or head to this address at https://www.unrealengine.com.
  2. Create a free account with Epic Games and log in to it.
  3. In the top right of the Unreal Engine site, you will find a link to the download. Download the Epic Games launcher.
  4. Once it's done downloading, go ahead and install it.
  5. Once that's done, open it up. This will load the Epic Games launcher.
  6. When the launcher opens, click the Unreal Engine button on the left-hand side:
  1. Here, you will have four useful tabs at the top:

Here is a description of the items you can see in the preceding screenshot:

  • Unreal Engine: In addition to featured content, there are links to AnswerHub (like Stack Overflow, but UE4-specific), Forums, and a Wiki, with tutorials and engine documentation. There are also links to the Roadmap and Blog to see current and upcoming developments involving the engine.
  • Learn: This is a more detailed tab for developers to find tutorials and documentation. This tab also includes demos and other samples. This is a great place to find inspiration for features that might otherwise not have been on your mind.
  • Marketplace: This is the UE asset store. Art, code, animation, and plugins can all be found here. There is a free section to get you started, and frequent sales, so keep an eye on it!
  • Library: This tab keeps track of your currently installed engine versions, your projects, and your marketplace purchases for easy installation.
  1. This Library tab is where we will begin. You can choose to install any engine version all the way back to 4.0.2, but, for the purpose of this book, we will be using the latest version, which is 4.22.1 at the time of writing.
  2. To start the installation, press the plus sign next to Engine Versions and select 4.22.1 with the drop-down arrow, and then press Install:

Once that's done, the Install button should change to Launch, for example. For each project's initial setup, you'll press this button to launch whichever engine version you want the project to use. After that, the project will appear in your My Projects list and you can launch them that way. You can also right-click on a project in the My Projects list to create a shortcut for it. That way, you won't even need to run the Epic Games launcher to dive right back into your project.

For now, hit the Launch button on 4.22.1. The project browser will appear, as follows:

All of your existing projects will show in the Projects tab along with their engine version. Projects cannot be opened with a previous version of the engine, but it's usually fine to open a project with a later engine version.

You will just need to make sure any plugins your project uses will be compatible with the newer engine version.

Using project templates

In the New Project tab, you will find templates for various project types. These templates will give you a great head start, so you won't need to reinvent code that is common to specific game types. The templates are as follows:

  • Blank: Only use this option if none of the following templates fit your project's genre. Usually, one of the other templates will cover what you need to get started, and everything about the template can be customized or deleted. But if your game project doesn't fall under anything else, you can use this option to create your entire game from scratch.
  • First Person: This is the standard shooter template. It includes a first person arm mesh and a weapon that fires projectiles.
  • Flying: This is a third-person view of a spaceship that can be flown around.
  • Handheld AR: This includes everything you need to get started with augmented reality on a phone. Make sure your device supports ARKit for iOS devices, or ARCore for Android!
  • nDisplay: This option is used for multimonitor/cave display setups. It is rarely used, but is an incredibly useful template when you need it.
  • Puzzle: Most people associate the UE with top-of-the-line graphics, but even simple puzzle games can benefit from the workflow that Blueprints present.
  • Rolling: Ball-based games will find their home here. All of these templates have keyboard, gamepad, and touch inputs already set up as appropriate. Here, the ball can be controlled with any of the three options.
  • Side Scroller / 2D Side Scroller: This is a standard Metroidvania camera setup. Which of these two you use depends on whether your art assets will be 2D or 3D.
  • Third Person: This is a free rotating camera with a keyboard-controlled player, common for platformers and action games.
  • Top Down: This can be easily confused with the Third Person template, but this one has a fixed camera with a Diablo style click-to-move player.
  • Twin Stick Shooter: This is the Top Down shooter template. Don't let the icon fool you; this template is just as suitable for a Hotline Miami style human player as it is for a bullet-hell spaceship one.
  • Vehicle: This is the racing template. Another great feature of these templates is the ability to combine them. For instance, if you wanted to make a GTA style game where you could run around or drive cars, you could choose the Third Person template, and once you're in the Unreal editor, you could add the Vehicle template to your project as well.
  • Virtual Reality: This includes hand models, teleportation, and grabbable objects.
  • Vehicle Advanced: If your project needs more realistic vehicles than the simple physics of the vehicle template, this would be your choice.

Most of these templates can be used in both Blueprint and C++ projects (augmented reality (AR) and virtual reality (VR) templates are Blueprint only). Unless your goal is to solely use Blueprints or C++, don't worry too much about which project type to use. C++ can be added to Blueprint projects and vice versa.

One major exception to this is if you need to alter any of the engine code itself, or if you need dedicated servers for your game. Using the UE through the launcher with the official engine versions allows us to extend from the engine and its classes, but it doesn't let us modify the engine code directly. If you do need to do this, you will need to download and compile the engine yourself, which is fairly simple but outside the scope of this quick start guide. Most of the time, you can create and deploy your entire game without needing to touch the engine code.

Initial project setup

For this book, we will be using a Blueprint project with the Third Person template, so select that.

Next, we need to choose from a few other options. These can also be changed later, so don't worry about choosing incorrectly. Here are the selections we need to make:

  • Desktop / Console or Mobile: For this book, we will be using Desktop / Console as our target hardware.
  • Maximum Quality or Scalable: We will use Maximum Quality here. Graphics settings can be changed once the project is created, and we will discuss some of those options later in this chapter.
  • With or Without Starter Content: Most of the time, you'll want to include the starter content for quick prototyping. These assets can always be deleted from your project once they're no longer needed, but they are a great help when creating test levels:

Now, give your project a name and location and click Create Project. I will be naming the project AwesomeGame, because we're awesome and your game will be awesome:

Now, we have to wait while the project is being created. This will take a while, and it might seem like it gets stuck at 90-something percent, but give it time and eventually, we'll get our first look at the editor!

The Unreal editor

Once the editor finishes loading, we will get our first look at it. This is what we will see:

The editor's layout will quickly be decipherable to anyone who has used Unity or another game engine before, but there's always the fear of clicking something and having everything go wonky, so let's take it panel by panel. We'll start at the bottom left with the Content Browser.

The Content Browser

This is where all of our game's content will appear, from code to static meshes, materials, sounds, and animations. If we press the arrow button in the top-left corner above the folders, we can see a complete folder view for the content in our project, as shown in the following screenshot:

To get a quick overview of the template you're using, you can press the play icon on the ThirdPerson Overview asset (the ThirdPersonBP folder in our case) as shown in the following screenshot:

This will point you to the location of the important assets provided with that template. For the ThirdPerson template, the two assets we'll be digging into the most are the ThirdPersonCharacter and ThirdPersonGameMode under ThirdPersonBP\Blueprints.

At the end of the overview, a Tutorials tab will pop up with links to tutorials for everything from C++ to animation and landscapes. You can also find a link to this tab under Help | Tutorials.

Back to the Content Browser, if you look at the top, you'll see the Add New button. This lets you create a new asset of any type, including Blueprints, behavior trees for AI, and sound cues. At the top of this list, you'll see Add Feature or Content Pack, which is what I was describing earlier in this chapter in the Using project templates section. If you require Vehicle template functionality in your ThirdPerson project, for example, this is where you would add it.

The Viewport

Next in our tour of the Unreal editor is the Viewport. This displays our currently loaded level and can be configured to make navigation easier. There are two ways to move the camera around in the Viewport:

  • Mouse and WASD: Holding the right mouse button down will let you rotate the camera, while using the WASD keys will move the camera forward/backward and left/right. Anyone with experience in Unity will be used to this camera movement.
  • Mouse only: It is also possible to navigate using only the mouse, which people with experience in previous Unreal editors will be familiar with. Holding the left mouse button will let you move the camera along the horizontal plane along with looking left/right. Holding the right mouse button will keep the camera in place while letting you look around. Holding both the left and right mouse buttons will let you move the camera up/down and left/right at the same time while keeping the rotation the same. Combining these three mouse button combinations will let you navigate a level without needing to use the keyboard.
Pressing F11 will let you toggle fullscreen on the Viewport.

Viewport options

On the upper left of the Viewport are a few drop-down menus that let us customize and configure the Viewport. Starting from the left with the drop-down arrow, a few of the important options are as follows:

  • Realtime: This toggles real-time rendering of any animated elements of the level. You can see it with the spinning green DocumentationActor, but this also applies to any animated materials and particle effects. With this off, elements will only update while you are moving the camera.
  • Show Stats / Show FPS: This toggles frames per second (FPS) and stats that show information such as poly counts, rendering times in milliseconds, and memory usage. A full list of stat options can be found in the Stat submenu a bit further down the menu.
  • Game View: This toggles any editor-only icons and assets so you can see what the level will look like in game. Pressing G also toggles this, so if you've accidentally hidden the editor icons, it was probably this way.
  • Bookmarks: This allows you to set bookmarks for camera locations so you can use keyboard numbers to teleport there. This option is incredibly useful and often overlooked, so getting into the habit of using these early can save you a lot of time navigating your levels. These are level-specific, making them even more useful, but don't forget to save your level if you change these; otherwise, you will lose them.
  • Layouts: This lets you choose from a variety of Viewport layouts with up to four views. If, for some reason, you need even more Viewports, at the top of the editor, press Window | Viewports and select one of the other Viewports (Viewport 1 is the existing one). Each of these can also be configured with up to four panes.
  • Advanced Settings: This lets you further customize the Viewports by inverting the mouse, combining the translate/rotate widgets, and adjusting highlight intensity, among other things. Don't worry about messing things up here; you can always press the Reset to Defaults button in the top-right corner.

Next to the drop-down arrow at the top of the Viewport is Perspective. This is the setting for the Viewport type. By default, it shows a 3D perspective, but this can be configured to show a 2D wireframe view from the top or left, and so on.

Navigation while in a 2D perspective is a bit different than the 3D view. Holding the right mouse button lets you move around, and the mouse wheel lets you zoom in and out.

While in a 2D view, holding the left mouse button lets you drag a selection box. Another useful tool is holding the middle mouse button to use the measuring tool. This is useful for programmers when we're trying to figure out how far enemies should be able to see, for example.

Next in the Viewport options is the Viewport's visual style, which defaults to Lit. You can choose Unlit and Wireframe for example, but this also offers a lot of optimization views, such as Shader Complexity and Collision views. Most of these are more useful for artists.

The final dropdown in the upper-left corner is the Show list. This can be used to hide things that might be in your way, such as fog, or to show extra options, such as a collision. This includes a few advanced options, such as showing bones for skeletal meshes. This menu also includes a Default so that you can reset anything you've changed here.

Grid and snap settings

In the upper-right part of the Viewport are the settings for the translation tool, grid, snap, and camera:

  • The first three buttons (labelled 1 previously) allow us to switch between translation, rotation, and scaling for world objects (although it's easier and quicker to use W, E, and R on the keyboard for this).
  • Next is the global/local toggle (2). This changes the way the translation, rotation, and scaling work to be world oriented or dependent on the selected object's rotation.
  • The next setting is the grid snap (3). The first button of these three (with a curve and three arrows) lets you toggle surface snapping, which will automatically place objects on the floor when moving them around, with an option to automatically rotate them to align with the floor's rotation.
The Unreal editor bases its unit system on centimeters. Although this is all relative and you can choose any reference scale you want, the default character you control is built around 1 unreal unit = 1 centimeter.
  • The next button (section 3, second button), which is orange with a grid, toggles grid snapping completely. If you need to precisely align an object, turning grid snapping off will help with that.
  • The final button in the grid snap section (section 3, third button) lets you choose the grid snap distance. Lower values will let you adjust objects more finely.
  • After the grid snap, we have the rotation snap (4) and scale snap (5) sections. They operate the same as the grid snap, and the scale snap has an additional option to preserve the ratio between the axes while scaling.
  • The last option in the upper right of the Viewport controls the camera speed (6), with a scalar for more control over the range of speed.

The toolbar

Above the Viewport is the toolbar, as shown in the following screenshot:

This gives access to some of the more commonly used features of the editor:

  • Save Current: This saves the current level. Save on a frequent basis. By default, the editor has autosave turned on, but it's set to 10 minutes, and that can be a lot of work when you're in the zone.
  • Source Control: This hooks your content to subversion, perforce, or Git content control. If your team uses one of these, this will save a lot of time over having to do this outside of the editor.
  • Content: This opens the Content Browser if you have that tab closed.
  • Marketplace: Pressing this may seem like it does nothing, but it opens the Marketplace in the Epic Games launcher. You'll need to switch over to that program to see it, as it doesn't automatically pop back up.
  • Settings: This provides access to some settings menus we'll be talking about in a bit, along with a number of selection, quality level, and snap settings for the Viewport.
  • Blueprints: This lets you create and find Blueprint classes, but this is easier done in the Content Browser. This is also where you access the level-specific Blueprint.
  • Cinematics: This is beyond the scope of this guide, but here is where you would get started with creating cinematics at your level.
  • Build: Here is where you set the rebuild options for the level, and where you rebuild geometry, lighting, and pathing in the level. For programmers, most of this is not our focus, but you will want to rebuild pathing when working with AI, and doing a complete rebuild by simply pressing the Build button in the toolbar will get rid of the red LIGHTING NEEDS TO BE REBUILT notification in the Viewport and in game. To make things quicker, keep the Lighting Quality at Preview until you're ready to do non-test builds.
  • Play: This lets you play the current level without having to build the entire project. By default, this uses the current Viewport, but exiting from this with Esc doesn't reset the camera, so I usually set this to New Editor Window. For multiplayer testing, you can also set the number of players, which will open a separate window for each one. If you have compiled the engine yourself and set up dedicated server functionality, you can enable that here as well. At the bottom is a link to Advanced Settings, such as mouse control, Viewport sizes, and server options.
  • Launch: If you are developing for mobile or browser, you can launch to those devices from here.

World Outliner

The World Outliner tab on the right of the editor window contains a list of all of the objects in the current level, as shown in the following screenshot:

You can group them into folders, right-click to create a new folder, and click the eye icon on the left to hide individual objects or an entire folder at once. Selecting one or more objects here will display their properties in the Details panel (discussed in the next subsection). The right column will also have links to directly open the Blueprint associated with an object if it has one (such as the ThirdPersonCharacter for our project).

You can double-click on an item here to zoom the camera to that object. If you have an object selected, clicking it again will allow you to rename it to make organization easier.

This panel also has a Search... bar, which makes finding objects easier, especially combined with the renaming feature.

Right-clicking on an object in this panel provides more options for that object, including visibility, selecting matching objects, and attachment options. This same menu appears when you right-click on an object in the Viewport.

Details and World Settings

When an object is selected in a Viewport or in the World Outliner panel, its properties appear in the following screenshot:

Here, we can adjust each individual object in the level's properties. Most commonly, we can perform the following actions:

  • Manually set Location/Rotation/Scale if we need precise values
  • Set or find materials, meshes, and so on that it uses in the Content Browser (click the magnifying glass icon to go to that asset in the Content Browser)
  • Adjust physics and lighting properties for that object (if it does not need to cast shadows for instance)
  • Toggle visibility for the object so it appears in the editor but not in game (under the Rendering section of its properties)
  • Adjust any custom properties we've added to our own objects (discussed in Chapter 2, Programming Using Blueprints)

Keep in mind that some of these properties are more easily changed without needing to do it here. For instance, for the material property of a static mesh, you can simply drag the material from the content browser on top of the object in the Viewport. You don't need to use the arrow button in the object's properties unless the object has multiple materials and you're having difficulty while setting up the right one.

World settings

Most of these properties aren't used too often, but there are a few here that interest us:

  • Enable World Composition: For open world style games, this option would need to be enabled. Epic Games has good resources for creating this type of world. Searching for UE4 World Composition will provide you with plenty of tutorials for that.
  • KillZ: This is the height at which actors get destroyed. If you're creating a level with a lot of height and your character keeps disappearing when you drop down, check this value to make sure it's low enough. It will appear as a red line in any of the side/front Viewports.
  • GameMode Override: Instead of using the default GameMode class (which we will discuss with other Project Settings shortly), each level can override that with a specific GameMode class. For example, if you were making a third-person game, but one level was a car race, you could use this to set specific rules and character/HUD classes for this level, instead of needing to integrate both types of gameplay into one GameMode class. Once a GameMode override is set, each individual class default can be edited in the Selected GameMode dropdown beneath it.
  • Override World Gravity: As withGameMode, instead of using the Project Settings value for gravity, each level can have its own.

Next, we will take a look at how to customize the editor itself with editor preferences to make our workflow easier.

Editor preferences

Back in the main editor window, if you go to Edit | Editor Preferences (near the bottom), you will see options to customize a lot of things pertaining to the editor. Let's go over some that are used more often:

  • In the Appearance section, you can change the color of the grid and selected items, set colorblind options for the editor, and change the font size and color for the log.
  • The Keyboard Shortcuts section has a complete list of the keyboard shortcuts the editor uses in its various windows and modes, and they are all completely customizable. Spend some time familiarizing yourself with them, as they will save you a lot of time when working on the editor.
  • Next is the Loading & Saving section. Earlier, we talked about the autosave feature, and here is where you can change how it operates. By default, it is set to 10 minutes, but you can change that time here in the Auto Save section. You can also change what happens when you start up the editor as far as which level is loaded, and if it should restore any asset tabs you had open when you last shut down, which is pretty useful if you're working in a lot of different classes at a time and don't want to lose your place.
  • Another section that you will want to take a look at is the Play section under Level Editor. Here, we can customize the Play in editor settings as well as the new window settings, changing the window size and the mouse/keyboard control scheme.
  • You might not want to change most of these settings right away, but don't be scared to try them out. All of the sections here have a Reset to Defaults button if you need to revert your changes. You should definitely come back to these settings once you've had some experience with the editor and know more about what changes can improve your workflow.

Project settings

Next, we'll discuss the project settings under Edit | Project Settings:

The first section we'll talk about is Description. Here is where you will set your project/company name, any copyright and licensing notices, and window settings for the game (resizeable, borderless window, and so on). You can also manually set your project thumbnail here, which will show up in the Epic Games launcher in your project library.

Next up is Maps & Modes. Here, you can change the default GameMode class for your game (which can be overridden per level as previously discussed). You can also set which level is loaded when the editor starts up and which level is loaded when the actual game starts up (usually a title screen level).

There are also options for split-screen multiplayer if your game uses that.

The last option here is the GameInstance class, which can store data across level loads.

The next section is Movies, which allows you to set any startup movies, such as company logos, and lets you set whether or not these are skippable. And please, on behalf of gamers everywhere, make these skippable.

The next section is Packaging. Here is where you set your project to a development or shipping build and set options such as whether or not to do a full rebuild each time you run one. You can also set the Blueprint nativization method if desired, which converts them to C++ during the build process and will be discussed more in Chapter 8, Optimization, Testing, and Packaging.

After that comes Supported Hardware, which is self-explanatory, and then Target Hardware. When we were first setting up our project, we set it to Desktop / Console and Maximum Quality. If you needed to change it, here is where that is done.

One last section you'll want to explore on your own is the Engine section. A lot of the defaults are set here for things such as AI movement, animation compression, and audio classes.

Further down in the Engine section are the physics defaults, where you can set things such as gravity (which, as discussed, can be overridden per level), terminal velocity, and friction settings.

The last part of the engine settings I want to talk about is rendering. Here is where the major components of the graphics will be adjusted, such as ambient occlusion and motion blur. Depending on the scope of your project, some of these will not be needed, and they can be individually disabled here to increase your game's performance and fit your game's art style.

Input settings

The input settings are part of the Engine section, but I want to discuss it separately from the other editor preferences. This section defines the keyboard, mouse, and gamepad inputs that our game will use, and will come into play in Chapter 2, Programming Using Blueprints. Let's take a look at the inputs that have been provided for our third-person project:

When you create your project, these inputs will automatically be created based on the template you use, but you will naturally want to add more depending on your gameplay. For instance, to add a Use key, you would press the plus sign next to Action Mappings, then change the name from NewActionMapping_0 to Use, and then select a keyboard key for it to use (E is common). Now, when you are creating or modifying your character class, you will be able to use this as an input event (discussed more in Chapter 2, Programming Using Blueprints).

Axis Mappings have an additional setting for scale, since they include gamepad thumbsticks that don't have a strict on/off state. If you look at MoveForward for example, you can see that the backward key (S) also calls the same input event; it just gives it a negative value so the character will move in the opposite direction.

Now that we've customized the editor with our preferences, let's look at how to further expand the engine's capabilities by using plugins.

Installing and using plugins

Plugins are packages of code that extend the functionality of the editor in a variety of ways. They can be used for importing file formats the UE is unfamiliar with by default, and add entirely new functionality, such as analytics.

Plugins can be found by going to Edit | Plugins. Once open, we can see a list of available plugins divided into categories:

A lot of plugins are built into the engine and can be enabled or disabled as needed. Speaking of which, if you have Steam VR installed, you may have noticed that it started up automatically when the project launched. Since we're not going to be using any VR functionality in this book, let's disable that plugin now so Steam VR doesn't load every time we start up the editor:

  1. To disable it, go to the Plugins browser.
  2. Scroll all the way down on the left side and click on the Virtual Reality category.
  3. On the right side, scroll down to Steam VR and uncheck it.
  4. The editor will let you know that you need to restart for the setting to take effect, so click on the Restart Now button to do that.
  5. Steam VR will not close on its own once you've done this though, so you will need to close that separately.

Plugins can also be downloaded and installed from third parties. One of the most useful ones, if you're making a multiplayer game, is the Advanced Sessions plugin by Joshua Statzer. This can be used to make it easier to set up multiplayer server browsers on Steam, for example. Download links can be found on the Epic forums by searching for UE4 Advanced Sessions. Once downloaded, you would need to create a Plugins folder in your project as follows:

After creating the folder, you would place the Plugins folder inside (make sure the editor is shut down), and then start the editor back up, to have the plugin loaded. Most external plugins will provide documentation or example maps that have the relevant Blueprint classes and explanations on how to use them.

Adding marketplace items to your project

The final thing I want to discuss in this chapter is using marketplace items. The marketplace includes a lot of great assets you can use to speed up your prototype and development process. Why reinvent the wheel if you can save time and money? In addition to 3D models and materials, the marketplace is a good place to find Blueprint assets that give you a launching point for functionality in your game by providing things such as inventory systems or role playing game stat elements.

For this project, we will be downloading and installing one of the free packs provided by Epic, the Animation Starter Pack. It has weapon-oriented animations that we will be using in Chapter 5, Animation Blueprints, as we get into that topic. Let's follow these steps to download the pack:

  1. Head back to the Epic Games launcher and search the marketplace for the Animation Starter Pack:
  1. Add it to your cart and go through the checkout process, and the pack will appear in your Library tab in the Vault section underneath the My Projects section:
  1. Click Add To Project, then select our AwesomeGame project. Once it's finished, you'll be able to see the folder in the Content Browser:

And that's it! Take a minute to browse the marketplace, since Epic has provided a lot of free content to start with, and some of the other content available there will save you a lot of development time and headaches.

Summary

In this chapter, we've downloaded and installed the Unreal Engine, and we've taken a look at the templates we can use to get a headstart on our project's development. We've broken down the editor panel by panel to get familiar with how everything is organized, and customized it using the editor preferences. Finally, we've seen how to use plugins and marketplace items to expand on the editor's capabilities and further simplify our own project's development.

As with any complex piece of software, the UE has a lot of systems that you will need to be familiar with in order to make full use of it. In the upcoming chapters, we will be going through most of the major ones, so you will be able to get a well-rounded crash course and know where to go to find any additional information you need.

First, we will be discussing Blueprints, a great alternative to traditional programming. It is easily possible to create entire games using Blueprints alone, without ever having to touch a line of code.

Having said that, we will also have a quick lesson on adding C++ to a Blueprint project to extend our Blueprint functionality.

We will also cover other major systems, such as using UMG to create menus and HUDs, animation Blueprints to control our character, and using replication to create multiplayer games.

Finally, we will talk about the final steps of a project, covering optimization, testing, and deployment.

Let's get started!

Left arrow icon Right arrow icon
Download code icon Download Code

Key benefits

  • Learn the fundamentals of Unreal Engine such as project templates, Blueprints, and C++
  • Use replication to create multiplayer games
  • Build dynamic game elements using Animation Blueprints and behaviour trees

Description

Unreal Engine is a popular game engine used by developers for building high-end 2D and 3D games. This book is a practical guide designed to help you get started with Unreal Engine 4 and confidently develop interactive games. You’ll begin with a quick introduction to the Unreal Engine 4 (UE4) ecosystem. Next, you’ll learn how to create Blueprints and C++ code to define your game's functionality. As you progress, you’ll cover the core systems of UE4 such as Unreal Motion Graphics (UMG), Animation Blueprints, and behaviour trees to further build on your game development knowledge. The concluding chapters will then help you learn how to use replication to create multiplayer games. By the end of this book, you will be well-versed with UE4 and have developed the skills you need to use the framework for developing and deploying robust and intuitive games.

Who is this book for?

You will find this book useful if you already have some game development experience or are a Unity user who wants to get started with UE4. Knowledge of basic object-oriented programming topics such as variables, functions, and classes is assumed.

What you will learn

  • Learn how to use project templates for your games
  • Create custom Blueprints and C++ classes and extend from Epic s base classes
  • Use Unreal Motion Graphics (UMG) to create menus and Heads-up Displays (HUDs) for your game
  • Develop more dynamic characters using Animation Blueprints
  • Understand how to create complex AI with behavior trees
  • Optimize, test, and deploy a UE4 project

Product Details

Country selected
Publication date, Length, Edition, Language, ISBN-13
Publication date : May 31, 2019
Length: 202 pages
Edition : 1st
Language : English
ISBN-13 : 9781789950687
Vendor :
Epic Games
Languages :
Tools :

What do you get with a Packt Subscription?

Free for first 7 days. $19.99 p/m after that. Cancel any time!
Product feature icon Unlimited ad-free access to the largest independent learning library in tech. Access this title and thousands more!
Product feature icon 50+ new titles added per month, including many first-to-market concepts and exclusive early access to books as they are being written.
Product feature icon Innovative learning tools, including AI book assistants, code context explainers, and text-to-speech.
Product feature icon Thousands of reference materials covering every tech concept you need to stay up to date.
Subscribe now
View plans & pricing

Product Details

Publication date : May 31, 2019
Length: 202 pages
Edition : 1st
Language : English
ISBN-13 : 9781789950687
Vendor :
Epic Games
Languages :
Tools :

Packt Subscriptions

See our plans and pricing
Modal Close icon
$19.99 billed monthly
Feature tick icon Unlimited access to Packt's library of 7,000+ practical books and videos
Feature tick icon Constantly refreshed with 50+ new titles a month
Feature tick icon Exclusive Early access to books as they're written
Feature tick icon Solve problems while you work with advanced search and reference features
Feature tick icon Offline reading on the mobile app
Feature tick icon Simple pricing, no contract
$199.99 billed annually
Feature tick icon Unlimited access to Packt's library of 7,000+ practical books and videos
Feature tick icon Constantly refreshed with 50+ new titles a month
Feature tick icon Exclusive Early access to books as they're written
Feature tick icon Solve problems while you work with advanced search and reference features
Feature tick icon Offline reading on the mobile app
Feature tick icon Choose a DRM-free eBook or Video every month to keep
Feature tick icon PLUS own as many other DRM-free eBooks or Videos as you like for just $5 each
Feature tick icon Exclusive print discounts
$279.99 billed in 18 months
Feature tick icon Unlimited access to Packt's library of 7,000+ practical books and videos
Feature tick icon Constantly refreshed with 50+ new titles a month
Feature tick icon Exclusive Early access to books as they're written
Feature tick icon Solve problems while you work with advanced search and reference features
Feature tick icon Offline reading on the mobile app
Feature tick icon Choose a DRM-free eBook or Video every month to keep
Feature tick icon PLUS own as many other DRM-free eBooks or Videos as you like for just $5 each
Feature tick icon Exclusive print discounts

Frequently bought together


Stars icon
Total $ 162.97
Unreal Engine 4 Shaders and Effects Cookbook
$69.99
Blueprints Visual Scripting for Unreal Engine
$65.99
Unreal Engine 4 Game Development Quick Start Guide
$26.99
Total $ 162.97 Stars icon
Banner background image

Table of Contents

9 Chapters
Introduction to Unreal Engine 4 Chevron down icon Chevron up icon
Programming Using Blueprints Chevron down icon Chevron up icon
Adding C++ to a Blueprint Project Chevron down icon Chevron up icon
Creating HUDs and Menus Using UMG Chevron down icon Chevron up icon
Animation Blueprints Chevron down icon Chevron up icon
AI with Behavior Tree and Blackboard Chevron down icon Chevron up icon
Multiplayer Games Chevron down icon Chevron up icon
Optimization, Testing, and Packaging Chevron down icon Chevron up icon
Another Book You May Enjoy Chevron down icon Chevron up icon

Customer reviews

Top Reviews
Rating distribution
Full star icon Full star icon Full star icon Full star icon Empty star icon 4
(6 Ratings)
5 star 50%
4 star 33.3%
3 star 0%
2 star 0%
1 star 16.7%
Filter icon Filter
Top Reviews

Filter reviews by




cybereality Aug 31, 2019
Full star icon Full star icon Full star icon Full star icon Full star icon 5
Rachel Cordone’s Unreal Engine 4 Game Development Quick Start Guide is the perfect book for people with some programming chops, or users of other engines (like Unity), that want to get up to speed quickly with Unreal. I really liked how the author does not waste time explaining basic things (like what functions or variables are) and jumps to the practical steps for getting things working. Unreal experience is not required at all, though you should have some foundation of how programming works to get the most out of the text.Most of the book is using Blueprints, the built-in visual scripting language of UE4. I’m a huge fan of Blueprints, and visual scripting in general, and you can accomplish many things, even a whole game, without touching C++. However, Rachel does show how to use C++ and interface with Blueprints code (very handy). Within the book, the author explains each step along the way to accomplish various things, along with screenshots of the Blueprints, making everything easy to follow.Some of the topics covered include: the basics of navigating the editor, using variables, functions, events, and creating a Blueprint from scratch. Adding C++ to a Blueprint project. Creating menus and HUDs with UMG, animation, scripting AI, multiplayer, and optimization. Definitely not an exhaustive list, but a good range of information to get a feel for how powerful Unreal is and how to quickly start working with it.So far, I’ve only read maybe a couple other Unreal books, but I think I can say this is the best I’ve seen. While some other books are longer and more in depth, as this one only clocks in at just under 200 pages, I feel like the brevity helps keep things focused. While you’re not creating Grand Theft Auto here, the simple demo built in the book is functional and teaches the basics of how you would make a game in Unreal.This is a case where the title of the book is very apt and honest. This is a “quick start” guide for game developers not familiar with Unreal Engine 4, but maybe that have experience with Unity or some other engine or framework. I think if you are a complete beginner, you might want to read up on basic programming concepts first, though the book is simple enough you could probably just jump in if you really wanted. For people with experience elsewhere, this is perfect to get up to speed with Unreal fast. I can’t recommend this book enough.
Amazon Verified review Amazon
stacie Feb 09, 2021
Full star icon Full star icon Full star icon Full star icon Full star icon 5
My son asked for theirs for Xmas and he needed it for school
Amazon Verified review Amazon
Dr. Glen V Apr 02, 2022
Full star icon Full star icon Full star icon Full star icon Full star icon 5
I went from start to finish on this book and feel more than comfortable with the basics of this platform. If I can do it, so can journalists.
Amazon Verified review Amazon
J. Bond Apr 07, 2021
Full star icon Full star icon Full star icon Full star icon Empty star icon 4
Having read this, and followed it cover to cover, I have to say it did boot strap my thinking and jobbing knowledge around the engine. However, the BOLD and then Courier and then BOLD text style - the literal flow through the instructive steps to follow - was actually quite annoying.The reason for this annoyance is that in some instructions the BOLD text will be the source of an action, in the next line the BOLD will be the target, rather than consistently keeping the BOLD as either sources or targets.And then the navigation steps "in the menu"... "in the context browser"... in the whatever... sometimes these are a little random, the best example I can pick out is around page 89 where you're being introduced to HUD widgets... "Click on the BLUEPRINTS button, and then Click on OPEN LEVEL BLUEPRINT undewrneath"... I literally sat for minutes staring at this, it's a prime example... We've not been told what "BLUEPRINT" source button and never heard of the OPEN LEVEL BLUEPRINT button before.Where was this, well it's in the main menu of the main level editor, the text could have said this, instead it's just this throw away "Click on the BLUEPRINTS button"... where it's been training us over and over for near ehough the prior 88 pages to use the Content Browser BP area as "BLUEPRINTS".It's just frustrating to find your learning derailed by this lack of clarity, the writer knows their stuff, they are clearly extremely familiar with the interface, and in the first chapters whenever some new UI element of the engine editors is introduced they throw in a screen shot, but that fades as the text progresses.It's not a deal breaker, this is a good book, but like with all good things you pick out what stops them being great.I'm up, I'm running, this book helped, it is a good bootstrapper for the engine and editor style.
Amazon Verified review Amazon
Cesar Vidal Romero Jul 11, 2020
Full star icon Full star icon Full star icon Full star icon Empty star icon 4
Es bueno pero el contenido lo puedes encontrar en los cursos en linea de Unreal Engine
Amazon Verified review Amazon
Get free access to Packt library with over 7500+ books and video courses for 7 days!
Start Free Trial

FAQs

What is included in a Packt subscription? Chevron down icon Chevron up icon

A subscription provides you with full access to view all Packt and licnesed content online, this includes exclusive access to Early Access titles. Depending on the tier chosen you can also earn credits and discounts to use for owning content

How can I cancel my subscription? Chevron down icon Chevron up icon

To cancel your subscription with us simply go to the account page - found in the top right of the page or at https://subscription.packtpub.com/my-account/subscription - From here you will see the ‘cancel subscription’ button in the grey box with your subscription information in.

What are credits? Chevron down icon Chevron up icon

Credits can be earned from reading 40 section of any title within the payment cycle - a month starting from the day of subscription payment. You also earn a Credit every month if you subscribe to our annual or 18 month plans. Credits can be used to buy books DRM free, the same way that you would pay for a book. Your credits can be found in the subscription homepage - subscription.packtpub.com - clicking on ‘the my’ library dropdown and selecting ‘credits’.

What happens if an Early Access Course is cancelled? Chevron down icon Chevron up icon

Projects are rarely cancelled, but sometimes it's unavoidable. If an Early Access course is cancelled or excessively delayed, you can exchange your purchase for another course. For further details, please contact us here.

Where can I send feedback about an Early Access title? Chevron down icon Chevron up icon

If you have any feedback about the product you're reading, or Early Access in general, then please fill out a contact form here and we'll make sure the feedback gets to the right team. 

Can I download the code files for Early Access titles? Chevron down icon Chevron up icon

We try to ensure that all books in Early Access have code available to use, download, and fork on GitHub. This helps us be more agile in the development of the book, and helps keep the often changing code base of new versions and new technologies as up to date as possible. Unfortunately, however, there will be rare cases when it is not possible for us to have downloadable code samples available until publication.

When we publish the book, the code files will also be available to download from the Packt website.

How accurate is the publication date? Chevron down icon Chevron up icon

The publication date is as accurate as we can be at any point in the project. Unfortunately, delays can happen. Often those delays are out of our control, such as changes to the technology code base or delays in the tech release. We do our best to give you an accurate estimate of the publication date at any given time, and as more chapters are delivered, the more accurate the delivery date will become.

How will I know when new chapters are ready? Chevron down icon Chevron up icon

We'll let you know every time there has been an update to a course that you've bought in Early Access. You'll get an email to let you know there has been a new chapter, or a change to a previous chapter. The new chapters are automatically added to your account, so you can also check back there any time you're ready and download or read them online.

I am a Packt subscriber, do I get Early Access? Chevron down icon Chevron up icon

Yes, all Early Access content is fully available through your subscription. You will need to have a paid for or active trial subscription in order to access all titles.

How is Early Access delivered? Chevron down icon Chevron up icon

Early Access is currently only available as a PDF or through our online reader. As we make changes or add new chapters, the files in your Packt account will be updated so you can download them again or view them online immediately.

How do I buy Early Access content? Chevron down icon Chevron up icon

Early Access is a way of us getting our content to you quicker, but the method of buying the Early Access course is still the same. Just find the course you want to buy, go through the check-out steps, and you’ll get a confirmation email from us with information and a link to the relevant Early Access courses.

What is Early Access? Chevron down icon Chevron up icon

Keeping up to date with the latest technology is difficult; new versions, new frameworks, new techniques. This feature gives you a head-start to our content, as it's being created. With Early Access you'll receive each chapter as it's written, and get regular updates throughout the product's development, as well as the final course as soon as it's ready.We created Early Access as a means of giving you the information you need, as soon as it's available. As we go through the process of developing a course, 99% of it can be ready but we can't publish until that last 1% falls in to place. Early Access helps to unlock the potential of our content early, to help you start your learning when you need it most. You not only get access to every chapter as it's delivered, edited, and updated, but you'll also get the finalized, DRM-free product to download in any format you want when it's published. As a member of Packt, you'll also be eligible for our exclusive offers, including a free course every day, and discounts on new and popular titles.