Unreal Engine 4 Mastery
Create Multiplayer Games with C++
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.
Reddemy may receive an affiliate commission if you enroll in a paid course after using these buttons to visit Udemy. Thank you for using these buttons to support Reddemy.
Reddit Posts and Comments
0 posts • 22 mentions • top 20 shown below
1 points • iamfake_BOIi
Tom looman’s udemy course is the one. It has basically everything explained properly and u can even ask him questions. The course says 100 or 200 dollars, just create an account the price will drop to under 30 dollars.
1 points • vibrunazo
If it's specifically for UE4 then I recommend you look up UE4 specific stuff instead of generic C++. Because unreal does add a lot of new stuff to C++ that makes it significantly different from regular c++. Memory management is a big topic in C++ and unreal has a freaking garbage collector that completely changes how you would otherwise write C++ code. There are tons of macros, boilerplate and peculiarities that you are forced to use and are specific to unreal.
Personally I did the Udemy course by Tom Looman and I very highly recommend it: https://www.udemy.com/course/unrealengine-cpp/
If you don't want to do that course for whatever reason, then I still recommend you Google Tom Looman and take a look at his tutorial series on how to build a survival game in unreal c++. On your regular journey through learning unreal c++ you'll often times bump into his blog posts anyway when you Google for common unreal c++ topics.
1 points • ed3ndru
Well I’ll offer you some pointers, since you seem genuinely interested in actually learning.
I’m not sure what you mean by binding, I use c++ mostly, so I’m assuming you mean for delegates. Maybe widget UI?
I completely understand, and totally agree, that most people leave things out. Honestly, it’s because they either don’t fully understand in, and are repeating whatever they essentially repeated from tutorials they’ve watched. Or it has become common enough to them, through experience, that it doesn’t occur to them to explain parts.
I had the same issue as you’ve mentioned. Each person has their own techniques and preferred methods that often times it clashes once it gets a bit more complex. My fix for that was to learn more and more of the same basics (same topics but from different people) and to develop an understanding. Now I can essentially write y own version of code in order to accomplish whatever it is I want (with reference, because eve Epic engineers will say they constantly have to look up “how to’s” on google).
I have game ideas but at the moment I’m just creating basic shooters and rpg style game templates, just to test my knowledge.
If your interested in c++, I recommend Tom Looman’s Udemy course https://www.udemy.com/course/unrealengine-cpp/
He has over 30,000 students, he is a former epic engineer (his methods are clearly good practice for a refined and employable skill set, personal or commercial). But my favorite part of his courses are that he explains everything he’s doing and teaches the skills to figure out unreal engine code and functionality on your own as well. He is very good. With a new email, the first Udemy course is on like $11 or something. I tried another instructor and felt he moved to fast, so I used a new email to sign up (for the cheap prompt) and tried some one else (Tom Looman) and learned so much in so little time.
I hope this steers you in the right direction. Don’t waste too much time bouncing from tutorial to tutorial, rather spend that time forming a solid comprehension of unreal and you’ll be amazing how much easier the workflow becomes. (Took me a little over a month because I usually watched one course like 3 times before I felt I fully understood all of it).
I don’t mind helping out either if you have questions I know about (we’re all still learning for the lost part). But regardless, good luck!
1 points • nvec
I did the version before they remastered it and it is a good course, but long so be ready to take time on it. It'll help you get a good grip of UE4/C++, although whether it's better than the Tom Looman course is arguable.
Make sure you get it when it's on sale though, Udemy has nearly permanent sales where courses are about $20 so don't pay the big monies for them.
1 points • parsnake
Sure thing! I went from pretty much no experience with networking before this and feeling like it was some extremely complex thing I'd never understand, to feeling like I had a great grasp of the fundamentals and could learn on my own to get better. Networking is a great tool to understand to push your own projects further. https://www.udemy.com/course/unrealengine-cpp/
It uses third-person game examples but the concepts should be transferrable to VR. Having a goal to do VR specifically will definitely help you stay on target, I think! And if you can get a handle on networking in a VR space that would be an interesting and fairly uncommon skill set, and potentially attractive to companies since there are many social experiences.
Side note, I'm currently making a VR game at work so if you want any other specific advice feel free to DM me. I know you can do it!
1 points • lukas232323
You could also check some of the tutorials out there. I haven't taken this one myself, as I'm doing almost everything in blueprint but I've read only good things. Tom Looman also have a website with various free tutorials in c++. https://www.udemy.com/course/unrealengine-cpp/
2 points • rjurga
I was in a similar situation a month ago. I'm a C++ programmer, and I was looking for resources that show a project being built and explaining the UE4 API along the way, one that assumes that the viewer already has at least some programming knowledge. So I tried two different ones that I've seen recommended around here.
The one by Ben Tristem is way too basic. It's really slow. So I've moved on to the one by Tom Looman. It's perfect for me. Besides, I think he's an ex Epic dev, so it's kind of reassuring regarding learning good practices.
I'm about to complete it, and I think that past this point, I can move forward with the documentation itself, and just google specific things that I want to know more about rather than using more beginner tutorials.
1 points • drachs1978
Unreal Engine 4's official Udemy course demos this:
(Btw, the course is usually on sale for $10-15. But occasionally goes off sale, do not buy it for $200 if it happens to be off sale when you look at it. Just wait a couple days.)
1 points • Spader15
It's probably a bit late, but I'll give my advice as someone who went on a Udemy spending spree when I got into Unreal.
The first thing you should recognize is how you want to learn and what your goals are. If you just want to get up and running with the engine and make a game, any of these tutorials linked will do just fine. If, like me, you want to learn not just how to do something but the "proper" way to do it in the engine, then your options shrink quite quickly. Unfortunately, as far as I experienced, there weren't any tutorials that truly took you from beginner to competent while showing all of the proper ways to go about structuring your code and using the engine features. But, you can use a good beginner tutorial to supplement your engine knowledge and then follow one of the more technical courses to learn the right way to do things.
I started off with Ben Tristem's videos but, as you've pointed out earlier in the thread, they're very verbose, and their programming practices are less than ideal to say the least. In general, I think his tutorials are more for understanding concepts than practical implementations. If you want a tutorial that will explain very well the concepts but still move faster than a gamedev.tv course, I'd recommend Stephen Ulibarri's course. As an aside, if you like his style, he also has a course dedicated to learning C++ through the lens of game programming which is quite good if you (as I recommend you should) spend time learning C++ separate from the engine. The primary downside to his course is there are some seriously bad programming practices contained in it such as having unnecessarily complex control branches in tick functions. But, if you're able to separate ideas from implementation, it's probably the best tutorial that I found overall. If you've already worked through the engine concepts and understand C++ well enough to take on a more technical tutorial, I HIGHLY recommend Tom Looman's. He previously worked at Epic and, as a result, teaches a lot of good practices when it comes to coding and even things like workflow and setting up your editor the correct way which make working in Unreal C++ significantly smoother. While he does use blueprints more than is usually done at a professional level in order to move more quickly through certain parts of the tutorial, he'll get you to a point where you can start going on your own and implementing the things you need or at least have an idea of where to look for the answers when you're stuck. The only downside to his course is that it doesn't hold your hand like the previous two I mentioned. It assumes you already understand what a game engine is, how to do basic programming, and in general navigate the editor at a basic level.
As for blueprint vs C++, I'll probably downvoted for saying it, but I think C++ is way nicer to work with than blueprints. In general, blueprints are amazing for iteration, placeholder functionality, keeping your binaries small, and most visual representations of data. Additionally, they're much easier to learn. The downside is they're harder to read and maintain, they ARE slower, have a minor amount of limitations to their functionality that are not present with C++, and their skill is less transferable to other engines and/or AAA development than the skillset of C++ is. Keep in mind that most people here are amateurs, so their priority is to get as much done in what little time they can allocate to working on their projects, and blueprint is phenomenal for that, especially if you don't already come from a coding background (as not everyone does). Personally, I prefer to keep my blueprints data only unless I'm testing something and need to iterate quickly, but YMMV.
The one thing I will say is: don't be too discouraged from C++ by the comments on this sub that tout it as too difficult or unnecessary. While you may not ever need the performance boost native code gives you if your game is smaller in scope or performance requirements, writing functionality in native code can be just as smooth as blueprints when you get the hang of it, and more performance is not really a bad thing at the end of the day. I know this post is pretty late, so you may not be checking it anymore, but I went through many Udemy courses and youtube playlists when I started several months ago, so if you have any questions feel free to ask or send me a PM.
1 points • JaneHamleyJane
To add to my own post, since many might be coming across this for future reference, I have come across this course as well during my search - it has been created by a UE developer, but I have no personal experience with it:
1 points • GarudaBirb
To be honest, i have only glimpsed at free tutorials before was was disappointed. But i heard this tutorial is good and for the next few days quite cheap :D. I just know his website which has nice tidbits of information and his about me shows he has experience with the engine, so maybe worth a shot?
Regarding VS it's the UE4 recommended IDE but i've seen people talk about VS Code as well, if you fancy that. If not here is the official setup for VS: UE4 docs
Not sure how viable but this shows possible IDE for UE4
1 points • fr_polo
The other alternatives that I found were :
-The unity ECS/netcode package. Sounds super performant. But it is a work in progress. There are not a lot of tutos available around. Plus, you have to learn how to use ECS before diving into it.
-DarkRift 2. Performant and flexible. But a bit too low-level for me.
-Build your own custom networking solution following this guy : https://www.youtube.com/channel/UCa-mDKzV5MW_BXjSDRqqHUw
Very good tutorials. You can really go in depth with the topic. But it will take time and effort to complete your game.
-Switch to UE4 and follow this course : https://www.udemy.com/course/unrealengine-cpp/?utm_source=adwords&utm_medium=udemyads&utm_campaign=CPlusPlus_v.PROF_la.EN_cc.ROW_ti.4908&utm_content=deal4584&utm_term=_._ag_81264462465_._ad_437497334811_._kw__._de_c_._dm__._pl__._ti_dsa-777590868421_._li_9055230_._pd__._&matchtype=b&gclid=EAIaIQobChMIpdfzvs7M6wIV0OR3Ch0H-gn6EAAYASAAEgK38vD_BwE. I haven't tried it myself but it looks good.
1 points • SeriousRob_WGDev
Unreal Multiplayer Master: Online Game Development In C++ by Ben Tristem
Network Compendium by Cedric
As metalcat said, this stuff gets outdated really quickly but this should get you going.
1 points • h0nkyca1
I have the same problem, advanced coder, but just starting out with Unreal.
I have been working through two classes I have LOVED.
NEVER purchase full-price UDemy classes, there are constant sales. I got both of these courses for $20 total.
These courses are the ones I would recommend:
- Building your first Two Games in Unreal: https://www.udemy.com/course/unreale4/
This course is 100% blueprints which are important for creating materials and other things. Will also convince you that node-based programming is never going to be a thing, I HATE BLUEPRINTS for game logic. They ARE nice for creating materials though. And it is an excellent system for allowing your designers to compose stuff out of C++ functions you have created.
Mostly it goes over level design basics and in my opinion is pretty excellent.
- Unreal Engine 4 Mastery: Create Multiplayer Games with C++ : https://www.udemy.com/course/unrealengine-cpp/
Says it all right on the tin. This will walk you through creating multiplayer unreal games in C++, take you through all of the normal programming paradigms and important Unreal classes.
1 points • Digiko
So I've been dabbling for several years to try and make a game in Unreal with C++. I thought I could teach myself or just find tutorials online, but eventually I found this:
I've been following that to implement the basics... once I got a hang of it, I've been going off the rails and using a lot of random other things to get where I needed to go.
It's taken me about 5 different restarts before this one "stuck", and I hope to be able to carry this to the end. https://twitter.com/hoihoicosplay/status/1220078829844287491
If you have any general questions, feel free to ask... but unfortunately, there's no single tutorial to understanding it. Many times I follow a tutorial, then have to do followup google to figure out the nuts and bolts of why a thing is doing a thing.
1 points • postfu
Any interest in creating a HTML5 web-based multiplayer game? There are a growing number of tutorials and resources available for this field, teaching you quite a bit about client/server messaging, and open source frameworks available. Try out node.js and socket.io, or alternatives, for example. You could even get a little bit of side revenue going for simple web games.
Here's one that you might like:
Source code: https://github.com/feixuwu/TankFire
Other basic examples:
Go over Udemy tutorials and let me know if any of their Classes would be helpful to your needs. Let me know, I'll hook you up. There's this one: https://www.udemy.com/course/unrealengine-cpp/ but I'm not overly impressed by the multiplayer portion and probably not worth your time.
If you can, target open source frameworks as much as possible to keep your costs down during this learning phase.
1 points • Grimdakka
If you're interested in C++ and don't mind spending a bit of money, check out Steven Ulibarri's excellent courses on Udemy:
Tom Looman also does a great course on multiplayer using C++:
Avoid the gamedev.tv ones. Their Unreal courses are out of date and kind of weird/low quality. They're great for Unity, but not really for Unreal.
For those who don't know how Udemy works, never buy anything at full price, it'll be discounted down to about $10-15 within a week or two.
1 points • ProUnpro
You could start on with YouTube tutorials this channel has been making some c++ videos and I enjoy watching them https://www.youtube.com/c/ReubenWardTutorials/videos you could also try out udemy https://www.udemy.com/course/unrealengine-cpp/?couponCode=FEA9DCE65C8151C4C440 this guy here does courses on there although you have to buy them. But he does also have a website with some free tutorials https://www.tomlooman.com/
1 points • ITCHY_JELLY
They "updated" it in 2019 by adding some new guy Mike when Ben and Sam couldn't do anything except screw up the games they were supposed to be "teaching" people with.
Like, here is an image of their entire course content in UE4: https://i.imgur.com/vdPLQrs.png , https://i.imgur.com/p73pi8X.png
Almost 10 hours into this "tutorial" before you learn how to use the damn viewport.
Their original Tanks game (which was broken btw when they used 4.19 and 4.20) was 22 hours long to make something that didn't even work.
The problem I have with "teachers" like Ben Tristem and other people like Reuben Ward (bought his Survival "teaching", was almost an absolute joke, feel free to PM me when I compiled and ran his "finished" content that absolutely just was hacked together), is that they are trying themselves to figure out how to do stuff and then you get to pay for the pleasure of following along.
There is absolute NO reason why a Tanks minigame in UE4 should take 22 hours, that's fucking insane.
I think if people want better courses you look at courses that are short and straight to the point.
I used both of Tom Looman's courses to hop from Unity3D to UE4, and I used Dmitri Nesteruk's C++ course to quickly learn C++.
Like look at this: https://i.imgur.com/w0LJYDT.png His whole C++ course is 3 hours long and each lesson is about 3 - 5 minutes long because he just gets right to the point and tells you how that section in C++ works and even caveats you might encounter and explains examples.
Tom Looman makes you research like people have to do in the real world and provides the solution at the very end.
Epic's Other Course:
Dmitri's C++ Courses:
1 points • boarnoah
Unreal has really good built in server-client networking via RPC built in. Replication is a the concept in UE of how server side gameplay state is copied to the clients.
The docs are a good place to start (and the compendium I posted above is a good cheat sheet). https://docs.unrealengine.com/en-US/Gameplay/Networking/index.html
Aside from that, I really liked Tom Looman's course on the subject https://www.udemy.com/course/unrealengine-cpp/
He also has a lot of short guides on various topics on his website https://www.tomlooman.com/
Unreal has really good built in server-client networking via RPC built in. Replication is a the concept in UE of how server side gameplay state is copied to the clients.
The docs are a good place to start (the compendium I posted above is a good cheat sheet to help).
Also liked Tom Looman's udemy course on the subject
He also has a lot of short guides on various topics on his website
Replication + RPC concepts apply to both C++ and BluePrint scripting.
Regarding Rest API support: This is useful to let your game talk to other services (a business logic app connected to databases etc...). Use the builtin networking getting your game logic to talk to game clients.
Documentation to use the HTTP+Json features is fairly poor (there was a slideset that had a thorough working example but can't find the link :(
I managed to do a small POC of it here if you want some additional reference in terms of code
Regarding how it all fits together: For your examples it would work as follows,
Game server receives input from player saying weapon used (via RPC mechanism), server determines if this was a valid action and whether it hits something (in this case a mob). Server reduces mob's HP stat accordingly, this stat is set to replicate (therefore the HP will drop in all client's game state as well). After HP is drained, server decides mob is dead, kills it. Places an item at location on server state, item's properties are replicated (so it shows up to client). Client gives inputs, to move their Pawn to pickup radius, server does a collision check to determine if within pickup radius, then adds item to players inventory (again server-side, but replicated so client is aware whats in their inventory too). ====
I hope that wasn't too rambly. A positive thing is since UE has such good built in networking support you can get up and running with MP within a couple of hours (to replicate player's movements, actions etc...), then its fairly straightforward to develop the rest of the game with MP in mind.