In this chapter, we will outline basic recipes for getting started in UE4 game development, and the basic tools that we use for creating the code that makes your game. This will include the following recipes:
Installing Visual Studio
Creating and building your first C++ project in Visual Studio
Changing the code font and color in Visual Studio
Extension – changing the color theme in Visual Studio
Formatting your code (Autocomplete settings) in Visual Studio
Shortcut keys in Visual Studio
Extended mouse usage in Visual Studio
UE4 – installation
UE4 – first project
UE4 – creating your first level
UE4 – logging with
UE_LOG
UE4 – making an
FString
fromFStrings
and other variablesProject management on GitHub – getting your Source Control
Project management on GitHub – using the Issue Tracker
Project management on VisualStudio.com – managing the tasks in your project
Project management on VisualStudio.com – constructing user stories and tasks
Creating a game is an elaborate task that will require a combination of assets and code. To create assets and code, we'll need some pretty advanced tools including art tools, sound tools, level editing tools, and code editing tools. In this chapter, we'll discuss finding suitable tools for asset creation and coding. Assets include any visual artwork (2D sprites, 3D models), audio (music and sound effects), and game levels. Code is the text (usually C++) that instructs the computer on how to tie these assets together to make a game world and level, and how to make that game world "play." There are dozens of very good tools for each task; we will explore a couple of each, and make some recommendations. Game editing tools, especially, are hefty programs that require a powerful CPU and lots of memory, and very good, ideal GPUs for good performance.
Protecting your assets and work is also a necessary practice. We'll explore and describe source control, which is how you back up your work on a remote server. An introduction to Unreal Engine 4 Programming is also included, along with exploring basic logging functions and library use. Significant planning is also required to get the tasks done, so we'll use a task-planner software package to do so.
Visual Studio is an essential package for code editing when editing the C++ code for your UE4 game.
We're going to set up a C++ coding environment to build our UE4 applications. We'll download Visual Studio 2015, install it, and set it up for UE4 C++ coding.
Begin by visiting https://www.visualstudio.com/en-us/products/visual-studio-community-vs.aspx. Click on Download Community 2015. This downloads the ~200 KB loader/installer.
Tip
You can compare editions of Visual Studio at https://www.visualstudio.com/en-us/products/compare-visual-studio-2015-products-vs.aspx. The Community Edition of Visual Studio is fully adequate for UE4 development purposes in this book.
Launch the installer, and select the components of Visual Studio 2015 that you want to add to your PC. Keep in mind that the more features you select, the larger your installation will be.
The preceding screenshot shows a recommended minimum installation, with Common Tools for Visual C++ 2015, Git for Windows, and GitHub Extension for Visual Studio all checked. We will use the Git for Windows features in a later section in this chapter.
After you have selected the tools you'd like to add onto Visual Studio, click the Next button. The installer tool will download the required components, and continue setup. Installation should take 20-40 minutes, depending on your option selections and connection speed.
After you download and install Visual Studio 2015, launch it. You will be presented with a Sign in dialog box.
You can Sign in with your Microsoft account (the one you use to sign into Windows 10), or Sign up for a new account. After you've signed in or signed up, you will be able to sign into Visual Studio itself. It may seem odd to sign into a desktop code editing program, but your sign-in will be used for source control commits to your repositories. On first signing in to Visual Studio, you can select (one time only) a unique URL for your source code repositories as hosted on Visualstudio.com.
In order to compile and run code from Visual Studio, it must be done from within a project.
In this recipe, we will identify how to create an actual executable running program from Visual Studio. We will do so by creating a project in Visual Studio to host, organize, and compile the code.
In Visual Studio, each group of code is contained within something called a
Project. A Project is a buildable conglomerate of code and assets that produce either an executable (.exe
runnable) or a library (.lib
, or .dll
). A group of Projects can be collected together into something called a
Solution. Let's start by constructing a Visual Studio Solution and Project for a console application, followed by constructing a UE4 sample Project and Solution.
Open Visual Studio, and go to File | New | Project...
You will see a dialog as follows:
Select Win32 in the pane on the left-hand side. In the right-hand pane, hit Win32 Console Application. Name your project in the lower box, then hit OK.
In the next dialog box, we specify the properties of our console application. Read the first dialog box and simply click Next. Then, in the Application Settings dialog, choose the Console Application bullet, then under Additional options, choose Empty project. You can leave Security Development Lifecycle (SDL) checks unchecked.
Once the application wizard completes, you will have created your first project. Both a Solution and a Project are created. To see these, you need Solution Explorer. To ensure that Solution Explorer is showing, go to View | Solution Explorer (or press Ctrl + Alt + L). Solution Explorer is a window that usually appears docked on the left-hand side or right-hand side of the main editor window as shown in the following screenshot:
Solution Explorer also displays all the files that are part of the project. Using Solution Explorer, we will also add a code file into the editor. Right click on your Project
FirstProject
, and select Add | New Item…In the next dialog, simply select C++ File (.cpp), and give the file any name you'd like. I called mine
Main.cpp
.Once you have added the file, it will appear in Solution Explorer under your
FirstProject
's source file filter. As your Project grows, more and more files are going to be added to your project. You can compile and run your first C++ program using the following text:#include<stdio.h> int main() { puts("Welcome to Visual Studio 2015 Community Edition!"); }
Press Ctrl + Shift + B to build the project, then Ctrl + F5 to run the project.
Your executable will be created, and you will see a small black window with the results of your program's run:
Building an executable involves translating your C++ code from text language to a binary file. Running the file runs your game program, which is just the code text that occurs in the main()
function between {
and }
.
Build configurations are styles of build that we should discuss them here. There are at least two important build configurations you should know about: Debug and Release. The Build configuration selected is at the top of the editor, just below the toolbar in the default position.

