Unrealengine Cpp

Tags:

Unleash the power of C++ and Blueprint to develop Multiplayer Games with AI in this Epic Games-approved course.

Last updated 2022-01-10 | 4.6

- Discover the power of C++ to build games in Unreal Engine.
- Master the fundamentals of C++ programming.
- Build multiplayer games you can play with friends.

What you'll learn

Discover the power of C++ to build games in Unreal Engine.
Master the fundamentals of C++ programming.
Build multiplayer games you can play with friends.
Master Unreal's Gameplay Framework to create any genre of games.
Create multiple types of Artificial Intelligence within Unreal Engine.
Write clear code that can be exposed
extended and modified by Blueprint.

* Requirements

* You have a basic understanding of programming in any object-oriented programming language such as C#
* Java
* Python
* or C++ or a decent understanding of scripting in Unreal’s Blueprints.
* You have Unreal Engine installed (4.17 or newer) and understand the basics of the Editor.

Description

Approved by Epic Games and taught by former Epic Games engineer, Tom Looman, this course teaches you how to use C++ to build your own games including artificial intelligence in Unreal Engine 4.

If you have a bit of programming know-how from other coding languages but are new to C++ game development, then this course is for you! Unreal Engine 4 Mastery is also a great fit for current developers who have previous experience with Unity3D or other game engines. Unleash the full power of the Unreal Engine by taking this step-by-step guide.

In this course, you will:

  • Create two multiplayer-ready games in C++

  • Create multiple types of AI enemies

  • Expose C++ code to Blueprint to unlock the full power of the engine

  • Discover the fundamental classes required to build games

  • Code many common gameplay mechanics like weapons, power-ups, characters, guards, and more

  • Challenge yourself with fun activities that further test your programming knowledge

  • Discover many tricks and features in C++ to get the most out of Unreal Engine

  • Master the fundamentals to build your own dream game

You’ll go hands-on immediately and dive straight into completing over 14 challenges and two game projects. You’ll start by creating a first-person stealth game, where you’ll learn the basics of C++, AI, and networking. Then you’ll build a third-person cooperative shooter game, in the likes of Gears of War or Fortnite. In this project, you’ll expand your learning of C++, make the game fully multiplayer-ready, and create fun artificial intelligence to play against with friends.

This course is also packed with challenges where you’ll build a grenade launcher, a black hole that sucks in the fabric of space, and a launchpad that bounces players and objects around–just to name a few! Through these activities, you’ll explore the engine’s code, improve your problem-solving capabilities, and take your games to the next level.

By the end of the course, you can use your knowledge of C++ and Blueprints to build your own dream games. You can use the games built during this course for your personal projects moving forward, as you add more advanced features. Even if you thought C++ was difficult or intimidating before taking this course, you will learn how easy it is to code C++ within Unreal Engine 4 once you go through these lectures. Even if you are only interested in single-player type games, this course will be a great fit as it teaches many other concepts besides programming for multiplayer games.

Why Learn From Me

In this course you will learn more than just programming in Unreal Engine 4. You will actually follow the ‘Unreal Way’ of making games in this Epic Games-approved course. Start off on the right foot and write effective C++ code using methods the engine creators have used themselves! I have been working with Unreal Engine 4 and creating game development tutorials since day one. Through this partnership with Epic Games, you will gain the skills to create stunning new projects and advance your professional aspirations in game development.

Join me in this course and start building awesome games in C++ today!

Note: Now includes hand-made Chinese subtitles for all lectures! 本课程的所有讲座都将包括中文字幕。

Who this course is for:

  • People who have tried C++ with Unreal before but could not find the right tutorial to support their hands-on learning style. This course offers step-by-step guidance and lots of activities so you can master making games with C++.
  • Developers from Unity3D and other engines looking to dive into Unreal Engine programming.
  • People with prior programming experience who want to make multiplayer games and create artificial intelligence in Unreal Engine 4.
  • If you have never touched a programming language before this course may not be for you. However, proficiency in Unreal’s Blueprint visual scripting also counts as a valid foundation for this course as it shares the same concepts as languages like C++.
  • If you are an artist who wants to bring your ideas to life in a game, a Blueprint-focused course might be a better fit for you. Skim the course curriculum to see if you’re interested in using the power of C++, networking, and AI programming to build out the technical structure of your game.

Course content

15 sections • 148 lectures

Welcome Preview 01:41

Thank you for purchasing my Udemy Course on C++ in Unreal Engine 4!

Set Up Preview 01:18

Before we start programming, we have a few things to set up.

Setup Visual Studio 2017 or 2019 Preview 01:29

Installing Visual Studio 2017

Setup Visual Assist Preview 03:03

