This video is part 7 in a series aimed at giving people who want to use C++ with the Unreal Engine a helping hand to get started.
In this part, we cover Modules and Plugins; how they are made, and why we would want to use them.
WARNING:
Because of the nature of the subject, this video is mostly THEORY. If you are one of those people who cant do anything without copy/pasting vast chunks of someone else's code, you might be a bit disappointed and may prefer to skip this one... Sorry! ;-)
# Links
Chat about gamedev on Discord: https://discord.gg/jjy2aJ3hj9
Thanks to @vadstart in the comments, for highlighting the 'FUnreal' VS extension which makes working with Unreal projects in VS easier. Check it out:
https://marketplace.visualstudio.com/items?itemName=fdefelici.vs-funreal
https://github.com/fdefelici/vs-funreal
About C++ compiling and linking (in general):
https://cplusplus.com/articles/2v07M4Gy/
https://www.learncpp.com/cpp-tutorial/introduction-to-the-compiler-linker-and-libraries/
# Chapters
00:00 - Intro
00:23 - Modules: What and Why?
00:47 - Unreal IS Modules
02:11 - Benefits of Modules
04:00 - Adding Modules: Rider
05:10 - Adding Modules: Manually!
10:04 - Like, basically, WTF?
11:14 - How the Public/Private folders work
12:27 - Disclaimer
13:17 - Module Scope
15:48 - Including Modules
17:57 - The Build.cs files
19:26 - Includes and Forward Declarations
24:36 - TLDR: Forward Declarations
24:59 - Public and Private...WHAT?!
27:00 - AAAAARRRRRGGGGGHHHHH!
30:59 - A Module Example
35:44 - Plugins!
38:45 - How to make Plugins
40:17 - A Plugin Example
41:53 - Summary