# MacOS Installation

This page introduces the Anything World plugin installation process for Unreal Engine 5.2 on MacOS M1 and M2 chipsets.

{% hint style="warning" %}
Many steps of the first time setup process will not be required for subsequent Unreal 5.2 project creation. If you have follow this setup process previously and would like to create a new project feel free to skip to the [Quick Setup](#quick-setup) Section.
{% endhint %}

**Requirements:**

* [Anything World Account Credentials](https://app.anything.world/register)
* [Anything World Unreal Plugin](https://app.anything.world/profile)
* [MacOS with a M1 or M2 chip](https://www.unrealengine.com/en-US/tech-blog/unreal-engine-5-2-brings-native-support-for-apple-silicon-and-other-developments-for-macos)
  * **Minimum macOS version:** 12.5 Monterey or newer
  * **Recommended macOS version:** Latest macOS Ventura
* [Unreal Editor 5.2](https://docs.unrealengine.com/5.2/en-US/macos-development-requirements-for-unreal-engine/)
* [Clang & Clang++](https://clang.llvm.org/get_started.html)
* [XCode 14.1 or above](https://developer.apple.com/xcode/resources/)
* [Visual Studio Code IDE](https://code.visualstudio.com/download)
  * [.NET for Visual Studio Code](https://dotnet.microsoft.com/en-us/download/dotnet/sdk-for-vs-code?utm_source=vs-code\&amp;utm_medium=referral\&amp;utm_campaign=sdk-install)
  * VSCode Extensions:
    * [C++](https://marketplace.visualstudio.com/items?itemName=ms-vscode.cpptools)
    * [C#](https://marketplace.visualstudio.com/items?itemName=ms-dotnettools.csharp)
    * [.NET install tool](https://marketplace.visualstudio.com/items?itemName=ms-dotnettools.vscode-dotnet-runtime)
    * [C++ clang command adapter](https://marketplace.visualstudio.com/items?itemName=mitaki28.vscode-clang)
    * [Clang-Format](https://marketplace.visualstudio.com/items?itemName=xaver.clang-format)
    * [CMake](https://marketplace.visualstudio.com/items?itemName=twxs.cmake)
    * [CMakeTools](https://marketplace.visualstudio.com/items?itemName=ms-vscode.cmake-tools)
    * [CodeLLDB](https://marketplace.visualstudio.com/items?itemName=vadimcn.vscode-lldb)
    * [Unreal Engine 4 Helper](https://marketplace.visualstudio.com/items?itemName=openpixel.unreal-engine-4-helper)
    * [UnrealVScodeHelper (optional)](https://marketplace.visualstudio.com/items?itemName=HugoCabel.uvch)
    * [Unreal Engine 4 Snippets (optional)](https://marketplace.visualstudio.com/items?itemName=CAPTNCAPS.ue4-snippets)

{% hint style="warning" %}
The Anything World plugin for Unreal Engine 5.2 is currently in early access and its features should be considered experimental and may change significantly in later updates. Please take this into account when considering using this plugin in your specific use case.
{% endhint %}

**Step 1: Install Dependencies**

Install [Unreal 5.2](https://www.unrealengine.com/en-US/download), [Visual Studio Code](https://code.visualstudio.com/download),  and [XCode 14.1](https://developer.apple.com/xcode/resources/) or above on your MacOS.&#x20;

Once XCode is installed, open terminal and begin the installation for Clang/Clang++.

<figure><img src="/files/3advlUN55bfufvHVekVX" alt=""><figcaption></figcaption></figure>

Enter the provided terminal command to install Clang/Clang++:

```
xcode-select --install
```

You can verify that Clang/Clang++ was successfully installed by providing terminal with the following command:

```
clang --version
```

**Step 2: Setup Visual Studio Code Extensions and .NET**

Download and install the [.NET dependency for Visual Studio Code](https://dotnet.microsoft.com/en-us/download/dotnet/sdk-for-vs-code?utm_source=vs-code\&amp;utm_medium=referral\&amp;utm_campaign=sdk-install).

{% hint style="warning" %}
Verify that the .NET dependency is installed by opening terminal and providing the **`dotnet --info`** command. You should receive information regarding the current version of the .NET SDK.
{% endhint %}

{% hint style="info" %}
It is recommended to review the official [Visual Studio Code documentation](https://code.visualstudio.com/docs/cpp/config-clang-mac) in order to setup Clang for MacOS.
{% endhint %}

Once installed, open Visual Studio Code and navigate to the extensions view by selecting the ![](/files/Ix47fLlQfvBBTvkXQNMu)icon.

<figure><img src="/files/f7pLH4DS7Rs2xgeA2Cr5" alt=""><figcaption></figcaption></figure>

In order to successfully compile an Unreal 5.2 C++ project on MacOS the following Extensions are required:

VSCode Extensions:

* [ ] [C++](https://marketplace.visualstudio.com/items?itemName=ms-vscode.cpptools)
* [ ] [C#](https://marketplace.visualstudio.com/items?itemName=ms-dotnettools.csharp)
* [ ] [.NET install tool](https://marketplace.visualstudio.com/items?itemName=ms-dotnettools.vscode-dotnet-runtime)
* [ ] [C++ clang command adapter](https://marketplace.visualstudio.com/items?itemName=mitaki28.vscode-clang)
* [ ] [Clang-Format](https://marketplace.visualstudio.com/items?itemName=xaver.clang-format)
* [ ] [CMake](https://marketplace.visualstudio.com/items?itemName=twxs.cmake)
* [ ] [CMakeTools](https://marketplace.visualstudio.com/items?itemName=ms-vscode.cmake-tools)
* [ ] [CodeLLDB](https://marketplace.visualstudio.com/items?itemName=vadimcn.vscode-lldb)
* [ ] [Unreal Engine 4 Helper](https://marketplace.visualstudio.com/items?itemName=openpixel.unreal-engine-4-helper)
* [ ] [UnrealVScodeHelper (optional)](https://marketplace.visualstudio.com/items?itemName=HugoCabel.uvch)
* [ ] [Unreal Engine 4 Snippets (optional)](https://marketplace.visualstudio.com/items?itemName=CAPTNCAPS.ue4-snippets)

<figure><img src="/files/ZYwR4Qob9GGBjEy192yL" alt=""><figcaption></figcaption></figure>

**Step 3: Configure Unreal 5.2**&#x20;

Open the Epic Game Launcher, navigate  the Unreal Engine view, and select the Launch Unreal Engine 5.2 button.

<figure><img src="/files/BTDKcAGneeZXhUso2WYR" alt=""><figcaption></figcaption></figure>

Switch to the Games panel, select your preferred template, change the project default option to a C++ project, provide a project name, and select the Create button.

<figure><img src="/files/7IZiV7CiCwSb9Ata6n12" alt=""><figcaption></figcaption></figure>

<figure><img src="/files/cSxVj99Twft1RK2wKopn" alt=""><figcaption></figcaption></figure>

<figure><img src="/files/kP7J4oYfmgsA3cEQT4N8" alt=""><figcaption></figcaption></figure>

<figure><img src="/files/ZwOBufK1YqmH041NCf96" alt=""><figcaption></figcaption></figure>

Once the Unreal Editor is ready, open the Editor Preferences by selecting Unreal Editor > Preferences.

<figure><img src="/files/2dtTZ5L4RFFCiyBSn2mg" alt=""><figcaption><p>Or use the ⌘ + , hotkey command</p></figcaption></figure>

Use the search bar to find the General - Source Code setting and switch the Source Code Editor to Visual Studio Code.

<figure><img src="/files/fOnxpxtnEmMr7QZ89EHS" alt=""><figcaption></figcaption></figure>

Next let's open the project files in Visual Studio Code by navigating to Tools > Open Visual Studio Code from within the Unreal Editor.

<figure><img src="/files/TpGUHl4xjpA8EqX05NOo" alt=""><figcaption></figcaption></figure>

Now that the Visual Studio Code is set as the default IDE close the Unreal Editor application.

**Step 4: Install the Anything World Plugin and generate the project files**

Download the latest version of the Anything World Unreal Plugin from the [Anything World Profile](https://app.anything.world/profile) page.

<figure><img src="/files/hKDkMcbRzPzjSymxvg2j" alt=""><figcaption></figcaption></figure>

Unzip the package, open the Mac folder, then unzip the 5.2 package. Copy the newly created Anything World folder and navigate to your Unreal 5.2 project folder (Documents > Unreal Projects > Your project name. Create a new folder called "Plugins" and paste the Anything World Plugin inside this folder.

<figure><img src="/files/SqWGMgKjoFgtTKYVraVC" alt=""><figcaption></figcaption></figure>

<figure><img src="/files/EfiN3IbxdZ0b2AJjiz1Z" alt=""><figcaption></figcaption></figure>

Now that the Anything World Plugin is installed we recommend re-generating the project files for the Unreal 5.2 project.&#x20;

{% hint style="danger" %}
Re-generating the project files may cause issues or lost work with an existing project. We recommend creating a backup version of the project before proceeding with cleaning the project files. Please reach out to us on our [Discord](https://discord.gg/hu29aZCY) or at <Support@Anything.World> for additional help.
{% endhint %}

To re-generate the project files we need to delete the following folders from the Unreal 5.2 project.

* Binaries
* DerivedDataCache
* Intermediate
* Saved

<figure><img src="/files/cCnzheS8IXeY2WuPHuES" alt=""><figcaption><p>In some cases the Binaries folder may not be present, proceed with deleting the aforementioned folders.</p></figcaption></figure>

Find and copy the file path for your Unreal 5.2 .uproject file:

<pre class="language-markup"><code class="lang-markup">/Users/<a data-footnote-ref href="#user-content-fn-1">&#x3C;yourname></a>/Documents/Unreal Projects/<a data-footnote-ref href="#user-content-fn-2">MyProject</a>/<a data-footnote-ref href="#user-content-fn-3">MyProject</a>.uproject
</code></pre>

Open terminal and navigate to the following Unreal 5.2 installation path:&#x20;

```
/Users/Shared/Epic Games/UE_5.2/Engine/Build/BatchFiles/Mac
```

Next provide terminal with the following command:

<pre class="language-markup"><code class="lang-markup">./GenerateProjectFiles.sh -project=<a data-footnote-ref href="#user-content-fn-4">'</a>/Users/&#x3C;yourname>/Documents/Unreal Projects/MyProject/MyProject.uproject<a data-footnote-ref href="#user-content-fn-4">'</a> -game -vscode
</code></pre>

{% hint style="warning" %}
Make sure to add the Single quote `'` character in front of the beginning and at the end of the file path. The first single quote should added after the `-project=` and the end single quote should be added before the `-game` command.
{% endhint %}

Your terminal will display this message:

```markup
Setting up Unreal Engine project files...

Setting up bundled DotNet SDK
/Users/Shared/Epic Games/UE_5.2/Engine/Build/BatchFiles/Mac/../../../Binaries/ThirdParty/DotNet/6.0.302/mac-arm64
Log file: /Users/<username>/Library/Application Support/Epic/UnrealBuildTool/Log_GPF.txt
Project file formats specified via the command line will be ignored when generating
project files from the editor and other engine tools.

Consider setting your desired IDE from the editor preferences window, or modify your
BuildConfiguration.xml file with:

<?xml version="1.0" encoding="utf-8" ?>
<Configuration xmlns="https://www.unrealengine.com/BuildConfiguration">
  <ProjectFileGenerator>
    <Format>VisualStudioCode</Format>
  </ProjectFileGenerator>
</Configuration>


Some Platforms were skipped due to invalid SDK setup: Android.
See the log file for detailed information


Generating VisualStudioCode project files:
Discovering modules, targets and source code for project...
Generating data for project indexing... 100%
Writing project files... 100%

```

Now that the project files have been re-generated we are able to build, compile, and debug the project using Visual Studio Code.

**Step 5: Update task.json to include the "-architecture=arm64" argument**

Return to the project files in Visual Studio Code and open the tasks.json file within the .vscode folder.

<figure><img src="/files/3mydDaXlyERMbbibxOTz" alt=""><figcaption></figcaption></figure>

Find the label named "\<Your Project Name>Editor Mac Development Build" and add the provided argument to the list of args:

```
"-architecture=arm64"
```

<figure><img src="/files/NtpS0QcJqLGUSh7Rhxuh" alt=""><figcaption><p>Make sure to add a comma after in between the "-waitmutex" argument and the "-architecture=arm64" argument.</p></figcaption></figure>

Next let's launch the project from Visual Studio Code, to do this navigate to the Run and Debug view which can be found by selecting the ![](/files/rl4HFzMfBNc0SJVn0rg2)icon.

<figure><img src="/files/XLo6GOb2ZX2wey7tMll1" alt=""><figcaption></figcaption></figure>

Select the dropdown that displays "Launch \<your project name>" and set the option "Launch \<your project name> Editor (Develoipment)" as the default.

Press the Play icon to launch your projects then Visual Studio will display the debug icons, press the play icon **twice** to proceed.

<figure><img src="/files/4Mf1ECGDPIWRlueIoyPc" alt=""><figcaption></figcaption></figure>

{% hint style="danger" %}
Users may receive a security notification from Apple when launching the project. If this occurs, open System Preferences for Mac, open Security and Privacy, and select the Allow Anyway button. You may need to unlock the setting by selecting the lock icon before accepting.

**Once this Anything World dylib is allowed re-launch the project from Visual Studio Code.**
{% endhint %}

<figure><img src="/files/o91bkN0wRk4nlycLoecY" alt=""><figcaption></figcaption></figure>

<figure><img src="/files/3FOMP0gZqKGc5JBhb8ai" alt=""><figcaption></figcaption></figure>

Congratulations! You have completed the first time setup process for installing the Anything World Plugin for Unreal 5.2 on MacOS.

## Quick Setup:

{% hint style="info" %}
This section assumes that you have successfully installed the Anything World MacOS plugin previously on your current machine, if not please review the first time setup guide before proceeding.
{% endhint %}

**Step 1: Create an Unreal 5.2 Project**

Open the Unreal 5.2 Project Browser, choose your template, and change the project to C++:

<figure><img src="/files/7OCEm75aEXcPAUR8tPab" alt=""><figcaption></figcaption></figure>

Once created, the Visual Studio Code IDE should automatically open along with the Unreal 5.2 editor.&#x20;

**Step 2: Add the Anything 5.2 plugin to the project's plugins folder.**

Navigate to the project folder by opening Documents > Unreal Projects > Project

Create a new folder and name it `Plugins` then copy and paste the Anything World folder inside the newly created project's plugins folder.

Restart the Unreal 5.2 project and allow the AnythingWorld.dylib to run by opening the System Preferences for Mac and navigate to Security & Privacy.

<figure><img src="/files/pInP6HdWnLBC2WfiQIp2" alt=""><figcaption></figcaption></figure>

{% hint style="warning" %}
Users may receive a message from Unreal stating "Plugin 'AnythingWorld' failed to load because module could not be loaded. If this occurs please allow access via System Preferences >Security & Privacy and re-open the project.
{% endhint %}

<figure><img src="/files/LfqoKa1jrzW8HL95ZXpC" alt=""><figcaption></figcaption></figure>

Once all of the applications have been accepted re-open the project from within the Epic Games Launcher and you should have access to the Anything World plugin!

<figure><img src="/files/wjuaXZ6f0itDe0glG4ff" alt=""><figcaption></figcaption></figure>

[^1]: Remove the <> characters and replace with your username.

[^2]: Replace with your project name.

[^3]: Replace with your .uproject name

[^4]: Add a single quotes ' to the beginning and end of the file path.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://anything-world.gitbook.io/anything-world/quickstart/unreal-library-quickstart/macos-installation.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
