In this page, we'll go through the process of installing Dash on a custom UE5 build. Few things to keep in mind:
Dash is only compatible with UE5.1 and above.
In most cases, the process should be fairly straightforward, but if your custom UE5 build has been drastically changed from the base engine source, there might be some hiccups, and we recommend that you reach out to [email protected]
We usually invite companies to a shared Slack channel in which we can provide them live guidance and speak directly with their artists for feedback requests. Please reach out!
In order to turn off crash reporting, analytics, AI features, etc, you can set certain Environment Variables. More info on this topic further down.
With that out of the way, let's dig in.
There are two build methods, the first being Plugin Build and the other being Source Build. The files for both are located in this Google Drive: , and you can choose your preferred build method by checking the different instructions below.
Dash Python code lives under PLUGIN_ROOT/Content/Python Which is automatically available for Unreal’s Python. init_unreal.py does not need any modifications and is always valid for all users.
When Unreal Engine started for the first time after Dash plugin installation, Dash will install Python dependencies under PLUGIN_ROOT/Content/Python/Plugins/UnrealEngineContext/Imports/311/ for Unreal Engine 5.4+, and under PLUGIN_ROOT/Content/Python/Plugins/UnrealEngineContext/Imports/39/ for Unreal Engine 5.1-5.3
This happens once per project (in case Dash is installed per project). OR once per engine version (in case Dash is installed to the engine). To save disk space, it’s recommended to install Dash under Engine/Plugins. Example engine paths: ENGINE_ROOT/Engine/Plugins/GraphNUnrealPlugin, ENGINE_ROOT/Engine/Plugins/Polygonflow/GraphNUnrealPlugin, ENGINE_ROOT/Engine/Plugins/Whatever/GraphNUnrealPlugin.
Dash plugin size is ~1GB right after it is installed. Once Python dependencies are installed, the total size is ~3GB. On top of that, Dash downloads asset metadata like thumbnail images for assets, which may add up a bit more.
Dash plugin complies with the normal Unreal Engine code plugin structure, and can be compiled within a C++ project, or using unreal automation scripts, or using the “Package” button from Tools→Plugins menu. This allows users to build Dash for custom engines
Just remove GraphNUnrealPlugin folder from Engine/Plugins or PROJECT_ROOT/Plugins
Also remove Documents/Polygonflow folder
init_unreal.py: Should you opt not to install Dash on every artist's machine, this developer file serves as the entry point to initiate the Python portion of the plugin.
Then it is time to build!
Create a new Unreal C++ project
Place the plugin into the Plugins folder of the project (create Plugin folder if it doesn’t exist yet). Result must be Plugins\\GraphNUnrealPlugin
Copy the init_unreal.py shipped in the ZIP inside your project Plugins/GraphNUnrealPlugin/Content/Python to allow the plugin to see Dash and its libraries, or you will get errors like ModuleNotFoundError: No module named 'GN'
Edit the path at the end ofinit_unreal.py file, with the location where you placed your Dash folder if you want to distribute the plugin, or with the installation directory, if you are using the installer.
Generate the visual studio project by right clicking in explorer on the .uproject file and selecting “Generate Visual Studio project files”
Open the solution in Visual Studio or Rider and build it from there Find more information at the official documentation.
The plugin exposes some functionalities to the python interpreter, and you can make unreal generate the python stubs for you, so you can load them in our IDE.
Open Unreal Engine and activate the plugin. It will activate Python Script Plugin and Editor scripting utilities plugins
Go to project settings and enable developer mode
Restart the editor.
Check PROJECT_ROOT/Intermediate/PythonStub/unreal.py
Add this file to your IDE to have the auto complete with the exported functions
IesLibraryContents.zipThirdPartyLicenses - This does not affect functionality, optional
__pycache__ - Generated by Python
*.pyc - Generated by Python
*.pdf - Legal documents like EULA, optional
*.md - Legal documents and internal docs, optional
enabled.Enable or disable startup update checks. Update checks happen once per Unreal editor session when Dash appears for the first time. Dash makes a request to our Cloudflare server to fetch the latest version info.
Default value - enabled
Enable or disable Dash usage telemetry. Dash sends usage data periodically to our MongoDB cluster. Default value - enabled
If enabled, the toggle to control the analytics option will be added to the Dash preferences UI.
Default value - enabled
Enables or disables the AI assistant and AI Asset Tagging through our OpenAI Enterprise API account. Default value - enable
If enabled, the toggle option to enable AI features using OpenAI Enterprise API will be added to the Dash preferences UI.
Default value - enabled
IndexMeshSymbols.lib
_math.lib
_array.lib
meshoptimizer.lib
_gnmesh.lib
embree
OpenSubdiv
Physix
tbb
robin-hood-hasing
tinyspline
FastNoise2
fast_obj
unordered_dense
blinker
boto3
botocore
certifi
dateutil
jmespath
orjson
pytz
semver
s3transfer
sentry_sdk
urllib3
numpy
PIL
PySide6
scipy
sklearn
shiboken6
torch_redstone
Some are pure python modules, some are C++ libraries that we use inside our python modules.
Open this path in your PC folder explorer: DASH_INSTALL_ROOT\Plugins\UnrealEngineContext\Imports\GN,
And then replace this ContentUtils.py file with the one available here: https://drive.google.com/drive/folders/129GZoD6borfOGJ4-sGD_VTAdVMtMgbKr?usp=sharing
Then open UE and ignore the update popup, i.e, close it instead of clicking update
Then, open the Dash preferences through the main Dash menu and check the new "Skip Resource Acquisition" setting that is available in the Content Settings section
Then you should not get the update pop-up next time you open Dash
Later, when there is a Dash update, one person (the person who set up the project and plugins, perhaps) needs to do these steps to get the new resource data and share it with everyone through Perforce:
Install the new version of Dash
Unlock the Polygonflow folder under the Content folder in the project through Perforce so it is writable.
Turn on the resource acquisition again in Dash preferences
Open the Project and Dash, and run the update through the pop-up
Now, the new update files have been added to Perforce and are ready to be used by everyone on the team.