Visual Assist is a Visual Studio plugin to help navigation and coding in C++.

Get the most out of this course Preview 01:55

Get the most out of this course, by knowing the difference between Activities and Challenges. Also, the source code for both projects is available via GitHub.

Activity: Add Explosions to Template Project Preview 08:16

Quick and fun exercise where we add explosion particles to projectile bounce events in C++.

Introduction Preview 01:09

Setup Template Project Preview 04:25

Walkthrough the C++ FPS template project. Resource available in the lecture "Resources". Bare-bones project without Section 1 specific content is on GitHub.

Create C++ Class Preview 03:43

Learn to create a C++ Class. What are Header files and cpp files, and the BeginPlay and Tick functions in Actors.

Setup ActorComponents Preview 07:32

Learn to add ActorComponents to Actors in C++, expose variables to Blueprint and how to use #include to use other classes.

Setup Collision and Overlap Event Preview 09:38

Learn how to setup collision channels on ActorComponents and how to react to overlap events in your Actor.

Pickup Objective Actor Preview 06:05

Learn how to 'Cast' C++ classes to different types and how to changes variables of one Actor in a different Actor.

Setup Objective UI with UMG Preview 08:28

Learn to add UMG widget via HUD class for UI text display. Create GameMode to setup default game framework classes.

Challenge: Create a Black Hole Preview 07:52

Challenge! Build your own Actor that sucks up nearby simulated actors into itself like a black hole.

Bonus: Troubleshooting Preview 07:11

Walk-through of potential issues, compile errors and other problems you may run into and how to avoid them.

Quick Compilation Workflow Tip! Preview 00:25

A quick workflow tip on avoiding headaches with attempting to use the in-editor hot reloading feature.

Introduction Preview 00:48

Create Extraction Zone Preview 08:55

Learn to bind overlap events in C++ with OnComponentBeginOverlap and logging using UE_LOG macro.

Polish Extraction Zone Preview 07:18

Learn to use DecalComponent to mark the extraction zone with imported content assets available in the Lecture Downloads.

Setup Mission End Preview 07:27

Learn to disable input on Pawns and using GameMode to create a game over state that can be extended in Blueprint using the BlueprintImplementableEvent keyword.

Add Extraction Feedback Preview 09:14

Add UI feedback using Unreal's UMG to show the mission complete message.

Setup Post-mission Camera Preview 11:37

Introducing TSubclassOf for class assignment in C++ and Blueprint.

Challenge: Create a Launch Pad Preview 08:33

Use your newly learned skills and concepts to build a launch pad that fires away players and other Actors on the map!

Introduction Preview 00:36

Create AI Guard Class Preview 07:47

We build the core of our AI agent with PawnSensingComponent to setup senses like sight and hearing.

Setup Sight Sense Preview 06:45

Learn how to setup sight in the pawn sensing component for your AI Guard.

Setup Hearing Sense Preview 09:56

Learn how to setup hearing sense in the pawn sensing component for your AI Guard.

Add Noise making to Projectile Preview 04:05

With PawnSensing and MakeNoise we distract the guard when a projectile bounces.

Setup Guard Distraction Preview 09:52

Add game-over trigger when spotted Preview 06:56

Add 3D UI state above Guard Preview 13:53

With UMG (Unreal Motion Graphics) we add feedback on the AI's current state to the player.

Challenge: Setup AI Guard Patrol Preview 08:24

Challenge! Move the guard around using the available MoveTo logic and have AI patrol between two locations.

Introduction Preview 00:52

Prepare the Mission Preview 09:14

Play the game and see the current state of the game in multiplayer. Expect lots of things to not work yet!

Network the Projectile Preview 12:29

Learn how to network the project with Unreal's replication system.

Network Player View Pitch Preview 09:46

Network the Objective Actor Preview 05:46

Network the AI Guards Preview 06:00

Network the Game State Part 1 Preview 08:28

Continuing making the game multiplayer ready by replicating which player is carrying the objective, 

Network the Game State Part 2 Preview 10:53

Create a GameState class to send information from server to all clients on game changes, for example when mission ends we can DisableInput on all clients.

Network the Game State Part 3 Preview 13:35

Create PlayerController class to handle UI events (like showing the 'mission complete' text). Also making sure all clients set the post-mission camera location after the mission ends.

Activity: Play with a friend! Preview 03:16

Activity to play with a friend to test our your newly created multiplayer game!

Introduction Preview 01:08

Create C++ Project Preview 01:18

Create Blank C++ Project via Epic Games Launcher.

Create The Player Class Preview 01:56

Create new C++ class to act as our player.

Add Movement Input Preview 07:28

