https://github.com/mob-sakai/simplebuildinterface
A simple build interface for Unity CLI. Support all platforms without executeMethod option.
https://github.com/mob-sakai/simplebuildinterface
build cli unity3d upm-package
Last synced: 8 months ago
JSON representation
A simple build interface for Unity CLI. Support all platforms without executeMethod option.
- Host: GitHub
- URL: https://github.com/mob-sakai/simplebuildinterface
- Owner: mob-sakai
- License: mit
- Created: 2020-11-09T06:29:16.000Z (over 5 years ago)
- Default Branch: main
- Last Pushed: 2024-01-06T23:51:40.000Z (over 2 years ago)
- Last Synced: 2025-01-31T03:55:40.018Z (over 1 year ago)
- Topics: build, cli, unity3d, upm-package
- Language: C#
- Homepage:
- Size: 40 KB
- Stars: 25
- Watchers: 4
- Forks: 1
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- Contributing: CONTRIBUTING.md
- Funding: .github/FUNDING.yml
- License: LICENSE.md
- Code of conduct: CODE_OF_CONDUCT.md
Awesome Lists containing this project
README
Simple Build Interface for Unity CLI
===
[](https://openupm.com/packages/com.coffee.simple-build-interface/)
[](https://github.com/mob-sakai/SimpleBuildInterface/releases)
[](https://github.com/mob-sakai/SimpleBuildInterface/releases) [](https://github.com/mob-sakai/SimpleBuildInterface/blob/master/LICENSE.txt)
[](http://makeapullrequest.com)


[](https://mob-sakai.testspace.com/spaces/130862)
[](https://mob-sakai.testspace.com/spaces/130862/current/Code%20Coverage/Code%20Coverage")
<< [Description](#Description) | [Installation](#installation) | [Usage](#usage) | [Development Note](#development-note) | [Change log](https://github.com/mob-sakai/SimpleBuildInterface/blob/master/CHANGELOG.md) >>
## Description
Unity supports to build for standalone platforms (Windows/macOS/Linux) from the command line.
```sh
# Lunch Unity to ...
/Applications/Unity/Unity.app/Contents/MacOS/Unity -batchmode -projectPath .
# build for specific standalone platform.
... -buildLinux64Player
... -buildOSXUniversalPlayer
... -buildWindowsPlayer
... -buildWindows64Player
```
This plugin provides a simple build interface to build all platforms **without `executeMethod` option**.
```sh
# Lunch Unity to ...
/Applications/Unity/Unity.app/Contents/MacOS/Unity -batchmode -projectPath .
# build for specific platform.
... -build -buildTarget WebGL
```
This command is equivalent to run `Build Settings > Build` on WebGL platform.

See [Usage](#usage) for details.
## Installation
### Requirement

### Using OpenUPM
This package is available on [OpenUPM](https://openupm.com).
You can install it via [openupm-cli](https://github.com/openupm/openupm-cli).
```
openupm add com.coffee.simple-build-interface
```
### Using Git
Find `Packages/manifest.json` in your project and add a line to `dependencies` field.
```
"com.coffee.simple-build-interface": "https://github.com/mob-sakai/SimpleBuildInterface.git"
```
To update the package, change suffix `#{version}` to the target version.
* e.g. `"com.coffee.simple-build-interface": "https://github.com/mob-sakai/SimpleBuildInterface.git#1.0.0",`
Or, use [UpmGitExtension](https://github.com/mob-sakai/UpmGitExtension) to install and update the package.
## Usage
```sh
# Lunch Unity to ...
/Applications/Unity/Unity.app/Contents/MacOS/Unity -batchmode -projectPath .
# build for current platform.
... -build
# build for specific platform.
... -build -buildTarget WebGL
# build with full-option.
... -build -buildTarget WebGL \
-out "production_build" \
-buildOptions "Development;!ConnectWithProfiler" \
-scenes "Level1;!EditorLevel1" \
-assetBundleManifestPath "AssetBundles/manifest" \
-extraScriptingDefines "EXTRA_SYMBOL;EXTRA_SYMBOL2"
```
| Option | Description |
| -------------------------------------- | ---------------------------------------------------------------------------------- |
| `-build` | **(Required)**
Build the project for current. platform |
| `-out ` | Output path
Default: `{BuildTarget}_Build`. |
| `-buildOptions ` | Add/remove [BuildOptions][opt] to build. [1](#fn1) [2](#fn2) |
| `-scenes ` | Add/remove scene names to build. [1](#fn1) [2](#fn2) |
| `-assetBundleManifestPath ` | Path to AssetBundleManifest. |
| `-extraScriptingDefines ` | Extra scripting defines for building player. [1](#fn1) |
1: Multiple values must be separated by a semi-colon (`;`) or a comma (`,`).
2: Prefix 'not' (`!`) to exclude the specified value.
[opt]: https://docs.unity3d.com/ScriptReference/BuildOptions.html
## Development Note
### Execution order
1. `InitializeOnLoad`
2. `InitializeOnLoadMethod`
3. `DidReloadScripts`
4. The method specified by the `-executeMethod` option
5. **Build by this plugin**
You can customize the build parameters using any method you like. :)
## Contributing
### Issues
Issues are very valuable to this project.
- Ideas are a valuable source of contributions others can make
- Problems show where this project is lacking
- With a question you show where contributors can improve the user experience
### Pull Requests
Pull requests are, a great way to get your ideas into this repository.
See [sandbox/README.md](https://github.com/mob-sakai/SimpleBuildInterface/blob/sandbox/README.md).
### Support
This is an open source project that I am developing in my spare time.
If you like it, please support me.
With your support, I can spend more time on development. :)
[](https://www.patreon.com/join/mob_sakai?)
[](https://github.com/users/mob-sakai/sponsorship)
## License
* MIT
## Author
*  [mob-sakai](https://github.com/mob-sakai) [](https://twitter.com/intent/follow?screen_name=mob_sakai) 
## See Also
* GitHub page : https://github.com/mob-sakai/SimpleBuildInterface
* Releases : https://github.com/mob-sakai/SimpleBuildInterface/releases
* Issue tracker : https://github.com/mob-sakai/SimpleBuildInterface/issues
* Change log : https://github.com/mob-sakai/SimpleBuildInterface/blob/master/CHANGELOG.md