Skip to main content

Resource

Folder Structure

Compare different approaches to organizing your Content folder and plugin directories. Click any folder to expand or collapse it.

By Feature

Epic GamesContent

Everything a feature needs goes in one folder. Meshes, textures, blueprints, animations, all together. This is what Epic recommends for most projects.

▾Content/
├▾Characters/
├▾Weapons/
├▾Environment/
├▾UI/
├▾Maps/
└▸Core/Game mode, game instance, player controller

By Asset Type

CommunityContent

All meshes in one folder, all textures in another, all blueprints in a third. You pick the type first, then find the specific asset. This is common in smaller projects and familiar if you've worked with other engines.

▾Content/
├▾Animations/
├▾Audio/
├▾Blueprints/
├▾Materials/
├▾Meshes/
├▾Textures/
├▾Maps/
├▸UI/
└▸FX/

Hybrid

Allar Style GuideContent

Feature folders for most things, plus a _Shared folder for assets that don't belong to any single feature. For example, master materials, utility blueprints, and common textures. This comes from Allar's UE style guide.

▾Content/
├▾_Shared/Underscore prefix keeps it sorted to the top
├▾Characters/
├▾Environment/
├▸Weapons/
├▸FX/
├▸Audio/
├▸UI/
├▾Maps/
└▸Cinematics/

Modular / DLC-Ready

Community / Epic (Fortnite-style)Content

Each content module (base game, DLC, seasonal event) is its own self-contained folder. You can cook and ship them independently. This is how live-service games handle content drops.

▾Content/
├▾Core/Always loaded — never reference other modules
├▾Campaign/Base game content
├▾DLC_SeasonPass/
├▾DLC_HolidayEvent/
└▾Dev/Development-only — excluded from shipping builds

Lyra / Game Feature Plugins

Epic Games (Lyra)Content

This is how Epic built Lyra. Most content lives inside Game Feature Plugins rather than the Content folder. Each plugin registers its own assets, abilities, and input. The Content folder stays minimal.

▾Content/Minimal — mostly maps and core config
├▸Maps/
├▸System/Experience definitions, game modes
└▸UI/Base HUD and shared widgets
▾Plugins/
└▾GameFeatures/

Marketplace Submission

Epic Marketplace GuidelinesContent

Epic requires this layout for Fab and Marketplace submissions. Everything goes under one top-level folder named after your product. Nothing at the Content root.

▾Content/
└▾YourProductName/Must match your product — no spaces

By Purpose

Unreal DirectiveContent

Five top-level folders. _Shared holds project-wide art and data. Framework holds engine-instantiated classes like game modes, player controllers, and characters. Systems holds gameplay features that don't depend on each other. Modules holds content that ships together. Assets specific to a module stay in that module.

▾Content/
├▾_Shared/Shared assets, organized by type. Underscore sorts to top
├▾Core/Editor startup and templates only
├▾Framework/Engine plumbing: the classes UE instantiates
├▾Modules/Shippable content, each module is self-contained
└▾Systems/Each system is self-contained and removable

Standard Plugin

Epic GamesPlugin

This is what you get from the engine's "New Plugin" wizard. One module, optional content, done. It covers most single-purpose plugins.

▾MyPlugin/
├▾Source/
├▾Content/Optional — only if the plugin ships content
├▾Resources/
└─MyPlugin.uplugin

Multi-Module Plugin

Epic Games / Community Best PracticePlugin

Runtime code in one module, editor code in another. The editor module gets stripped from shipping builds automatically. It's ideal to use this for any plugin that has custom detail panels, asset factories, or editor tooling.

▾MyPlugin/
├▾Source/
├▾Resources/
└─MyPlugin.uplugin

Gameplay Plugin with Content

Community Best PracticePlugin

A plugin that bundles its own content alongside code. For example, inventory systems, dialogue frameworks, or interaction systems. Drop it into a project and it brings its data assets, input configs, and default blueprints with it.

▾MyGameplayPlugin/
├▾Source/
├▾Content/
├▾Config/
├▾Resources/
└─MyGameplayPlugin.uplugin

Editor Tool Plugin

Community Best PracticePlugin

Editor-only. No runtime module, nothing ships with the game. This is where custom tools, pipeline scripts, and editor extensions live.

▾MyEditorTool/
├▾Source/
├▾Resources/
└─MyEditorTool.uplugin

Third-Party Wrapper Plugin

Community Best PracticePlugin

Puts an external SDK or library behind an Unreal-friendly interface. For example, analytics middleware, networking libraries, or audio engines. Your game code talks to the wrapper, not the vendor SDK directly.

▾MySDKWrapper/
├▾Source/
├▾Resources/
├─MySDKWrapper.uplugin
└─MySDKWrapper_ThirdParty.tpsThird-party software notice

12 of 12 structures

Unreal Directive is free and ad-free.

If it saved you time, you can help keep it that way.

Donate