Unreal Engine — AAA Game Engine
You are an expert in Unreal Engine, Epic Games' professional game engine used for AAA games, architectural visualization, film production, and real-time 3D applications. You help developers build games and interactive experiences using Blueprints (visual scripting), C++, Nanite (virtualized geometry), Lumen (global illumination), MetaHuman, World Partition (open worlds), and Unreal's networking, animation, and UI systems.
Best use case
Unreal Engine — AAA Game Engine is best used when you need a repeatable AI agent workflow instead of a one-off prompt.
You are an expert in Unreal Engine, Epic Games' professional game engine used for AAA games, architectural visualization, film production, and real-time 3D applications. You help developers build games and interactive experiences using Blueprints (visual scripting), C++, Nanite (virtualized geometry), Lumen (global illumination), MetaHuman, World Partition (open worlds), and Unreal's networking, animation, and UI systems.
Teams using Unreal Engine — AAA Game Engine should expect a more consistent output, faster repeated execution, less prompt rewriting.
When to use this skill
- You want a reusable workflow that can be run more than once with consistent structure.
When not to use this skill
- You only need a quick one-off answer and do not need a reusable workflow.
- You cannot install or maintain the underlying files, dependencies, or repository context.
Installation
Claude Code / Cursor / Codex
Manual Installation
- Download SKILL.md from GitHub
- Place it in
.claude/skills/unreal-engine/SKILL.mdinside your project - Restart your AI agent — it will auto-discover the skill
How Unreal Engine — AAA Game Engine Compares
| Feature / Agent | Unreal Engine — AAA Game Engine | Standard Approach |
|---|---|---|
| Platform Support | Not specified | Limited / Varies |
| Context Awareness | High | Baseline |
| Installation Complexity | Unknown | N/A |
Frequently Asked Questions
What does this skill do?
You are an expert in Unreal Engine, Epic Games' professional game engine used for AAA games, architectural visualization, film production, and real-time 3D applications. You help developers build games and interactive experiences using Blueprints (visual scripting), C++, Nanite (virtualized geometry), Lumen (global illumination), MetaHuman, World Partition (open worlds), and Unreal's networking, animation, and UI systems.
Where can I find the source code?
You can find the source code on GitHub using the link provided at the top of the page.
SKILL.md Source
# Unreal Engine — AAA Game Engine
You are an expert in Unreal Engine, Epic Games' professional game engine used for AAA games, architectural visualization, film production, and real-time 3D applications. You help developers build games and interactive experiences using Blueprints (visual scripting), C++, Nanite (virtualized geometry), Lumen (global illumination), MetaHuman, World Partition (open worlds), and Unreal's networking, animation, and UI systems.
## Core Capabilities
### Blueprints (Visual Scripting)
```markdown
## Blueprint System
Blueprints let designers create game logic without C++:
### Blueprint Types
- **Actor Blueprint**: Game objects (characters, items, doors)
- **Widget Blueprint**: UI elements (health bars, menus, HUD)
- **Animation Blueprint**: State machines for character animation
- **Game Mode Blueprint**: Game rules (scoring, win conditions)
- **Level Blueprint**: Level-specific logic (triggers, sequences)
### Common Patterns
- Event BeginPlay → Initialize variables, spawn actors
- Event Tick → Per-frame logic (avoid for performance)
- Custom Events → Reusable function-like nodes
- Event Dispatchers → Observer pattern (like signals in Godot)
- Interfaces → Communication between unrelated actors
### Performance
- Nativize Blueprints → compile to C++ for shipping
- Avoid Tick when possible → use Timers or Events
- Cast is expensive → use Interfaces for polymorphism
```
### C++ Gameplay
```cpp
// MyCharacter.h — C++ character with exposed Blueprint properties
#pragma once
#include "CoreMinimal.h"
#include "GameFramework/Character.h"
#include "MyCharacter.generated.h"
UCLASS()
class MYGAME_API AMyCharacter : public ACharacter
{
GENERATED_BODY()
public:
AMyCharacter();
// Exposed to Blueprint editor
UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "Stats")
float MaxHealth = 100.0f;
UPROPERTY(VisibleAnywhere, BlueprintReadOnly, Category = "Stats")
float CurrentHealth;
UPROPERTY(EditDefaultsOnly, Category = "Combat")
float AttackDamage = 25.0f;
// Called from Blueprint
UFUNCTION(BlueprintCallable, Category = "Combat")
void TakeDamage(float Damage, AActor* DamageCauser);
// Event that Blueprint can override
UFUNCTION(BlueprintNativeEvent, Category = "Combat")
void OnDeath();
protected:
virtual void BeginPlay() override;
virtual void Tick(float DeltaTime) override;
virtual void SetupPlayerInputComponent(UInputComponent* Input) override;
private:
void MoveForward(float Value);
void MoveRight(float Value);
void Jump();
UPROPERTY(VisibleAnywhere)
class UCameraComponent* CameraComp;
UPROPERTY(VisibleAnywhere)
class USpringArmComponent* SpringArmComp;
};
```
```cpp
// MyCharacter.cpp
#include "MyCharacter.h"
#include "Camera/CameraComponent.h"
#include "GameFramework/SpringArmComponent.h"
#include "GameFramework/CharacterMovementComponent.h"
AMyCharacter::AMyCharacter()
{
PrimaryActorTick.bCanEverTick = true;
// Camera setup
SpringArmComp = CreateDefaultSubobject<USpringArmComponent>(TEXT("SpringArm"));
SpringArmComp->SetupAttachment(RootComponent);
SpringArmComp->TargetArmLength = 300.0f;
SpringArmComp->bUsePawnControlRotation = true;
CameraComp = CreateDefaultSubobject<UCameraComponent>(TEXT("Camera"));
CameraComp->SetupAttachment(SpringArmComp);
GetCharacterMovement()->MaxWalkSpeed = 600.0f;
GetCharacterMovement()->JumpZVelocity = 500.0f;
}
void AMyCharacter::BeginPlay()
{
Super::BeginPlay();
CurrentHealth = MaxHealth;
}
void AMyCharacter::TakeDamage(float Damage, AActor* DamageCauser)
{
CurrentHealth = FMath::Max(0.0f, CurrentHealth - Damage);
if (CurrentHealth <= 0.0f)
{
OnDeath(); // Blueprint can override this
}
}
void AMyCharacter::OnDeath_Implementation()
{
// Default C++ implementation
// Blueprint can override with custom death animation/VFX
DisableInput(Cast<APlayerController>(GetController()));
GetMesh()->SetSimulatePhysics(true); // Ragdoll
}
```
### Key Systems
```markdown
## Rendering
- **Nanite**: Virtualized geometry — billions of triangles, no LODs needed
- **Lumen**: Dynamic global illumination + reflections (no baking)
- **Virtual Shadow Maps**: High-quality shadows at any scale
- **MetaHuman**: Photorealistic digital humans
## Open World
- **World Partition**: Auto-streaming of world chunks
- **Level Instancing**: Reuse level chunks procedurally
- **Data Layers**: Toggle content layers (gameplay, cinematic, debug)
## Animation
- **Control Rig**: Procedural animation + IK
- **Animation Blueprints**: State machine for blending animations
- **Motion Matching**: AI-driven animation selection
- **Live Link**: Real-time mocap streaming
## Multiplayer
- **Replication**: Server-authoritative networking
- **Gameplay Ability System**: Multiplayer-ready abilities
- **EOS (Epic Online Services)**: Matchmaking, lobbies, voice
```
## Installation
```bash
# Download Epic Games Launcher → Unreal Engine tab
# Or build from source (requires GitHub access):
git clone https://github.com/EpicGames/UnrealEngine.git
cd UnrealEngine && ./Setup.sh && ./GenerateProjectFiles.sh && make
# CLI builds
UnrealBuildTool -project=MyGame.uproject -configuration=Shipping -platform=Win64
```
## Best Practices
1. **Blueprints for designers, C++ for systems** — Game logic in Blueprints, performance-critical code in C++; expose C++ to Blueprint
2. **Nanite for geometry** — Enable Nanite on static meshes; skip manual LOD creation entirely
3. **Lumen for lighting** — Use Lumen for dynamic GI; no more baking light maps for most projects
4. **World Partition for scale** — Enable for open-world games; automatic level streaming based on player position
5. **Gameplay Ability System** — Use GAS for any game with abilities, buffs, cooldowns; multiplayer-ready from the start
6. **Source control** — Use Perforce or Git LFS; Unreal projects have large binary assets (textures, meshes, maps)
7. **Data-driven design** — Use Data Tables and Data Assets for game balance; designers edit without recompiling
8. **Profiling** — Use Unreal Insights for CPU/GPU profiling; `stat unit` for frame time breakdown in-gameRelated Skills
Socratic Method: The Dialectic Engine
This skill transforms Claude into a Socratic agent — a cognitive partner who guides
vertex-engine-inspector
Inspect and validate Vertex AI Agent Engine deployments including Code Execution Sandbox, Memory Bank, A2A protocol compliance, and security posture. Generates production readiness scores. Use when asked to inspect, validate, or audit an Agent Engine deployment. Trigger with "inspect agent engine", "validate agent engine deployment", "check agent engine config", "audit agent engine security", "agent engine readiness check", "vertex engine health", or "reasoning engine status".
engineering-features-for-machine-learning
This skill empowers Claude to perform feature engineering tasks for machine learning. It creates, selects, and transforms features to improve model performance. Use this skill when the user requests feature creation, feature selection, feature transformation, or any request that involves improving the features used in a machine learning model. Trigger terms include "feature engineering", "feature selection", "feature transformation", "create features", "select features", "transform features", "improve model performance", and similar phrases related to feature manipulation.
feature-engineering-helper
Feature Engineering Helper - Auto-activating skill for ML Training. Triggers on: feature engineering helper, feature engineering helper Part of the ML Training skill category.
conducting-chaos-engineering
This skill enables Claude to design and execute chaos engineering experiments to test system resilience. It is used when the user requests help with failure injection, latency simulation, resource exhaustion testing, or resilience validation. The skill is triggered by discussions of chaos experiments (GameDays), failure injection strategies, resilience testing, and validation of recovery mechanisms like circuit breakers and retry logic. It leverages tools like Chaos Mesh, Gremlin, Toxiproxy, and AWS FIS to simulate real-world failures and assess system behavior.
adk-engineer
Execute software engineer specializing in creating production-ready ADK agents with best practices, code structure, testing, and deployment automation. Use when asked to "build ADK agent", "create agent code", or "engineer ADK application". Trigger with relevant phrases based on skill purpose.
game-engine
Expert skill for building web-based game engines and games using HTML5, Canvas, WebGL, and JavaScript. Use when asked to create games, build game engines, implement game physics, handle collision detection, set up game loops, manage sprites, add game controls, or work with 2D/3D rendering. Covers techniques for platformers, breakout-style games, maze games, tilemaps, audio, multiplayer via WebRTC, and publishing games.
ROS 2 Engineering Skills
A progressive-disclosure skill for ROS 2 development — from first workspace to
using-dbt-for-analytics-engineering
Builds and modifies dbt models, writes SQL transformations using ref() and source(), creates tests, and validates results with dbt show. Use when doing any dbt work - building or modifying models, debugging errors, exploring unfamiliar data sources, writing tests, or evaluating impact of changes.
use-unrealhub
通过 UnrealMCPHub 驱动 Unreal Engine 完成游戏开发全流程的综合技能。覆盖:工程管理、C++ 编译、关卡构建、PIE 测试、AI 寻路、内存治理、弹窗处理、Slate UI 操控、UMG Widget 创建。触发:用户提及 UE/Unreal/编译/启动/崩溃/MCP/PIE/关卡/怪物/AI/UI/Widget/Slate 等关键词时激活。
unrealhub-developer
UnrealMCPHub 代码库开发维护指南。面向修改 Hub 源码(Python/MCP 服务器)的开发者。触发:用户修改 UnrealMCPHub/src 下源码时激活。
../../../engineering-team/playwright-pro/skills/testrail/SKILL.md
No description provided.