License Unity3d Manual

All actions use a Unity installation, which needs to be activated.

“Krabl Mesh Processors” is an add-on for the Unity3D game engine to perform mesh processing. It con-sists of a C# mesh processing library and an editor extension which provides a mesh input processing workflow inside the Unity3D editor. Different kinds of mesh processors can be chained together right inside the Unity3D mesh inspector.

Unity differentiates their methods between personal and professional licenses.

Personal license

Mental model

  1. Request activation file for usage on GitHub
  2. Use that file to acquire a license
  3. Set the license as a secret

About the activation file

You may use theUnity - Request Activation Fileaction using below instructions.
The activation file uses machine identifiers and the Unity version number.All github virtual machines emit the same hardware ID.You cannot perform this step locally.

Acquiring an activation file

Create a file called .github/workflows/activation.yml and add a job to it.
To configure this action, add this step and set the id.
Commit and push your workflow definition.

Converting into a license

Follow these (one-time) steps for simple activation.
  • Download the manual activation file that now appeared as an artifact.
  • Visit license.unity3d.com and upload it.
  • You should now receive your license file (Unity_v20XX.x.ulf) as a download.
  • Open Github > <Your repository> > Settings > Secrets.
  • Create a secret called UNITY_LICENSE and copy the contents your license file into it.
Note: When changing Unity version, you may need to repeat the same process.

Professional license

  1. Open Github > <Your repository> > Settings > Secrets
  2. Create the following secrets;
    • UNITY_SERIAL - (Add the code that looks like XX-XXXX-XXXX-XXXX-XXXX-XXXX)
    • UNITY_EMAIL - (Add the email address that you use to login to Unity)
    • UNITY_PASSWORD - (Add the password that you use to login to Unity)

License Unity3d Manual Download

Optional steps

  • Verify your license usingActivate.
  • When using a pro license also useReturn Licenseto free up the license allocation after usage.
Note: Test runner and Builder already include these steps.

Next steps

You are now ready to start configuring these.

Note: This project is a “fork” of https://gitlab.com/gableroux/unity3d-gitlab-ci-example. More information available there.

This project is a PoC to run unity3d tests and builds inside a CI using gableroux/unity3d docker image. It currently creates builds for Windows, Linux, MacOS and webgl. The webgl build is published and accessible via the public artifact folder of your webgl job! This repository is hosted on multiple remotes to provide examples:

Table of Contentsgenerated with DocToc

License.unity3d/manual
  • Points of interest
  • How to run scripts manually

Getting started

If you don’t have a Unity project yet:

  1. Fork this project from github or gitlab
  2. Update the readme and remove undesired CI configurations
  3. Follow How to activate instructions
  4. Configure your CI

If you already have your own project:

  1. Copy desired CI file
  2. Update the Unity version according to your project version in the CI file. All versions are available at gableroux/unity3d docker image
  3. Follow How to activate instructions
  4. Configure your CI

Points of interest

This is probably what you’re looking for.

Build script

Script passed to the unity3d command line as argument to create builds

  • See BuildCommand.cs

CI Configuration

This project will only cover Circle-CI. If you need more information on the gitlab and Travis implementations, go to https://gitlab.com/gableroux/unity3d-gitlab-ci-example

Test files

How to activate

You’ll first need to run this locally. All you need is docker installed on your machine.

  1. Clone this project

  2. Pull the docker image and run bash inside, passing unity username and password to env

    hint: you should write this to a shell script and execute the shell script so you don’t have your credentials stored in your bash history. Also make sure you use your Unity3d email address for UNITY_USERNAME env var.

  3. In Unity docker container’s bash, run once like this, it will try to activate

  4. Wait for output that looks like this:

    If you get the following error:

    Can’t activate unity: No sufficient permissions while processing request HTTP error code 401

    Make sure your credentials are valid. You may try to disable 2FA in your account and try again. Once done, you should enable 2FA again for security reasons. See #11 for more details.

  5. Copy xml content and save as unity3d.alf

  6. Open https://license.unity3d.com/manual and answer questions

  7. Upload unity3d.alf for manual activation

  8. Download Unity_v2018.x.ulf

  9. Open the Unity_v2018.x.ulf file in your favorite text editor and convert it to Base64 (ex.: here: https://www.base64encode.org/)

  10. Copy the base64 data to Circle CI’s environment variable UNITY_LICENSE_CONTENT.

How to add build targets

Supported build targets can be found here

How to run scripts manually

License Unity3d Manual

You can execute the local scripts and specify the path of your Unity executable using UNITY_EXECUTABLE. You may try this in your project before you setup the whole CI so you confirm it works with your current unity version 👍 . All you need to do first is to insert the scripts from https://github.com/qwertyuu/unity-ci-build-scripts in Assets/Editor into your own Assets folder and follow the commands below.

Test

License Unity3d Manual Key

Build

License Unity3d Manual Guide

Shameless plug

License Unity3d Manual Model

Gabriel Lebreton and I made this for free as a gift to the video game community so if this tool helped you, I would be very happy if you’d like to support me, support Totema Studio on Patreon: 🍻

License.unity3d/manual

License

License Unity3d Manual Transmission

MIT © Raphaël Côté