/buildtool

A powerful automation tool for quickly and easily generating builds with Unity.

Primary LanguageC#MIT LicenseMIT

SuperUnityBuild

openupm

A powerful automation tool for quickly and easily generating builds with Unity.

Logo Screenshot

Unity Forums Thread | Documentation Wiki | OpenUPM package

SuperUnityBuild is a Unity utility that automates the process of generating builds. It's easy and quick enough to use on small apps, but it's also powerful and extensible enough to be extremely useful on larger projects. The key to this flexibility lies in SuperUnityBuild's configurable degrees of granularity and its BuildActions framework which allows additional operations to be added into the build process.

Features:

  • Manage and Build Multiple Versions - If you're targetting more than one platform or distribution storefront, the build process can quickly become very cumbersome with Unity's built in tools. SuperUnityBuild makes it easy to manage a wide array of build configurations targetting any number of versions, platforms, architectures, or distribution methods.
  • One-Click Batch Builds - Easily kick-off batch builds for all or a specific subset of your build configurations.
  • Expanded Build Capability - SuperUnityBuild offers many features not available in Unity's built in build workflow such as version number generation, and the BuildAction framework provides options for even more expanded build capabilities like automated file copying/moving, creating zip files, and building AssetBundles.
  • Quick Initial Setup - If all you need is the bare essentials, you can be up and running in minutes. SuperUnityBuild scales to fit your project's specific needs whether it be large or small.
  • Highly Extensible and Customizable - SuperUnityBuild's BuildAction framework provides simple hooks for adding in your own additional functionality.
  • Free and Open-Source - Some similar tools available only on the AssetStore are as much as $50+.

Basic Usage

Requires Unity 2020.3 or higher. Supports building for Windows, macOS, Linux, iOS, Android, UWP and WebGL.

Installation

Official releases of SuperUnityBuild can be installed via Unity Package Manager from the OpenUPM package registry. See https://openupm.com/packages/com.github.superunitybuild.buildtool/ for installation options.

You can also download the source zip of this repository and extract its contents into your Unity project's Packages directory to install SuperUnityBuild as an embedded package.

You may also want to install the optional BuildActions package to expand SuperUnityBuild's capabilities.

Upgrading from previous versions

When upgrading to a new major version, it is strongly recommended to remove all traces of the previous SuperUnityBuild installation by uninstalling the package, deleting the current Build Settings asset (stored in the Assets/SuperUnityBuild directory by default), restarting Unity, installing the new release and then allowing SuperUnityBuild to create a fresh Build Settings asset.

Upgrades to new patch or minor versions (i.e. versions without breaking changes) can be performed in-place by simply updating the package.

Setup

See Standard Usage in the wiki.

Customizing and Expanding

Creating BuildActions

See Build Actions in the wiki for details.

Command Line Interface

See Command Line Interface in the wiki.

Contributing

Bug reports, feature requests, and pull requests are welcome and appreciated.

Credits

Creator

Maintainer

Contributors

You can see a complete list of contributors at https://github.com/superunitybuild/buildtool/graphs/contributors

License

All code in this repository (buildtool) is made freely available under the MIT license. This essentially means you're free to use it however you like as long as you provide attribution.