In Unreal Engine, what is the primary purpose of the UCLASS() macro, and what must an associated header file typically include? Answer: It exposes the C++ class to the Unreal Reflection System, allowing it to be used by the editor, Blueprints, and Garbage Collection. The header file must include the generated file: [ClassName].generated.h.