Custom Build

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 studios@polygonflow.io

  • We usually invite companies on a shared Slack channel in which we can provide them live guidance and speak directly with their artists for feedback requests. Please reach out!

With that out of the way, let's dig in.

First, you'll need to grab the Dash source right here: polygonflow.io/download-latest-source-build

This will download a ZIP file, which contains:

  • Dash: This folder holds the files copied from the installer. It allows you to distribute the plugin without installation, through version control or a shared folder.

  • GraphNUnrealPlugin: This directory contains the C++ code necessary for integrating Dash into your custom engine build.

  • 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.

Building from Source

  1. Create a new Unreal C++ project

  2. Place the plugin into the Plugins folder of the project (create Plugin folder if it doesn’t exist yet). Result must be Plugins\\GraphNUnrealPlugin

  3. Copy the init_unreal.py shipped in the ZIP inside your project Content\\Python to allow the plugin to see Dash and its libraries, or you will get errors like ModuleNotFoundError: No module named 'GN'

  1. 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.

  2. Generate the visual studio project by right clicking in explorer on the .uproject file and selecting “Generate Visual Studio project files”

  1. Open the solution in Visual Studio or Rider and build it from there Find more information at the official documentation.

Use From Python

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.

  1. Open Unreal Engine and activate the plugin. It will activate Python Script Plugin and Editor scripting utilities plugins

  2. Go to project settings and enable developer mode

  1. Restart the editor.

  2. Check PROJECT_ROOT/Intermediate/PythonStub/unreal.py

  3. Add this file to your IDE to have the auto complete with the exported functions

FAQ

Do we need to compile the plugin on every machine?

No. You can distribute the pre-built C++ plugin on every machine using the same engine version you built against.

Do we need to install the plugin on every artist machine?

In order to run, Dash will need 2 components:

  • The Unreal C++ plugin

  • The Dash Python plugin

You can install the plugin on every artist machine, or distribute it directly with your version control, alongside the custom built C++ plugin.

What are the dependencies of the C++ plugin?

Following a list of the dependencies of the C++ layer:

Memory lib from microsoft (unreal uses it too)

  • mimalloc.lib

Dash Dependencies (Internal)

  • IndexMeshSymbols.lib

  • _math.lib

  • _array.lib

  • meshoptimizer.lib

  • _gnmesh.lib

What are the dependencies of Dash Python plugin?

Dash relies on a series of internal and third party libraries. The following list might change, but at the moment of writing these are the third party libraries used:

  • abseil

  • eigen

  • 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.

Will I need to recompile the plugin each new release?

Yes. If you are using a custom Unreal version, you will be in charge of recompiling the C++ plugin and redistribute the matching Dash Python plugin alongside with it. Once you already have the structure in place, it should be as simple as regenerate the project and build. Make sure to update also the init_unreal.py as it might change between releases.

When a new version of Dash is available, you will get a notification directly in Dash, and once you get that you will find the latest ZIP to download here always: https://www.polygonflow.io/download-latest-source-build

When compiling the C++ plugin I get some warnings, how can I solve it?

Dash is constantly evolving, and our top priority is to give artists and studios constant updates and new tools to improve their workflow. This rapid pace of development will sometimes leave behind some compile warnings which we are aware of, and are not critical. They might get fixed while moving forward, but if you have a zero warning policy unfortunately you might have to address the ones you get.

How many Enterprise Seats do I need?

You only need seats for those artists who want access to the tools and the ability to adjust parameters. You do not need licenses for Build Machines either.

Last updated

Logo

Polygonflow Dash's Documentation

Visit our FAQ