/UniGame.UniBuild

Command based scriptable build pipeline for Unity 3D

Primary LanguageC#MIT LicenseMIT

UniBuild

Command based scriptable build pipeline for Unity 3D

How To Install

Unity Package Installation

Odin Inspector Asset recommended to usage with this Package (https://odininspector.com)

Add to your project manifiest by path [%UnityProject%]/Packages/manifiest.json these lines:

{
  "scopedRegistries": [
    {
      "name": "Unity",
      "url": "https://packages.unity.com",
      "scopes": [
        "com.unity"
      ]
    },
    {
      "name": "UniGame",
      "url": "http://packages.unigame.pro:4873/",
      "scopes": [
        "com.unigame"
      ]
    }
  ],
}

Open window Package Manager in Unity and install UniBuild

Configurations SO

Menu Items

All Build menu items auto-generated by your build configurations

All exists build pipeline configurations window

Auto generated content stored in: "Assets\UniGame.Generated\UniBuild\Editor"

Unity Cloud Build Methods

All Cloud methods auto-generated by your build configurations files

Commands

All build commands realize two type of API:

  • IUnityPreBuildCommand
  • IUnityPostBuildCommand

You can create your own command with two ways:

  1. Unity ScriptableObject command

In that case inherit your SO from - UnityBuildCommand . Scriptable Object Commands can be helpful when you want to share command between different pipelines and modify command parameters from single source

  1. Serializable Regular C# class

If you choose this way, then just realise Interface API - IUnityBuildCommand , no addition actions required

Additional commands

Some "ready to use" commands can be found at "UniGame Build Commands" package

  1. AddressableImporter Package commands (https://github.com/favoyang/unity-addressable-importer)
  2. Unity Addressables Commands (FTP upload support, Rebuild e.t.c)
  3. WebRequests Commands
  4. Folder & File commands
  5. FTP commands