Depending on which configuration you select, different compiler options are used. A Debug configuration typically includes extensive debug information in the build as well as turning off optimizations to speed up compilation. Release builds are often optimized (either for size or for speed), take a bit longer to build, and result in smaller or faster executables. Behavior stepping through with the debugger is often better in the Debug mode than the Release mode.
Customizing the font and color in Visual Studio is not only extremely flexible, you will also find it very necessary if your monitor resolution is quite high or quite low.
Visual Studio is a highly customizable code editing tool. You might find the default fonts too small for your screen. You may want to change your code's font size and color. Or you may want to completely customize the coloration of keywords and the text background colors. The Fonts and Colors dialog box, which we'll show you how to use in this section, allows you to completely customize every aspect of the code editor's font and color.

Text Editor/Plain Text describes the font and size used for all code text within the regular code editor. If you change the size of the font, the size changes for any text entered into the coding window (for all languages, including C, C++, C#, and others).

The color (foreground and background) is completely customizable for each item. Try this for the Text Editor/Keyword setting (affects all languages), or for C++-specific items, such as Text Editor/C++ Functions. Click OK, and you will see the changed color of the item reflected in the code editor.
You may also want to configure the font size of the Output Window—choose Show settings for => Output Window as seen in the following screenshot:

The Output Window is the little window at the bottom of the editor that displays build results and compiler errors.
Tip
You can't save-out (export) or bring in (import) your changes to the Fonts and Colors dialog. But you can use something called the Visual Studio Theme Editor Extension, learn more refer to Extension – changing the color theme in Visual Studio to export and import customized color themes.
For this reason, you may want to avoid changing font colors from this dialog. You must use this dialog to change the font and font-size, however, for any setting (at the time of writing).
The Fonts and Colors dialog simply changes the appearance of code in the text editor as well as for other windows such as the output window. It is very useful for making your coding environment more comfortable.
Once you have customized your settings, you'll find that you may want to save your customized Fonts and Colors settings for others to use, or to put into another installation of Visual Studio, which you have on another machine. Unfortunately, by default, you won't be able to save-out your customized Fonts and Colors settings. You will need something called the Visual Studio Theme Editor extension to do so. We will explore this in the next recipe.
By default, you cannot save the changes you make to the font colors and background settings that you make in the Fonts and Colors dialog. To fix this issue, Visual Studio 2015 has a feature called Themes. If you go to Tools | Options | Environment | General, you can change the theme to one of the three pre-installed stock themes (Light, Blue, and Dark).

A different theme completely changes the look of Visual Studio—from the colors of the title bars to the background color of the text editor window.
You can also customize the theme of Visual Studio completely, but you'll need an extension to do so. Extensions are little programs that can be installed into Visual Studio to modify its behavior.
By default, your customized color settings cannot be saved or reloaded into another Visual Studio installation without the extension. With the extension, you will also be able to save your own color theme to share with others. You can also load the color settings made by another person or by yourself into a fresh copy of Visual Studio.
Go to Tools | Extensions and Updates…
From the dialog that appears, choose Online in the panel on the left-hand side. Start typing
Theme Editor
into the search box at the right. The Visual Studio 2015 Color Theme Editor dialog will pop up in your search results.Click the small Download button in the top right-hand corner of the entry. Click through the installation dialog prompts, allowing the plugin to install. After installation, Visual Studio will prompt you to restart.
Tip
Alternatively, visit https://visualstudiogallery.msdn.microsoft.com/6f4b51b6-5c6b-4a81-9cb5-f2daa560430b and download/install the extension by double-clicking the
.vsix
that comes from your browser.Click Restart Now to ensure the plugin is loaded.
After restarting, go to Tools | Customize Colors to open the Color Themes editor page.
From the Color Themes dialog that appears, click on the little palette-shaped icon on the upper-right corner of the theme that you want to use as your base or starting theme (I've clicked on the palette for the Light theme here, as you can see in the following screenshot).
A copy of the theme will appear in the Custom Themes section in the lower part of the Color Themes window. Click on Edit Theme to modify the theme. When you are editing the theme, you can change everything from the font text color to the C++ keyword color.
The main area you are interested in is the C++ Text Editor section. To gain access to all the C++ Text Editor options, be sure to select the Show All Elements option at the top of the Theme Editor window, as shown in the following screenshot:
Note that, while most of the settings you are interested in will be under Text Editor | C/C++, some will not have that C++ subheading. For example, the setting for the main/plain text inside the editor window (for all languages) is under Text Editor | Plain Text (without the C++ subheading).
Select the theme to use from Tools | Options | Environment | General. Any new themes you have created will appear automatically in the drop-down menu.
Code-writing formatting with Visual Studio is a pleasure. In this recipe, we'll discuss how to control the way Visual Studio lays out the text of your code.
Code has to be formatted correctly. You and your co-programmers will be able to better understand, grok, and keep your code bug-free if it is consistently formatted. This is why Visual Studio includes a number of auto-formatting tools inside the editor.
Go to Tools | Options | Text Editor | C/C++. This dialog displays a window that allows you to toggle Automatic brace completion.
Automatic brace completion is the feature where, when you type
{
, a corresponding}
is automatically typed for you. This feature may irk you if you don't like the text editor inserting characters for you unexpectedly.You generally want Auto list members on, as that displays a nice dialog with the complete names of data members listed for you as soon as you start typing. This makes it easy to remember variable names, so you don't have to memorize them:
Some more autocomplete behavior options are located under Text Editor | C/C++ | Formatting:
Autoformat section: Highlight a section of text and select Edit | Advanced | Format Selection (Ctrl + K, Ctrl + F).
Shortcut keys really save you time when coding. Knowing shortcut keys offhand is always good.
There are a number of shortcut keys that will make coding and project navigation much faster and more efficient for you. In this recipe, we describe how to use some of the common shortcut keys that will really enhance your coding speed.
The following are some very useful keyboard shortcuts for you to try:
Click on one page of the code, then click somewhere else, at least 10 lines of code away. Now press Ctrl + - [navigate backwards]. Navigation through different pages of source code (the last place you were at, and the place you are at now) is done by pressing Ctrl + - and Ctrl + Shift + - respectively.
Tip
Warping around in the text editor using Ctrl + -. The cursor will jump back to the last location it was in that is more than 10 lines of code away, even if the last location was in a separate file.
Say, for example, you're editing code in one place, and you want to go back to the place you've just been (or go back to the section in the code you came from). Simply press Ctrl + -, and that will warp you back to the location in the code you were at last. To warp forward to the location you were at before you pressed Ctrl + -, press Ctrl + Shift + -. To warp back, the previous location should be more than 10 lines away, or in a different file. These correspond to the Forward and Back menu buttons in the toolbar:
Press Ctrl + W to highlight a single word.
Press and hold Ctrl + Shift + right arrow (or left arrow) (not Shift + right arrow) just to move to the right and left of the cursor, selecting entire words.
Press Ctrl + C to copy text, Ctrl + X to cut text, and Ctrl + V to paste text.
Clipboard ring: The clipboard ring is a kind of a reference to the fact that Visual Studio maintains a stack of the last copy operations. By pressing Ctrl + C, you push the text that you are copying into an effective stack. Pressing Ctrl + C a second time on different text pushes that text into the Clipboard Stack. For example, in the following diagram, we pressed Ctrl + C on the word cyclic first, then Ctrl + C on the word paste afterwards.
As you know, pressing Ctrl + V pastes the top item in the stack. Pressing Ctrl + Shift + V accesses a very long history of all the items ever copied in that session, that is, items underneath the top item in the stack. After you exhaust the list of items, the list wraps back to the top item in the stack. This is an odd feature, but you may find it useful occasionally.
Ctrl + M, Ctrl + M collapses a code section.
The mouse is a pretty handy tool for selecting text. In this section, we'll highlight how to use the mouse in an advanced way for quick edits to your code's text.
Hold down the Ctrl key while clicking to select an entire word.
Hold down the Alt key to select a box of text (Alt + Left Click + Drag).
You can then either cut, copy, or overwrite the box-shaped text area.
There are a number of steps to follow to install and configure UE4 properly. In this recipe, we'll walk through the correct installation and setup of the engine.
UE4 takes up quite a few GB of space, so you should have at least 20 GB or so free for the installation on the target drive.
Visit unrealengine.com and download it. Sign up for an account if required.
Run the installer for the Epic Games Launcher Program by double-clicking the
EpicGamesLauncherInstaller-x.x.x-xxx.msi
installer. Install it in the default location.Once the Epic Games Launcher program is installed, open it by double-clicking its icon on your desktop or in the Start menu.
Browse the start page and take a look around. Eventually, you will need to install an engine. Click on the large orange Install Engine button on the top-left side from the UE4 tab, as shown in the following image:
A pop-up dialog will show the components that can be installed. Select the components you'd like to install. The recommendation is to begin by installing the first three components (Core Components, Starter Content, and Templates and Feature Packs). You can leave out the Editor symbols for debugging component if you will not be using it.
After the engine has installed, the Install Engine button will change to a Launch Engine button.
The Epic Games Launcher is the program that you need to start up the engine itself. It keeps a copy of all your projects and libraries in the Library tab.
Setting up a Project within UE4 takes a number of steps. It is important to get your options correct so that you can have the setup that you like, so carefully follow this recipe when constructing your first project.
Each project that you create within UE4 takes up at least 1 GB of space or so, so you should decide whether you want your created projects on the same target drive, or on an external or separate HDD.
From the Epic Games Launcher, click on the Launch Unreal Engine 4.11.2 button. Once you are inside the engine, an option to create a new project or load an existing one will presents itself.
Select the New Project tab.
Decide whether you will be using C++ to code your project, or Blueprints exclusively.
If using Blueprints exclusively, make your selection of a template to use from the Blueprint tab.
If using C++ in addition to Blueprints to construct your project, select the project template to construct your project based on the C++ tab.
If you're not sure what template to base your code on, BASIC Code is an excellent starting point for any C++ project (or Blank for a Blueprint-exclusive project).
Take a look at the three icons that appear beneath the template listing. There are three options here to configure:
You can choose to target Desktop or Mobile applications.
You have an option to alter the quality settings (the picture of a plant with magic). But you probably don't need to alter these. The quality settings are reconfigurable under Engine | Engine Scalability Settings anyway.
The last option is whether to include Starter Content with the project or not. You can probably use the Starter Content package in your project. It has some excellent materials and textures available within it.
Select the drive and folder in which you will save your project. Keep in mind that each project is roughly 1 GB in size, and you will need at least that much space on the destination drive.
Name your project. Preferably name it something unique and specific to what you are planning on creating.
Hit Create. Both the UE4 Editor and Visual Studio 2015 windows should pop up, enabling you to edit your project.
Creating levels in UE4 is easy and facilitated by a great UI all around. In this recipe, we'll outline basic editor use and describe how to construct your first level once you have your first project launched.
Complete the previous recipe, UE4 – First Project. Once you have a project constructed, we can proceed with creating a level.
The default level that gets set up when you start a new project will contain some default geometry and scenery. You don't need to start with this starter stuff, however. If you don't want to build from it, you can delete it, or create a new level.
To create a new level, click File | New Level… and select to create a level with a background sky (Default), or without a background sky (Empty Level).
If you loaded the Starter Content on your project's creation (or some other content), then you can use the Content Browser to pull content into your level. Simply drag and drop instances of your content from the Content Browser into the level, save, and launch them.
Add some geometry to your level using the Modes panel (Window | Modes). Be sure to click on the picture of a light bulb and cube to access the placeable geometry. You can also add lights via the Modes tab by clicking on the Lights subtab on the left-hand side of the Modes tab.
Logging is extremely important for outputting internal game data. Using log tools lets you print information into a handy little Output Log window in the UE4 editor.
When coding, we may sometimes want to send some debug information out to the UE log window. This is possible using the UE_LOG
macro. Log messages are an extremely important and convenient way to keep track of information in your program as you are developing it.
The UE_LOG
macro accepts a minimum of three parameters:
The Log category (we used
LogTemp
here to denote a log message in a temporary log)The Log level (we used a warning here to denote a log message printed in yellow warning text)
A string for the actual text of the log message itself
Do not forget the TEXT()
macro around your log message text! It promotes the enclosed text to Unicode (it prepends an L) when the compiler is set to run with Unicode on.
UE_LOG
also accepts a variable number of arguments, just like printf()
from the C programming language.
int intVar = 5;
float floatVar = 3.7f;
FString fstringVar = "an fstring variable";
UE_LOG(LogTemp, Warning, TEXT("Text, %d %f %s"), intVar, floatVar, *fstringVar );
There will be an asterisk *
just before FString
variables when using UE_LOG
to dereference the FString
to a regular C-style TCHAR
pointer.
Tip
TCHAR
is usually defined as a variable type where
, if Unicode is being used in the compile, the TCHAR
resolves to wchar_t
. If Unicode is off (compiler switch _UNICODE
not defined), then TCHAR
resolves to simply char.
Don't forget to clear your log messages after you no longer need them from the source!
When coding in UE4, you often want to construct a string from variables. This is pretty easy using the FString::Printf
or FString::Format
functions.
For this, you should have an existing project into which you can enter some UE4 C++ code. Putting variables into a string is possible via printing. It may be counterintuitive to print into a string, but you can't just concatenate variables together, and hope that they will automatically convert to string, as in some languages such as JavaScript.
Using
FString::Printf()
:Consider the variables you'd like printed into your string.
Open and take a look at a reference page of the
printf
format specifiers, such as http://en.cppreference.com/w/cpp/io/c/fprintf.Try code such as the following:
FString name = "Tim"; int32 mana = 450; FString string = FString::Printf( TEXT( "Name = %s Mana = %d" ), *name, mana );
Notice how the preceding code block uses the format specifiers precisely as the traditional
printf
function does. In the preceding example, we used%s
to place a string in the formatted string, and%d
to place an integer in the formatted string. Different format specifiers exist for different types of variables, and you should look them up on a site such as cppreference.com.Using
FString::Format()
. Write code in the following form:FString name = "Tim"; int32 mana = 450; TArray< FStringFormatArg > args; args.Add( FStringFormatArg( name ) ); args.Add( FStringFormatArg( mana ) ); FString string = FString::Format( TEXT( "Name = {0} Mana = {1}" ), args ); UE_LOG( LogTemp, Warning, TEXT( "Your string: %s" ), *string );
With
FString::Format()
, instead of using correct format specifiers, we use simple integers and aTArray
ofFStringFormatArg
instead. TheFstringFormatArg
helpsFString::Format()
deduce the type of variable to put in the string.
A very important thing to do for your project as you're developing it is to generate a timeline history as you're working. To do so, you need to back up your source code periodically. A great tool for doing so is Git. Git allows you to park changes (commits) into a repository online on a remote server so that your code's development history is documented and preserved on that remote server. If your local copy gets damaged somehow, you can always recover from the online backups. This timeline-history of your codebase's development is called Source Control.
There are a couple of free services that offer online source backups. Some of the free alternatives for storing your data include:
Visualstudio.com: limited/private sharing of your repository
github.com: unlimited public sharing of your repositories
Visualstudio.com is great for when you want some privacy for your project for free, while GitHub is great when you want to share your project with lots of users for free. Visualstudio.com also offers some very good workboarding and planning features, which we will use later in this text (GitHub also offers a competing Issue Tracker, which we'll discuss later on as well).
The website you choose depends mostly on how you plan on sharing your code. In this text, we will use GitHub for source code storage, since we need to share our code with a large number of users (you!)
Sign up for a GitHub account at https://github.com. Sign into your GitHub account using the Team Explorer menu (View | Team Explorer).
Once you have the Team Explorer open, you can sign into your GitHub account using the button that appears in the Team Explorer window.
After you've signed in, you should gain the capability to Clone and Create repositories. These options will appear right underneath the GitHub menu in the Team Explorer.
From here, we want to create our first repository. Hit the Create button, and name your repository in the window that comes up.
Now you have a repository! The repository is initialized on GitHub. We just have to put some code into it.
Open up the Epic Games Launcher, and create a project to put into the repository.
Open the C++ project in Visual Studio 2015, and right-click on Solution. Select Add Solution to Source Control from the context menu that appears. The dialog that appears will ask whether you want to use Git or TFVC.
After you add Git Source Control to the project, take a look at Team Explorer again. From that window, you should enter a brief message, then click on the Commit button.
Git repositories are important for backing up copies of your code and project files as your project evolves. There are many commands within Git to browse the project history (try the Git GUI tool), see what changes you've made since the last commit (git diff
), or move backward and forward through the Git history (git checkout commit-hash-id
).
Keeping track of you project's progress, features, and bugs is extremely important. The GitHub Issue Tracker will enable you to do this.
Keeping track of your project's planned features and running issues is important. GitHub's Issue Tracker can be used to create lists of features you'd like to add to your project as well as bugs you need to fix at some time in the future.
To add an issue to your Issue Tracker, first select the repository that you'd like to edit by going to the front page of GitHub and selecting the Repositories tab:
From your repository's homepage, select the Issues tab under your repository. To add an issue to track, click the New Issue button in the lower-right corner of the screen, as seen in the following screenshot:
When adding your issue, it is good practice to detail it as much as possible. Including screenshots and diagrams in the features or bugs you post is highly recommended, as it documents the issue much better, and parks important information and a good description into your Issue Tracker. Dragging and dropping images into the text editor window automatically uploads a copy of the image to GitHub's own cloud server, and the image will appear inline in the issue, as shown in the following screenshot:
The box into which you enter the description of your bug or feature supports Markdown. Markdown is a simplified HTML-like markup language that lets you quickly write HTML-like syntax with ease. Examples of some markdown syntax are as follows:
# headings ## sub-headings ### sub-sub-headings _italics_, __bold__, ___bold-italics___ [hyperlinks](http://towebsites.com/) code (indented by 4 spaces), preceded by a blank line * bulleted * lists - sub bullets - sub sub bullets >quotations
Tip
If you want to learn more about Markdown's syntax, check out https://daringfireball.net/projects/markdown/syntax.
You can further mark the issue as either a bug, enhancement (feature), or any other label you like. Customizing labels is possible via the Issues | Labels link:
From there, you can edit, change the color of, or delete your labels. I deleted all the stock labels, and replaced the word enhancement with
feature
, as seen in the following two screenshots:Once you've fully customized your labels, your GitHub Issue Tracker is much easier to navigate. Prioritize issues by tagging with the appropriate labels.
High-level management of your project is usually done using a planning tool. GitHub's Issue Tracker may meet your needs, but if you're looking for more, Microsoft's Visual Studio Team Services offers planning tools for Scrum and Kanban style programming assignment of tasks (Features, Bugs, and so on).
Using this tool is a great way to organize your tasks to make sure things get done on time, and to get used to an industrial-standard workflow. When you sign up for Visual Studio's Community Edition during setup, your account includes free use of these tools.
In this section, we'll describe how to use the Workboard feature on Visualstudio.com to plan a few simple tasks.
To create your own project Workboard, go to your account at Visualstudio.com. Log in, and then select the Overview tab. Under Recent projects & teams title, select the New link.
Add a Project name and Description to your project. After you've named your project (I've named mine
Workboards
), click on Create project. You will wait a second or two for project creation to complete, then hit the Navigate to project button in the next dialog.The next screen that is shown allows you to navigate to the Workboards area. Click on Manage Work.
The Manage Work screen is a Kanban styled (read: prioritized) task queue of things to do in your project. You can hit the New item button to add new items to your list of things to do.
Each item on your Board's backlog is called a User Story. A User Story is an Agile software development term, and each User Story is supposed to describe a need of a particular end user. For example, in the preceding User Story, the need is to have visual graphics, and the User Story describes that graphics (sprites) must be created to satisfy this user requirement.
User stories will often have a specific format:
For example:
Note
As a <player of the game> I want to <reorganize items> so that I can <set hotkeys to slots that I desire>.
On the Workboard, you'll have a bunch of user stories. I have placed a few user stories earlier so we can play with them.
Once your board is filled with user stories, they will all sit in the New vertical column. As you start work on or make progress on a particular User Story, you can drag it horizontally from New to Active, then finally to Resolved and Closed when the User Story is complete.

From the Scrum point of view, a User Story is grouping of tasks that need to be done. A group of user stories can be collected into a Feature, and a group of Features can be gathered together into what is called an Epic . VisualStudio.com organizes User Story creation very well so that it's easy to construct and plan the completion of any particular task (user story). In this recipe, we'll describe how to assemble and put together user stories.
Every item entered into VisualStudio.com's project management suite should always be a feature that somebody wants to be in the software. User story creation is a fun, easy, and exciting way to group together and mete out bunches of tasks to your programmers as work to be done. Log in to your VisualStudio.com account now, edit one of your projects, and begin using this feature.
From the VisualStudio.com Team Services landing page, navigate to the project into which you want to enter some new work to be done. All of your Projects can be found if you click on Browse under the Recent projects & teams heading.
Select the project that you want to work with and hit Navigate.
Tasks inside Visualstudio.com take place inside of one of the three categories of super task:
User Story
Features
Epics
Tip
User Stories, Features, and Epics are just organizational units for work. An Epic contains many Features. A Feature contains many User Stories, and a User Story contains many Tasks.
By default, Epics are not shown. You can display Epics by going to Settings (the gear icon on the right side of the screen). Then navigate to General | Backlogs. Under the section that says See only the backlogs your team manages, select to display all three flavors of Backlog: Epics, Features, and Stories.
There are now four navigation steps to perform before you can enter your first task (User Story) into the Backlog:
From the menu bar at the top, select WORK.
Then, in the submenu that appears on the WORK page, select Backlogs.
On the sidebar that appears, click on Stories.
From the panel on the right-hand side, select Board.
From the panel on the right-hand side, hit New item, and fill in the text for your new User Story item.
Click on the text of the User Story card, and fill in the fields for Assignee, the Iteration that it's a part of, Description, tags, and any other fields of the Details tab that you want to explore.
Next we break down the overall User Story into a series of achievable tasks. Hover over your new User Story item until the ellipsis (three dots…) appears. Click on the ellipsis, and select + Add Task.
List the details of completing the User Story in the series of Tasks.
Assign each Task to:
An Assignee
An Iteration
Continue adding Tasks to the project as the project develops features to complete and bugs to fix.
Epics contain a number of Features. Features contain a number of User Stories, and User Stories contain a number of Tasks and Tests.

All of these items are assignable to a User (an actual human), and to an Iteration (time period), for both assigning responsibility and scheduling a task. Once these are assigned, the task should appear in the Queries tab.
Tip
Detailed steps to download the code bundle are mentioned in the Preface of this book. Please have a look.
The code bundle for the book is also hosted on GitHub at https://github.com/PacktPublishing/Unreal-Engine-4-Scripting-with-CPlusPlus-Cookbook. We also have other code bundles from our rich catalog of books and videos available at https://github.com/PacktPublishing/. Check them out!