Compiling Your UE5 Game For Apple Silicon (M1)
This tutorial will walk you through how to compile and run your UE5 game on native Apple Silicon (M1 chip)
Updated almost 3 years ago
Compiling Your UE5 Game For Apple Silicon (M1)
Please make sure you meet the following requirements
- M1 Based Mac (Apple Silicon)
- Unreal Engine 5 (Full Source)
- Visual Studio Code
Generating A Visual Studio Code Project For UE
- Run UnrealBuilTool located here UnrealEngine/Engine/Binaries/DotNET/UnrealBuildTool to generate Visual Studio Code project files for the Engine
./{UEInstallDir}/Engine/Binaries/DotNET/UnrealBuildTool/UnrealBuildTool -VSCode
- To generate Visual Studio Code project files for your game run
./{UEInstallDir}/Engine/Binaries/DotNET/UnrealBuildTool/UnrealBuildTool -VSCode {AbsolutePath}/{ToYourGame}/{YourGameName}.uproject -game
It's important to specify -game
when generating for your game
Modifying Your Generated Project Files To Compile For Apple Silicon
- Open the generated UE5 Visual Studio Code project located at
{UEInstallDir}/UE5.code-workspace
- Open
tasks.json
and locate the"label": "UnrealGame Mac Development Build"
section and modify it by adding"-architecture=arm64"
like so
{
"label": "UnrealGame Mac Development Build",
"group": "build",
"command": "Engine/Build/BatchFiles/Mac/Build.sh",
"args": [
"UnrealGame",
"Mac",
"Development",
"-waitmutex",
"-architecture=arm64" <----Add This Line
],
"problemMatcher": "$msCompile",
"dependsOn": [
"UnrealBuildTool Mac Development Build"
],
"type": "shell",
"options": {
"cwd": "{UEInstallDir}"
}
},
- You can do this for any of the
UnrealGame
sections such as forDebugGame
,Shipping
etc - Now do the exact same thing for your Game project
- Open the generated UE5 Visual Studio Code project located at
{YourGamePath}/{YourGameName}.code-workspace
- Open
tasks.json
and locate the"label": "{YourGameName} Mac Development Build"
section and modify it by adding"-architecture=arm64"
like so
{
"label": "{YourGameName} Mac Development Build",
"group": "build",
"command": "Engine/Build/BatchFiles/Mac/Build.sh",
"args": [
"{YourGameName}",
"Mac",
"Development",
"{PathTo}/{YourGame}/{YourGameName}.uproject",
"-waitmutex",
"-architecture=arm64" <----Add This Line
],
"problemMatcher": "$msCompile",
"type": "shell",
"options": {
"cwd": "{UEInstallDir}"
}
},
- You can do this for any of the
{YourGameName}
sections such as forDebugGame
,Shipping
etc {{danger}}
Make sure to not modify the {YourGameName}Editor sections as the Editor does not support Apple Silicon (M1)
{{/danger}}
Compiling Your Game For Apple Silicon (M1)
- Press CMD+Shift+B to bring up the build menu
- In your UE5 project search for
UnrealGame Mac Development Build
and run it - In your Game project search for
{YourGameName} Mac Development Build
and run it.