UPlugins: Packaged Content

What Is It?

In Unreal Engine, UPlugins (short for Unreal Engine Plugins) are modules or packages that extend the functionality of the engine. They allow developers to add new features, tools, or assets to their Unreal Engine projects without modifying the engine's source code directly. UPlugins provide a way to customize and enhance the engine's capabilities to suit specific project requirements.

UPlugins are typically created as separate projects or modules within the Unreal Engine Editor. These modules can contain C++ code, Blueprint scripts, content assets, or a combination of these elements. They can add new gameplay mechanics, visual effects, rendering techniques, audio systems, input devices, and more.

Creating a UPlugin

  1. To begin creating a UPlugin, navigate to the Unreal Editor's Plugin Browser underneath Plugins in the Edit Tab.

  2. Click the Add button to open up the New Plugin window.

  3. Select a plugin template that fits the needs of your plugin. Blank is recommended for plugins using C++ and Content Only is recommended for plugins consisting of art, blueprint, and other miscellaneous assets.

  4. Fill in the fields for the UPlugin Name as well as the relevant Descriptor Data.

  5. Select the Create Plugin to create your UPlugin. A plugin folder should appear with a Content folder for your new plugin. Simply add assets you wish to integrate into your plugin through this plugin content folder.

  6. To create a C++ class for your UPlugin, go to tools and select Add C++ Class and choose a template. Simply specify the target module as the plugin instead of your project.

  7. Select Create Class and Unreal will add the C++ class to your UPlugin.

Installing Plugins

  1. In order to manually install a plugin, first acquire the contents of a plugin you wish to integrate and verify it is packaged correctly. It is important to note a plugin must have a .uplugin descriptor file in order to be recognized by Unreal Engine. Plugin’s may have specific installation requirements noted in their documentation. This should be verified before taking any further steps.

  2. Determine if your plugin is an Engine or Game plugin and place the plugin folder and its content in one of the corresponding paths shown below. If the plugin type is unknown it is recommended that you use the Game Search Path. In order for Plugins to be found, they must be located in one of these search paths for Plugins, either in your project, or in the Engine itself.

  1. After ensuring the editor is closed, create a Plugins folder if one is not already present.

  2. Transfer your plugin and its contents into the Plugins folder to add the files to your project.

  3. In order to ensure the plugin’s content’s folder is integrated seamlessly, deleting the contents of the binary folder is recommended. The next time the project editor is loaded, a prompt will appear to rebuild the project. Click rebuild to finish integration and your plugin should be ready for use!

UPlugin Folder Structure

• Plugin Descriptor Files

Plugin descriptors are files that end with .uplugin. The first part of the file name is always the name of your Plugin. Plugin descriptor files are always located in your Plugin's directory, where the Engine will discover them at start-up time.

Plugin descriptors are in the Json (JavaScript Object Notation) file format.

• Content

In Unreal Engine, the Content folder is a crucial directory within your project that stores all the assets and resources used in your game or application. It serves as the central location for managing and organizing various types of content, such as meshes, textures, materials, blueprints, animations, sound files, and more.

Inside the Content folder, you'll find subfolders that help organize different types of content. Common subfolders include "Blueprints," "Materials," "Textures," "Meshes," "Animations," and "Sounds." These subfolders can be further customized to suit your project's needs.

Each UPlugin also contains a Content folder. This content folder holds all the assets and resources used in your plugin similar to the Content directory of the project.

• Source

In Unreal Engine, the "Source" folder is a directory within your project that contains the source code files for your game or application. It is primarily used when working with C++ to create custom gameplay mechanics, engine modifications, or to extend Unreal Engine's functionality.

Each UPlugin that uses C++ also contains a Source folder. This folder holds the source code files used in your plugin and works similar to the Source folder of the project.

UPlugins that do not require C++ files will not have a Source Folder.

• Binaries

The Binaries folder in Unreal Engine stores the compiled executable files and platform-specific libraries generated from the source code of your project. It plays a crucial role in deploying and distributing your game or application and is separate from the source code stored in the Source folder.

The Binaries folder SHOULD NOT BE INCLUDED when committing to a repository or creating a package.

• Intermediate

The "Intermediate" folder is a directory that contains intermediate and temporary files generated during the development process. It is automatically created by Unreal Engine and serves several purposes related to building, compiling, and managing project data.

When creating a UPlugin, an intermediate folder will also be automatically created.

The Intermediate folder SHOULD NOT BE INCLUDED when committing to a repository or creating a package.

• Plugins in Unreal

Last updated