June Rhodes

UObjects & garbage collection 🟢

Fairy Bread Funderdome: 2:30pm - 3:00pm AEDT

Gameplay code in Unreal Engine, such as actors and components, uses the garbage-collected UObject system. Rather than reference counting references (and dealing with the cyclic dependency issues that can stem from it), the UObject system automatically garbage collects things once they're no longer used.

If you're doing anything with gameplay code, whether that's creating an actor, writing a blueprint library, or even referencing a UObject from lower level code, you'll be interacting with the UObject system.

This session will cover how to define a UObject-based class, the preprocessor macros (such as GENERATED_BODY, UPROPERTY and UFUNCTION) that you need to add, and how the preprocessor magic flows through to the engine so that garbage collection works at runtime.

June Rhodes

June Rhodes

She/Her

June is the owner of Redpoint Games, where she develops multiplayer and online-focused plugins for the Unreal Engine Marketplace. June has over a decade of programming experience, and has been writing low level C++ code for Unreal Engine for the last few years.

A series of ten 30-minute workshops throughout the day, this course will give you the skills to write Unreal Engine C++ code. We'll be covering everything from memory management through to exposing custom functionality in blueprints, and you can ask questions and engage with the speaker to learn more deeply about the topics you are interested in.

Attendance guide

Sessions are separated into 3 categories:

  • 🔴 Foundational C++
  • 🟠 Low Level Unreal C++ and
  • 🟢 High Level Unreal C++

If you're not already experienced in C++, you should attend all of the 🔴 Foundational C++ sessions, as these are critical to understanding the content covered later on in the workshop.

🟠 Low Level Unreal C++ is highly recommended, but technically optional if you only intend to write gameplay code and you do't plan on interfacing with third-party libraries or other low level systems.

🟢 High Level Unreal C++ is highly recommended for everyone: either people who have attended the foundational C++ sessions or are already experienced in C++, with a focus on those who intend to write gameplay code or blueprint libraries that are accessible to designers and other team members.

While we've got content generally planned for each of the sessions below (see the session descriptions), this workshop will largely be driven by audience questions in Discord throughout the day. If you've got a burning question on how a particular part of Unreal Engine works, this workshop is your opportunity to ask it.

Due to the above and although we're going to try to stick to this schedule, session times may vary slightly, especially if we finish covering a topic sooner than expected. Any changes to the schedule will be announced in Discord.

Software for following along - ('Everything to do with text' / 1:30pm onward)

  • Visual Studio 2022 with Desktop C++ workloads
  • Unreal Engine 5

Workshop Schedule (AEDT / UTC+11)

Grab your ticket to join us on Discord and watch live.