Learning Path: Platforming: Create 2D and 3D Platform Games
0.0 (0 ratings)
Instead of using a simple lifetime average, Udemy calculates a course's star rating by considering a number of different factors such as the number of ratings, the age of ratings, and the likelihood of fraudulent ratings.
3 students enrolled
Wishlisted Wishlist

Please confirm that you want to add Learning Path: Platforming: Create 2D and 3D Platform Games to your Wishlist.

Add to Wishlist

Learning Path: Platforming: Create 2D and 3D Platform Games

Create fun cross platform 2D and 3D platformer games with multiplayer support
0.0 (0 ratings)
Instead of using a simple lifetime average, Udemy calculates a course's star rating by considering a number of different factors such as the number of ratings, the age of ratings, and the likelihood of fraudulent ratings.
3 students enrolled
Created by Packt Publishing
Last updated 8/2017
Current price: $10 Original price: $200 Discount: 95% off
5 hours left at this price!
30-Day Money-Back Guarantee
  • 8 hours on-demand video
  • 1 Supplemental Resource
  • Full lifetime access
  • Access on mobile and TV
  • Certificate of Completion
What Will I Learn?
  • Learn to build dynamic website interfaces with new features in Bootstrap and SASS
  • Learn to incorporate custom fonts, font awesome icons, and chrome developer tools for your applications
  • Learn to structure your pages using Bootstrap grid system
  • Understand how to use card interface to recreate interfaces
  • Understand how to configure and get started with your own customized version of Bootstrap
  • Work with modular and customized blocks of content called “cards” to display various text and images
  • Design responsive and accessible tables, and create a refined and accessible user experience
  • Explore third-party integration to extend Bootstrap's component and visual structure through icons to complex form validation
View Curriculum
  • Working knowledge of C#
  • Basic understanding of Unreal Engine 4 using blueprints, C++, and basic Computer Science concepts

If you’re a developer or an enthusiast who wants to develop 2D and 3D platform games for the gamers out there, then this course is for you.

Platformers continue to remain the favorite of gamers. They involve players jumping on platforms and avoiding obstacles. In this course, we will give you a platform to start creating your own platformers.

In the first part, we will create a cross-platform C# engine that you can then use to create your own games, as well as a simple game that you can expand and improve upon. In the second part, we will focus on the C++ API of Unreal Engine. We will take you from a basic level of Unreal Engine 4 knowledge to being fluent and capable of navigating the Engine to build quality games using the C++ API. This course will help you create games which are easy to create but difficult to master.

Platforming: Create 2D and 3D Platform games provides a unique approach to learning to build platform games. We learn various techniques to build 2D and 3D games using C# and C++ API.
This course is a learner material and the curriculum is so planned to meet your learning needs. This course starts with the basics of game development that is creating 2D games using various techniques like designing, creating main scenes, creating enemies, making levels and creating other fun stuff.
Once we’ve prepared our first 2D game, we will start by more advanced game creation which is creation of 3D multiplayer platform games. We do this by creating characters and creating the main menu. We also look into the network game states for designing multiplayer games and finally we will look into the integration of our game.
By the end of the course, you’ll be ready to create your custom platform games instead of playing the boring ones out there.

About the Author

Amerigo Moscaroli is a Senior Software Developer at Mazooma Interactive. 

Paul Mauviel is a freelance contract consultant specializing in virtual reality, Unreal Engine, and containerized web application technology. His most recent work is DreamDesk , which is a Virtual Reality desktop application built in Unreal Engine 4; it stands out from the competition by allowing users to view any of their open windows in VR. Paul has also worked on multiple containerized application solutions for dynamic web application hosting and deployment.

Who is the target audience?
  • Developers and Enthusiasts who would like to develop their own game platforms.
Students Who Viewed This Course Also Viewed
Curriculum For This Course
53 Lectures
Creating a 2D Platformer
19 Lectures 02:40:40

This video provides an overview of the entire course.

Preview 03:02

In this video, we will design our game and obtain assets that we will need to create our game.
Designing the Game

In this video, you will learn about the game loop and begin to create our game flow.

The Game Loop

In this video, you will learn about the Farseer Physics system and implement the physics world.

Introduction to Farseer Physics

In this video, we will create the main scene for our game, which will control the elements for the game.

Creating the Main Scene

In this video, we will create the platforms that our characters will be standing on

Constructing the Platforms

In this video, we will create a base character class for our player and enemies.

Preview 12:33

In this video, we will create the Zippy character who jumps and runs.
Creating Our Main Character Zippy

In this video, we will add the controls for Zippy so we can make him move.

Controlling Zippy

In this video, we will create an enemy that our hero will need to defeat.
Creating an Enemy

In this video, we will add collectibles so that the player can increase their score.

Adding Collectibles

In this video, we will create a level class which can load data from a CSV file.
Preview 07:44

In this video, we will construct a level using the data we loaded in the CSV.
Constructing the Level from CSV

In this video, we will create a custom camera that follows the player as they progress through the level.

Moving the Camera

In this video, we will add win and lose conditions to our game.

Adding End Goals

In this video, we will look at why we need a level editor and how to accomplish this.

Theory – Creating a Level Editor

In this video, we will update our canvas class to allow for canvas ordering and we will create a UI canvas.

Preview 06:06

In this video, we will create the UI elements we’ll need for our game.

Creating UI Elements

In this video, we will create a main menu as well as add transitions between states.
Creating a Main Menu