Bind keyboard input to a function, and set up input bindings via Project Settings. Create and add Player Blueprint to the level with Auto Possess.

Add Mouse Look Preview 03:27

Bind mouse input to a function, set up input binding via Project Settings.

Third Person Camera Part 1 Preview 07:11

Forward declaring classes, add header include, add Camera to the player, expose C++ components to Blueprint.

Third Person Camera Part 2 Preview 08:33

Run console commands (~ Tilde) to visualize collision. Use SpringArmComponent for third person camera collision and movement.

Add Player Mesh Preview 03:09

Import animation content from Marketplace and set up skeletal mesh in Blueprint.

Add Crouch Preview 04:45

Add crouching to player and key bindings using built-in Crouch code.

Add Character Animations Preview 11:30

Use Marketplace 'Animation Starter Pack' to setup player animations. Customize pack's Animation Blueprint for our specific needs.

Challenge: Setup Player Jump Preview 05:00

Challenge video! Use Unreal's Jump logic to make your character jump, as a bonus you can try to link this with the animation blueprint.

Introduction Preview 01:12

Create Weapon Class Preview 07:02

Create C++ Weapon class to be equipped by characters.

Import Weapon Mesh Preview 04:19

Import weapon SkeletalMesh, and assign in Blueprint

Line Tracing Part 1 Preview 11:12

Setup line-tracing when weapon Fire function is triggered and checking our results for an Actor to damage.

Line Tracing Part 2 Preview 05:31

Update line trace to use camera view point instead of default pawn eye height.

Apply Damage to Actors Preview 06:06

Use of the fire logic, to apply damage to other actors.

Create a Target Dummy Preview 05:16

Creating a target dummy actor that responds to damage to test our code.

Add Muzzle and Impact Effects Preview 12:26

Add Muzzleflash and impact particle effects to the weapon and using sockets to attach the effects to a mesh.

Create Smoke Beam Effect Preview 10:46

Create a smoke beam particle effect to visualize the bullet trail.

Add Simple Crosshair Preview 03:06

Using UMG to draw a simple crosshair on screen.

Challenge: Create your own Grenade Launcher Preview 16:08

Challenge Lecture! You will put your knowledge on spawning actors, using ProjectileMovementComponent, and inheritance to use to create your own projectile weapon.

Introduction Preview 00:41

Add Aiming Down Sights Preview 08:58

Create Debug Console Variables Preview 04:07

Polish Weapon Code Preview 12:06

Shake Camera While Firing Preview 06:48

Setup Custom Surface Types Preview 04:16

Add Multiple Hit Effect Types Preview 09:33

Add Custom Collision Channel Preview 03:17

Apply Headshot Bonus Damage Preview 02:48

Setup Automatic Fire Preview 10:43

Activity: Design and code your own weapon feature Preview 01:43

Activity to brainstorm your own extra weapon feature such as bullet spread or weapon charge-up mechanic. Take some time to experiment and try to code it on your own.

Introduction Preview 00:50

Create Health Component Preview 03:13

Learn how to create your own ActorComponent in C++.

Handle Damage Events Preview 09:47

Learn how to bind to delegates and events in C++.  And logging debug output to track how and when code is running.

Add Custom Event Preview 05:26

Learn how to declare a custom C++ delegate (aka event) using a macro and implement it in the health component.

Add Death Animation Preview 10:26

Learn to play animation in Animation Blueprint based on C++ variables when a character dies from damage.

Create 'Gears of War'-style Health Indicator Material Preview 06:05

Learn how to create materials to use in UMG Widgets and how to set parameters in materials from C++ to change the look of the material at runtime.

Create Health Widget in UMG Preview 07:21

Challenge: Create an Explosive Barrel Preview 05:17

Challenge video! Create the classic red explosive barrel in Unreal Engine. We will use this challenge result in the next section to make it work in multiplayer too!

Introduction Preview 01:01

Play the Game in Multiplayer Preview 06:10

Replicate Weapon Code Part 1 Preview 07:07

Learn about "Role" and how to use ROLE_Authority to run pieces of code only on the server or client.

Replicate Weapon Code Part 2 Preview 09:18

Learn how to make 'Server'-functions that run code on the host if called by a connected client. (Other Keywords: Reliable, WithValidation)

Replicate Weapon Code Part 3 Preview 08:30

Create a struct to replicate multiple variables to clients with rep notify (aka ReplicatedUsing). Learn how to use DOREPLIFETIME_CONDITION to optimise networking by sending variables only to specified clients.

Replicate Weapon Code Part 4 Preview 10:15

Playing particle and sound effects on the clients and server using ReplicatedUsing (aka "RepNotify"). Learn about Unreal's adaptive net update frequency using NetUpdateFrequency and MinNetUpdateFrequency.

