Version: 2021.2
Universal Windows Platform: Deployment
Windows Device Portal Deployment

Universal Windows Platform (UWP) build settings

To create a build for UWP, go to Build Settings (menu: File > Build Settings). In the Platform list, select Universal Windows PlatformAn IAP feature that supports Microsoft’s In App Purchase simulator, which allows you to test IAP purchase flows on devices before publishing your application. More info
See in Glossary
, then select the Switch Platform button.

Note: Universal Windows Platform only shows in the Platform list if you’re using Unity on a Windows computer.

Unity doesn’t support Windows Phone development.

Building UWP applications with Unity

The main workflow when building a game or application for UWP using Unity is as follows:

When you click Build in the Build Settings window:

  1. Unity generates and exports a Visual Studio Project.

  2. Open the generated Project’s .sln file in Visual Studio.

  3. Use Visual Studio to build your final application.

When you click Build And Run, Unity builds an app executable that can run independently.

UWP Build Settings

Use these settings to configure how Unity builds your application.

Setting Function
Target Device Choose from the following options to build your app for any device, or select a specific device: Any device, PC, Mobile, or HoloLens.
Architecture Select the type of CPU to build for (only applies to Build And Run).
x64 64-bit CPU.
x86 32-bit CPU.
ARM 32-bit ARM CPU.
ARM64 64-bit ARM CPU.
Build Type Select the type of Visual Studio project or build to generate.
XAML Project Visual Studio project that integrates Unity within a full XAML environment. This results in some performance loss, but lets you use XAML elements in your application.
D3D Project Visual Studio project that integrates Unity in a basic app window. This results in the best performance.
Executable Only Hosts the project in a pre-built executable for rapid iteration. This setting has the quickest iteration speed because it doesn’t require you to build the generated project in Visual Studio. It offers the same performance as D3D Project builds.
Target SDK Version The Windows 10 SDK installed on the local PC to build the application against. This setting is only relevant when calling Windows 10 APIs directly from scripts.

Note: Unity requires the base Windows 10 SDK version 10.0.10240.0 or higher for building UWP apps, and doesn’t support Windows 8/8.1 SDKs.
Minimum Platform Version Minimum Windows 10 release version required to run the app.

Note: This setting is only relevant if you’re using Windows features or APIs that aren’t available in the base Windows 10 version (10.0.10240).
Visual Studio Version Target a specific Visual Studio release if you have multiple versions installed.
Build and Run on Select the target device or transport to deploy and launch the app during Build And Run.
Local Machine Deploys and launches the app on the local PC.
Remote Device (via Device Portal) Deploys and launches the app to a connected device over the Device Portal transport.

To deploy over the Device Portal, you must enter the connection and authentication information in these additional fields:

- Device Portal Address (required)
- Device Portal Username (optional)
- Device Portal Password (optional)

For more information, see documentation on Windows Device Portal deployment.
Build Configuration Select the build type (only applies to Build And Run).
Note: These build configurations are the same as those available in the Visual Studio project that Unity generates.
Debug Produces a build that contains additional code you can use for debugging, and enables the ProfilerA window that helps you to optimize your game. It shows how much time is spent in the various areas of your game. For example, it can report the percentage of time spent rendering, animating, or in your game logic. More info
See in Glossary
for your build.
Release Produces a build that has debug code stripped out, and enables the Profiler for your build.
Master Produces a build that is fully optimized for release.
Copy References Disable this setting to allow the generated solution to reference Unity files from Unity’s installation folder instead of copying them to the build folder. This can save up to 10 GB of disk space, but you can’t copy the build folder to another PC. Unity also builds your application faster when you disable this setting.
Copy PDB files Enable this setting to include Microsoft program database (PDB) files in the built Standalone Player. PDB files contain debugging information for your application, but might increase the size of your Player. For more information, see documentation on Windows debugging.
Development BuildA development build includes debug symbols and enables the Profiler. More info
See in Glossary
A development build includes scripting debug symbols. When you select the Development Build setting, you can also select the Autoconnect Profiler, Script Debugging, and Scripts Only Build setting. It also enables the DEVELOPMENT_BUILD #define.

For more information about #define directives, see documentation on Platform dependent compilation.
Autoconnect Profiler Automatically connect the Profiler to the build. Only available if you enable the Development Build setting. For more information on the Profiler, see Profiler overview.
Deep Profiling When you enable Deep Profiling, Unity profiles all of your script code and records all function calls. This is useful to pinpoint performance issues with your game code. However, it uses a lot of memory and might not work with very complex scriptsA piece of code that allows you to create your own Components, trigger game events, modify Component properties over time and respond to user input in any way you like. More info
See in Glossary
. For more information, see documentation on deep profiling.
Script Debugging Attach script debuggers to the Player remotely. Only available if you enable the Development Build setting.
Scripts Only Build Enable this setting to build just the scripts in the current Project. Only available if you enable the Development Build setting.

Once enabled, Unity only rebuilds the scripts in your application, and leaves data files from a previously executed build intact. It significantly improves iteration times if you only change the code in your application.

Note: You need to build the entire Project once before you can use this setting.
Compression Method Compress the data in your Project at build time. This includes Assets, ScenesA Scene contains the environments and menus of your game. Think of each unique Scene file as a unique level. In each Scene, you place your environments, obstacles, and decorations, essentially designing and building your game in pieces. More info
See in Glossary
, Player settingsSettings that let you set various player-specific options for the final game built by Unity. More info
See in Glossary
, and GI data. Choose between the following methods:
Default Default compressionA method of storing data that reduces the amount of storage space it requires. See Texture Compression, Animation Compression, Audio Compression, Build Compression.
See in Glossary
is set to None.
LZ4 A fast compression format that is useful for development builds. LZ4 compression can significantly improve loading time of applications built with Unity. For more information, see BuildOptions.CompressWithLz4.
LZ4HC LZ4HC - A high compression variant of LZ4 that is slower to build but produces better results for release builds. LZ4HC compression can significantly improve loading time of applications built with Unity. For more information, see BuildOptions.CompressWithLz4HC.
Universal Windows Platform: Deployment
Windows Device Portal Deployment