An introduction to the UTYPEs used in Unreal C++. UInterface, UEnum, UStruct, and UClass. I walk through writing each example and discuss some esoterics/nuances you should know.
0:00 Intro
0:15 USTRUCT
0:28 UClass Macros and UHT
0:45 UClass Features UPROPERTIES, UFUNCTIONs, and plain-old c++
1:18 Exposing Class to the BP scripting system, BlueprintType, Blueprintable
1:30 UClass prefix U
1:54 Exposing UPROPERTIES and UFUNCTIONS to blueprint
2:23 Subclassing a code UOBJECT in blueprint
2:47 USTRUCT
2:54 USTRUCT Macros and UHT
3:05 USTRUCTs purpose, the intended use case
3:15 Type name prefixes reviewed
3:30 USTRUCT Features - UPROPERTIES not UFUNCTIONS
4:12 USTRUCT Exposing data to the editor
4:54 USTRUCTS and the Garbage Collector
5:15 USTRUCTS are NOT mem zeroed, so initialize your memory.
5:48 USTRUCT Garbage Collection Context Importance
6:48 How to do nested containers with ustructs
8:03 UENUMs
8:14 UENUM and UHT macros
8:46 Using UENUMs in the editor
9:26 UINTERFACE
9:30 UINTERFACE Boilerplate Type and Inherit Type
9:38 UINTERFACE Syntax, Macros, and UHT
10:51 Implementing UINTERFACE in cpp/c++
11:57 Implementing a code interface in blueprint
12:25 BlueprintType and interfaces
12:49 High level review
14:58 UINTERFACE overriding BlueprintNativeEvent in code
15:12 High level review
15:38 Outro