Replicate Health & Death Preview 09:12

Replicating ActorComponent with GetOwnerRole() to limit where code is running, for example only on the authoritative server to handle damage.

Challenge: Replicate the Explosive Barrel Preview 06:59

Challenge video! Use the results from the previous section where we built an explosive barrel and make it simulate on both client and server.

Introduction Preview 00:57

Setup AI Pawn and Navigation Mesh Preview 10:12

Add Move-to Logic Preview 11:18

Move Pawn Using Forces Preview 10:38

Add TakeDamage Support Preview 08:02

Pulse Material on TakeDamage Preview 08:55

Add Self-Destruct Preview 07:56

Explode When Near Player Preview 08:51

Setup Sound Effects Part 1 Preview 08:57

Setup Sound Effects Part 2 Preview 08:08

Setup Network Replication Part 1 Preview 04:19

Setup Network Replication Part 2 Preview 09:51

Challenge: Increase AI Damage when near other bots Preview 09:14

Challenge video! Extend the tracker bot to boost it's damage when near other tracker bots! As a bonus you make the bot material glow as more and more others are nearby.

Introduction Preview 01:24

Create the Pickup Class Preview 10:40

Create the Power-up Class Preview 09:38

Activity: Brainstorm Cool Power-up Ideas Preview 01:18

Activity! Brainstorm about some cool power-ups you would like to build for your game. By the end of this section you will be tasked to try and build it on your own!

Create Power-up "SuperSpeed" Preview 09:17

Add Power-ups to PickupActor Preview 11:02

Finish the "SuperSpeed" Power-up Preview 12:11

Create 'Health Regeneration' Power-up Preview 10:13

Polish the Power-ups Preview 04:18

Replicate Power-ups for Multiplayer Part 1 Preview 11:50

Update Power-ups with base class Preview 06:11

Replicate Power-ups for Multiplayer Part 2 Preview 07:00

Activity: Build Your Power-up Idea! Preview 00:32

Activity! With ideas from your previous brainstorm, please take some time to experiment and build one of the cool ideas you came up with.

Introduction Preview 01:24

Create GameMode Class Preview 04:18

Setup The Environment Query System Preview 11:14

Spawn AI using EQS Preview 06:52

Add Wave Based Spawning Preview 12:11

Complete the Wave Logic Preview 13:54

Create Game Over state Preview 06:07

Add WaveStates Preview 10:32

Replicate WaveState to all players Preview 07:43

Add Score for Kills Preview 13:01

Optional: Use BSP-Tools for Level Blockouts Preview 08:46

Activity: Create your own level Preview 02:41

Activity! This optional activity lets you take some time to build your own level! Alternatively there is a download link available in the next lecture to use, if you choose to skip this activity for now.

Setup Level For Gameplay Preview 10:01

You will add the gameplay elements such as power-ups to the level. Use your own level created in the previous activity or download the level file in this lecture!

Respawn Dead Players Preview 03:37

Introduction Preview 00:43

Setup AI Class and Behavior Tree Preview 11:35

Learn how to use Unreal's Behavior Trees for AI decision making.

Setup Movement using EQS Queries Preview 08:06

Learn how to use EQS (Environment Query System) in Behavior Trees for AI movement and finding the best position to attack the player from.

Create Custom Behavior Tree Decorator Preview 13:28

Learn how to make your own Decorator for checking distance between two Actors, and apply it to change the flow of execution in Behavior Trees.

Finish the AI Movement Preview 09:52

Extend the movement logic in the Behavior Tree to have the AI move towards the player is a smarter, more optimized way.

Add Sight Perception Preview 14:25

Setup AI Perception Component with a Sight sense to 'see' the player and use this new information in the Behavior Tree.

Move To nearest player using EQS Preview 07:59

Setup AI Weapon Fire Preview 07:43

Add Bullet Spread to Weapon Preview 06:06

Add Advanced AI to Wave Spawns Preview 04:50

Setup Teams and Friendly Fire Preview 10:35

Improve Target Selection Preview 08:57

Bonus: Polish the Tracker Bot Preview 12:24

Return to the Tracker Bot created earlier in the project to improve it's movement and fix some bugs that occurred when we added the Advanced AI to the project.

Challenge: Make AI Flee to Cover when Low Health Preview 10:06

Challenge Video! Extend the AI behavior with extra logic to make it flee when low health and self-heal before returning to fight.

Conclusion Preview 01:18

Package & Play your game! Preview 04:12

Package the coop game project, and learn how to connect with your friends to play together!

Your Next Steps! Preview 01:33

Congratulations on finishing the course! Find out where to learn more on game development for Unreal Engine 4!