ue-cpp-foundations

Explain Unreal Engine C++ macros, containers, memory management, delegates, and logging.

304|46|Updated Mar 1, 2026
One-click install
npx skills add https://github.com/quodsoler/unreal-engine-skills --skill ue-cpp-foundations
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: ue-cpp-foundations
Source: https://github.com/quodsoler/unreal-engine-skills/tree/main/skills/ue-cpp-foundations
Command: npx skills add https://github.com/quodsoler/unreal-engine-skills --skill ue-cpp-foundations

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes references (resource) components.

What problem does it solve?

This Skill provides comprehensive guidance on Unreal Engine's C++ specific features, macros, containers, and memory management, ensuring correct and efficient code.

Core Features & Use Cases

  • UE C++ Syntax & Macros: Understand UCLASS, UPROPERTY, UFUNCTION, USTRUCT, UENUM and their specifiers.
  • Containers & Memory: Learn to use TArray, TMap, TSet, TObjectPtr, and UE's garbage collection system effectively.
  • Delegates & Logging: Implement event-driven programming with delegates and master UE's logging system.
  • Use Case: When writing a new Actor, you need to know how to declare properties visible in the editor and replicate them, or how to set up a delegate for an event.

Quick Start

Explain how to declare a UPROPERTY that is editable in the Blueprint editor and replicates to clients.

Frequently Asked Questions about ue-cpp-foundations

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I declare a UPROPERTY that is editable in the Blueprint editor and replicates to clients?▼

To declare a replicating UPROPERTY editable in Blueprint, use specifiers like EditAnywhere and Replicated within the UPROPERTY macro above your variable in Unreal Engine C++ to expose and synchronize it across clients.

How does garbage collection work with TObjectPtr in Unreal Engine 5?▼

TObjectPtr in Unreal Engine 5 provides soft references that integrate with garbage collection, automatically managing memory by marking UCLASS-derived objects for collection when no longer referenced, preventing memory leaks.

When should I use TArray vs TMap containers in Unreal Engine C++?▼

Use TArray for ordered arrays of elements and TMap for key-value pairs in Unreal Engine C++. TArray is ideal for sequential data, while TMap provides fast lookups by unique keys within your game logic.

What is the correct way to set up delegates for event handling in UE5?▼

Setting up delegates in UE5 involves declaring a dynamic delegate using UFUNCTION macros, binding functions to the delegate, and broadcasting it when events trigger, enabling event-driven programming between classes.

Why do I need reflection macros like UCLASS and UFUNCTION in Unreal Engine C++?▼

Reflection macros like UCLASS and UFUNCTION are required in Unreal Engine C++ to expose classes, properties, and functions to the Blueprint editor, enabling garbage collection, networking, and editor visibility.

What are the limitations of using UE_LOG for debugging in Unreal Engine?▼

UE_LOG limitations include output verbosity filtering and potential performance overhead during continuous logging. It is primarily a runtime diagnostic tool and does not capture stack traces or memory dumps automatically.