Setup
Get setup and running with your first project using UnrealSharp
Prerequisites
C++ Project (Highly recommended but not required. See warning under "Compiling UnrealSharp")
Unreal Engine 5.3 - 5.6
Install the required build tools for Unreal Engine
Install .NET 9.0 SDK
Clone UnrealSharp to your project
Clone this repo and place UnrealSharp in the ProjectRootDirectory/Plugins folder (make the Plugins folder if it doesn’t exist) in your Unreal Engine project.
git clone https://github.com/UnrealSharp/UnrealSharp.git
Generate Project Files
Right click on your project's .uproject file and generate project files
Compiling UnrealSharp
Compile the plugin as any other Unreal Engine plugin using the IDE of your choice.
Avoid compiling the plugin by clicking on the .uproject file. It introduces several issues, such as outdated binaries even when the source code has changed, which complicates debugging and support.
If you do choose this option, you need to remove Binaries/Intermediate folders in the project/UnrealSharp folder, whenever you fetch a new version of the plugin from Git.
Launching UnrealSharp
Launch your Unreal Engine project through the solution file or .uproject. Once Unreal Engine has fully opened, this prompt should appear:
Press Yes and the Create C# Project menu should appear like this:

You can choose a custom project name, and the project will be located in the ProjectRootFolder/Script directory. Subdirectories within Script are also supported, allowing you to organize your project files in any folder structure you prefer.
Owner is either a plugin or the project. UnrealSharp supports having C# code in a plugin.
Quick Access to UnrealSharp’s editor features
If you lose track or need to start over, you can easily access the project setup feature again.
Navigate to the top of the editor viewport and you’ll find the UnrealSharp logo. Click on New C# Project and you’re back on track.
Project Setup Completed
Once the project is created and the solution opens, you will see two projects in the Solution Explorer.
ProjectName.Glue: This project contains the automatically generated glue code that is related to your C++ API. It's part of the interop process, and it will be regenerated with each build that trigger UnrealHeaderTool.
Therefore, do not modify or directly use this project. Any changes made here will be overwritten.
Plugins: Here any plugins within the project will reside. The glue for each plugin will be in PluginRootFolder\Script\PluginName.Glue

Last updated