Test your knowlege
1 question
Building a Multiplayer 3D Platformer
34 Lectures 05:09:17

This video provides an overview of the entire course.

Preview 04:35

Due to limitations both in sourcing and time, we’ve provided a set of assets for you to utilize while following along during this course.

Importing Project Assets

Since we’ll be supporting multiple characters to choose from within our game, we’ll need a base character class upon which we’ll build our various characters.

Creating the Base Character Class

Without animations, our characters look lifeless. This video will focus on adding and connecting our animations to our character class.
Creating the Character Animations

Unreal Engine uses a rigid object stack for handling the various operations required during networked play. This video dismantles and explains the core components of this stack.

Introduction to Property Replication in C++

To be able to affect the world across the network, Remote Procedure Calls RPCs must be used to execute code on the server from clients. This video focuses on using these RPCs to implement a collectibles system that replicates over the network.
Pickups – Health and Coins

We want our characters to be able to collect and use various Powerups while in a networked game. This video focuses on implementing this feature.


All games use a state manager for keeping track of where within the application the user is in. This video focuses on creating the object that will do this.
Preview 10:25

The game we’re building will need a landing menu, a multiplayer menu, and loading screens for handling time-consuming operations.

Building the Main Menu, Multiplayer Menu, and Loading Screens

The game we’re building will need a Host Network Game screen for willing game hosts to set the options for their game servers.

Building the Host Network Game Screen

The game we’re building will need a Join Network Game screen to display the current list of available servers as well as display the various settings that the server is currently using.

Join Network Game Screen

With our menu screens created, we need to connect them to our State Manager and have them displayed in the game.
Connecting It All Together

Unreal Engine uses a system of abstraction for accessing online game features such as leaderboards and match creation. In this video, you’ll learn about this Online Subsystem and its match Session Interface.
Preview 05:49

This video is an introduction to interacting with the Online Subsystem by implementing functions for creating and starting a network game.
Creating and Starting a Network Session

Finding any hosted network games and accessing their properties to expose the information to potential players in a match list is important.

Searching for Hosted Network Game Sessions

A set of functions are needed to join any of the found active game sessions.
Joining Existing Network Game Sessions

There will be a need for updating active game information as the hosted game progresses through game states. There is also a need for gracefully leaving a joined or hosted session and handling network errors.
Updating and Destroying a Network Game Session

With all the network functions in place, it’s time to connect them to the menu system and activate the features.

Connecting Our Network Functions to the Menu

When in game, players will need a way to monitor their current game status such as current health, coins collected and their selected powerup. Additionally, they should have access to a menu where they can choose to leave a game.

Preview 16:00

When in game, players will have access to a menu where they can monitor the progress of their fellow players within the server.

Keeping Track of Connected Players

The server will need to be able to drive gameplay by notifying all players of the current match state and their respective transitions. This video will focus on building the core of this system in code.
Creating Match State

The first of our Match States, the Waiting For Players screen will allow players to select their character or join as spectator. Additionally, this screen will allow players to indicate to the host whether they’re ready to start the match.

Building “Waiting For Players” Menu

After the Waiting For Players screen, when the host decides to start the match, all players need to be spawned into the world either as spectator or their chosen characters. Additionally, after starting the match we’ll enable a timer to keep track of our total match time.

Starting Game

During a match or after the match completes, the match will need to be restarted and the map reset before starting the next round.

Restarting Game

There needs to be a consequence to dying. In this video, we create a player death and respawn system.
Preview 05:21

To make a platformer more challenging we’ll be adding moving platforms to our game that will travel in set paths.
Moving Platforms

To make a platformer more challenging we’ll be death traps that will punish players more harshly when failing specific platforming sections
Instant Kill Boxes

A platformer is rather dull without enemies to overcome. We’ll implement a basic enemy that will protect a certain area. This enemy will be able to be destroyed using powerups or need to be avoided.

Basic Enemy

To finish off the core game loop, we’ll build an end goal to be placed in levels that will trigger a match complete screen.

Ending the Level

To finish off the core game loop, we’ll build a completion screen that will be triggered when a player reaches the end goal. This screen will declare a winner and present the host with the option of restarting the match. Players will also be able to leave the server from this screen.
Completion Screen

How to integrate Steam within Unreal Engine and our multiplayer project.

Preview 06:59

Not all projects are destined for Steam nor are all developers able to get their product on the platform. This Video discusses alternatives to the Steam platform for Online functionality.

Online Game Platform Services

The best and fastest way to improve as a developer is to implement features without instruction. This Video presents the student with various ways to expand upon the project built throughout this Title.


Recapping the work done throughout the Title.

Course Recap
About the Instructor
Packt Publishing
3.9 Average rating
8,138 Reviews
58,640 Students
686 Courses
Tech Knowledge in Motion

Packt has been committed to developer learning since 2004. A lot has changed in software since then - but Packt has remained responsive to these changes, continuing to look forward at the trends and tools defining the way we work and live. And how to put them to work.

With an extensive library of content - more than 4000 books and video courses -Packt's mission is to help developers stay relevant in a rapidly changing world. From new web frameworks and programming languages, to cutting edge data analytics, and DevOps, Packt takes software professionals in every field to what's important to them now.

From skills that will help you to develop and future proof your career to immediate solutions to every day tech challenges, Packt is a go-to resource to make you a better, smarter developer.

Packt Udemy courses continue this tradition, bringing you comprehensive yet concise video courses straight from the experts.