mirror of
https://github.com/game-ci/unity-builder.git
synced 2026-02-02 22:59:06 +08:00
Compare commits
2 Commits
fix/androi
...
check-inte
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
03391a19f1 | ||
|
|
fdcb37075f |
@@ -2,4 +2,4 @@
|
|||||||
*
|
*
|
||||||
|
|
||||||
# Files required for the action
|
# Files required for the action
|
||||||
!dist/
|
!action/
|
||||||
|
|||||||
@@ -6,7 +6,7 @@ end_of_line = lf
|
|||||||
indent_size = 2
|
indent_size = 2
|
||||||
indent_style = space
|
indent_style = space
|
||||||
insert_final_newline = true
|
insert_final_newline = true
|
||||||
max_line_length = 120
|
max_line_length = 100
|
||||||
tab_width = 2
|
tab_width = 2
|
||||||
trim_trailing_whitespace = true
|
trim_trailing_whitespace = true
|
||||||
|
|
||||||
|
|||||||
@@ -1,4 +1,2 @@
|
|||||||
dist/
|
**/node_modules/**
|
||||||
lib/
|
**/action/**
|
||||||
node_modules/
|
|
||||||
jest.config.js
|
|
||||||
|
|||||||
103
.eslintrc.json
103
.eslintrc.json
@@ -1,100 +1,21 @@
|
|||||||
{
|
{
|
||||||
"plugins": [
|
"parser": "babel-eslint",
|
||||||
"jest",
|
|
||||||
"@typescript-eslint",
|
|
||||||
"prettier",
|
|
||||||
"unicorn"
|
|
||||||
],
|
|
||||||
"extends": [
|
|
||||||
"plugin:unicorn/recommended",
|
|
||||||
"plugin:github/recommended",
|
|
||||||
"plugin:prettier/recommended"
|
|
||||||
],
|
|
||||||
"parser": "@typescript-eslint/parser",
|
|
||||||
"parserOptions": {
|
|
||||||
"ecmaVersion": 2020,
|
|
||||||
"sourceType": "module",
|
|
||||||
"extraFileExtensions": [
|
|
||||||
".mjs"
|
|
||||||
],
|
|
||||||
"ecmaFeatures": {
|
|
||||||
"impliedStrict": true
|
|
||||||
},
|
|
||||||
"project": "./tsconfig.json"
|
|
||||||
},
|
|
||||||
"env": {
|
"env": {
|
||||||
"node": true,
|
"node": true,
|
||||||
"es6": true,
|
"es6": true,
|
||||||
"jest/globals": true
|
"jest": true
|
||||||
},
|
},
|
||||||
|
"parserOptions": {
|
||||||
|
"ecmaVersion": 2020,
|
||||||
|
"ecmaFeatures": {
|
||||||
|
"impliedStrict": true
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"extends": ["airbnb", "plugin:unicorn/recommended", "prettier"],
|
||||||
|
"plugins": ["react", "jsx-a11y", "import", "prettier", "flowtype", "unicorn"],
|
||||||
|
"settings": { "react": { "version": "latest" } },
|
||||||
"rules": {
|
"rules": {
|
||||||
// Error out for code formatting errors
|
|
||||||
"prettier/prettier": "error",
|
"prettier/prettier": "error",
|
||||||
// Namespaces or sometimes needed
|
"import/no-extraneous-dependencies": 0
|
||||||
"import/no-namespace": "off",
|
|
||||||
// Properly format comments
|
|
||||||
"spaced-comment": [
|
|
||||||
"error",
|
|
||||||
"always"
|
|
||||||
],
|
|
||||||
"lines-around-comment": [
|
|
||||||
"error",
|
|
||||||
{
|
|
||||||
"beforeBlockComment": true,
|
|
||||||
"beforeLineComment": true,
|
|
||||||
"allowBlockStart": true,
|
|
||||||
"allowObjectStart": true,
|
|
||||||
"allowArrayStart": true,
|
|
||||||
"allowClassStart": true,
|
|
||||||
"ignorePattern": "pragma|ts-ignore"
|
|
||||||
}
|
|
||||||
],
|
|
||||||
// Mandatory spacing
|
|
||||||
"padding-line-between-statements": [
|
|
||||||
"error",
|
|
||||||
{
|
|
||||||
"blankLine": "always",
|
|
||||||
"prev": "*",
|
|
||||||
"next": "return"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"blankLine": "always",
|
|
||||||
"prev": "directive",
|
|
||||||
"next": "*"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"blankLine": "any",
|
|
||||||
"prev": "directive",
|
|
||||||
"next": "directive"
|
|
||||||
}
|
|
||||||
],
|
|
||||||
// Enforce camelCase
|
|
||||||
"camelcase": "error",
|
|
||||||
// Allow forOfStatements
|
|
||||||
"no-restricted-syntax": [
|
|
||||||
"error",
|
|
||||||
"ForInStatement",
|
|
||||||
"LabeledStatement",
|
|
||||||
"WithStatement"
|
|
||||||
],
|
|
||||||
// Continue is viable in forOf loops in generators
|
|
||||||
"no-continue": "off",
|
|
||||||
// From experience, named exports are almost always desired. I got tired of this rule
|
|
||||||
"import/prefer-default-export": "off",
|
|
||||||
// Unused vars are useful to keep method signatures consistent and documented
|
|
||||||
"@typescript-eslint/no-unused-vars": "off",
|
|
||||||
// For this project only use kebab-case
|
|
||||||
"unicorn/filename-case": [
|
|
||||||
"error",
|
|
||||||
{
|
|
||||||
"cases": {
|
|
||||||
"kebabCase": true
|
|
||||||
}
|
|
||||||
}
|
|
||||||
],
|
|
||||||
// Allow Array.from(set) mitigate TS2569 which would require '--downlevelIteration'
|
|
||||||
"unicorn/prefer-spread": "off",
|
|
||||||
// Temp disable to prevent mixing changes with other PRs
|
|
||||||
"i18n-text/no-en": "off"
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
6
.gitattributes
vendored
6
.gitattributes
vendored
@@ -1,6 +0,0 @@
|
|||||||
[attr]generated-code-file text eol=lf -diff linguist-generated=true
|
|
||||||
[attr]generated-binary-file -text -diff linguist-generated=true
|
|
||||||
|
|
||||||
dist/index* generated-code-file
|
|
||||||
dist/licenses* generated-code-file
|
|
||||||
dist/sourcemap* generated-code-file
|
|
||||||
12
.github/FUNDING.yml
vendored
12
.github/FUNDING.yml
vendored
@@ -1,12 +0,0 @@
|
|||||||
# These are supported funding model platforms
|
|
||||||
|
|
||||||
github: game-ci
|
|
||||||
patreon: # Replace with a single Patreon username
|
|
||||||
open_collective: # replace with a single OpenCollective username
|
|
||||||
ko_fi: # Replace with a single Ko-fi username
|
|
||||||
tidelift: # Replace with a single Tidelift platform-name/package-name e.g., npm/babel
|
|
||||||
community_bridge: # Replace with a single Community Bridge project-name e.g., cloud-foundry
|
|
||||||
liberapay: # Replace with a single Liberapay username
|
|
||||||
issuehunt: # Replace with a single IssueHunt username
|
|
||||||
otechie: # Replace with a single Otechie username
|
|
||||||
custom: # Replace with up to 4 custom sponsorship URLs e.g., ['link1', 'link2']
|
|
||||||
25
.github/ISSUE_TEMPLATE/bug_report.md
vendored
25
.github/ISSUE_TEMPLATE/bug_report.md
vendored
@@ -1,25 +0,0 @@
|
|||||||
---
|
|
||||||
name: Bug report
|
|
||||||
about: Create a report to help us improve
|
|
||||||
title: ''
|
|
||||||
labels: bug
|
|
||||||
assignees: ''
|
|
||||||
---
|
|
||||||
|
|
||||||
**Bug description**
|
|
||||||
|
|
||||||
<!--A clear and concise description of what the bug is.-->
|
|
||||||
|
|
||||||
**How to reproduce**
|
|
||||||
|
|
||||||
<!--Steps to reproduce the behavior:-->
|
|
||||||
|
|
||||||
-
|
|
||||||
|
|
||||||
**Expected behavior**
|
|
||||||
|
|
||||||
<!--A clear and concise description of what you expected to happen.-->
|
|
||||||
|
|
||||||
**Additional details**
|
|
||||||
|
|
||||||
<!--Please add context, links, reasons, screenshots, etc.-->
|
|
||||||
5
.github/ISSUE_TEMPLATE/config.yml
vendored
5
.github/ISSUE_TEMPLATE/config.yml
vendored
@@ -1,5 +0,0 @@
|
|||||||
blank_issues_enabled: false
|
|
||||||
contact_links:
|
|
||||||
- name: Discuss on Discord
|
|
||||||
url: https://game.ci/discord
|
|
||||||
about: Join our Discord community
|
|
||||||
23
.github/ISSUE_TEMPLATE/feature_request.md
vendored
23
.github/ISSUE_TEMPLATE/feature_request.md
vendored
@@ -1,23 +0,0 @@
|
|||||||
---
|
|
||||||
name: Feature request
|
|
||||||
about: Suggest an improvement, or a new feature
|
|
||||||
title: ''
|
|
||||||
labels: enhancement
|
|
||||||
assignees: ''
|
|
||||||
---
|
|
||||||
|
|
||||||
**Context**
|
|
||||||
|
|
||||||
<!--Please describe a proper context-->
|
|
||||||
|
|
||||||
**Suggested solution**
|
|
||||||
|
|
||||||
<!--Tell us what you would suggest-->
|
|
||||||
|
|
||||||
**Considered alternatives**
|
|
||||||
|
|
||||||
<!--Please add any alternative solutions that you have considered-->
|
|
||||||
|
|
||||||
**Additional details**
|
|
||||||
|
|
||||||
<!--Please add context, links, reasons, screenshots, etc.-->
|
|
||||||
7
.github/ISSUE_TEMPLATE/other.md
vendored
7
.github/ISSUE_TEMPLATE/other.md
vendored
@@ -1,7 +0,0 @@
|
|||||||
---
|
|
||||||
name: Other
|
|
||||||
about: Everything else
|
|
||||||
title: ''
|
|
||||||
labels: ''
|
|
||||||
assignees: ''
|
|
||||||
---
|
|
||||||
14
.github/pull_request_template.md
vendored
14
.github/pull_request_template.md
vendored
@@ -1,14 +0,0 @@
|
|||||||
#### Changes
|
|
||||||
|
|
||||||
- ...
|
|
||||||
|
|
||||||
#### Checklist
|
|
||||||
|
|
||||||
<!-- please check all items and add your own -->
|
|
||||||
|
|
||||||
- [x] Read the contribution [guide](https://github.com/game-ci/unity-builder/blob/main/CONTRIBUTING.md) and accept the
|
|
||||||
[code](https://github.com/game-ci/unity-builder/blob/main/CODE_OF_CONDUCT.md) of conduct
|
|
||||||
- [ ] Docs (If new inputs or outputs have been added or changes to behavior that should be documented. Please make
|
|
||||||
a PR in the [documentation repo](https://github.com/game-ci/documentation))
|
|
||||||
- [ ] Readme (updated or not needed)
|
|
||||||
- [ ] Tests (added, updated or not needed)
|
|
||||||
49
.github/workflows/activation.yml
vendored
49
.github/workflows/activation.yml
vendored
@@ -1,20 +1,29 @@
|
|||||||
name: Acquire activation file
|
#name: Acquire activation file
|
||||||
|
#
|
||||||
on:
|
#on: [push]
|
||||||
workflow_dispatch:
|
#
|
||||||
|
#jobs:
|
||||||
jobs:
|
# activation:
|
||||||
activation:
|
# name: Request manual activation file (${{ matrix.unityVersion }}) 🔑
|
||||||
name: Request manual activation file 🔑
|
# runs-on: ubuntu-latest
|
||||||
runs-on: ubuntu-latest
|
# strategy:
|
||||||
steps:
|
# fail-fast: false
|
||||||
# Request manual activation file
|
# matrix:
|
||||||
- name: Unity - Request Activation File
|
# unityVersion:
|
||||||
id: requestActivationFile
|
# - 2019.2.11f1
|
||||||
uses: game-ci/unity-request-activation-file@v2.0-alpha-1
|
# - 2019.3.15f1
|
||||||
- name: Upload activation file
|
#
|
||||||
uses: actions/upload-artifact@v2
|
# steps:
|
||||||
with:
|
# # Request manual activation file
|
||||||
name: ${{ steps.requestActivationFile.outputs.filePath }}
|
# - name: Request manual activation file
|
||||||
path: ${{ steps.requestActivationFile.outputs.filePath }}
|
# id: getManualLicenseFile
|
||||||
retention-days: 3
|
# uses: webbertakken/unity-request-manual-activation-file@v1.1
|
||||||
|
# with:
|
||||||
|
# unityVersion: ${{ matrix.unityVersion }}
|
||||||
|
#
|
||||||
|
# # Upload artifact (Unity_v20XX.X.XXXX.alf)
|
||||||
|
# - name: Expose as artifact
|
||||||
|
# uses: actions/upload-artifact@v1
|
||||||
|
# with:
|
||||||
|
# name: ${{ steps.getManualLicenseFile.outputs.filePath }}
|
||||||
|
# path: ${{ steps.getManualLicenseFile.outputs.filePath }}
|
||||||
|
|||||||
80
.github/workflows/build-tests-mac.yml
vendored
80
.github/workflows/build-tests-mac.yml
vendored
@@ -1,80 +0,0 @@
|
|||||||
name: Builds - MacOS
|
|
||||||
|
|
||||||
on:
|
|
||||||
workflow_dispatch:
|
|
||||||
push:
|
|
||||||
branches:
|
|
||||||
- main
|
|
||||||
|
|
||||||
concurrency:
|
|
||||||
group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }}
|
|
||||||
cancel-in-progress: true
|
|
||||||
|
|
||||||
jobs:
|
|
||||||
buildForAllPlatformsWindows:
|
|
||||||
name: ${{ matrix.targetPlatform }} on ${{ matrix.unityVersion }}
|
|
||||||
runs-on: macos-latest
|
|
||||||
strategy:
|
|
||||||
fail-fast: false
|
|
||||||
matrix:
|
|
||||||
projectPath:
|
|
||||||
- test-project
|
|
||||||
unityVersion:
|
|
||||||
- 2021.3.29f1
|
|
||||||
- 2022.1.24f1
|
|
||||||
- 2022.2.21f1
|
|
||||||
- 2022.3.7f1
|
|
||||||
- 2023.1.8f1
|
|
||||||
targetPlatform:
|
|
||||||
- StandaloneOSX # Build a MacOS executable
|
|
||||||
|
|
||||||
steps:
|
|
||||||
###########################
|
|
||||||
# Checkout #
|
|
||||||
###########################
|
|
||||||
- uses: actions/checkout@v3
|
|
||||||
with:
|
|
||||||
lfs: true
|
|
||||||
|
|
||||||
###########################
|
|
||||||
# Cache #
|
|
||||||
###########################
|
|
||||||
- uses: actions/cache@v3
|
|
||||||
with:
|
|
||||||
path: ${{ matrix.projectPath }}/Library
|
|
||||||
key: Library-${{ matrix.projectPath }}-macos-${{ matrix.targetPlatform }}
|
|
||||||
restore-keys: |
|
|
||||||
Library-${{ matrix.projectPath }}-macos-
|
|
||||||
Library-
|
|
||||||
|
|
||||||
###########################
|
|
||||||
# Set Scripting Backend #
|
|
||||||
###########################
|
|
||||||
- name: Set Scripting Backend To il2cpp
|
|
||||||
run: |
|
|
||||||
mv -f "./test-project/ProjectSettings/ProjectSettingsIl2cpp.asset" "./test-project/ProjectSettings/ProjectSettings.asset"
|
|
||||||
|
|
||||||
###########################
|
|
||||||
# Build #
|
|
||||||
###########################
|
|
||||||
- uses: ./
|
|
||||||
env:
|
|
||||||
UNITY_EMAIL: ${{ secrets.UNITY_EMAIL }}
|
|
||||||
UNITY_PASSWORD: ${{ secrets.UNITY_PASSWORD }}
|
|
||||||
UNITY_SERIAL: ${{ secrets.UNITY_SERIAL }}
|
|
||||||
with:
|
|
||||||
projectPath: ${{ matrix.projectPath }}
|
|
||||||
unityVersion: ${{ matrix.unityVersion }}
|
|
||||||
targetPlatform: ${{ matrix.targetPlatform }}
|
|
||||||
customParameters: -profile SomeProfile -someBoolean -someValue exampleValue
|
|
||||||
# We use dirty build because we are replacing the default project settings file above
|
|
||||||
allowDirtyBuild: true
|
|
||||||
|
|
||||||
###########################
|
|
||||||
# Upload #
|
|
||||||
###########################
|
|
||||||
- uses: actions/upload-artifact@v3
|
|
||||||
with:
|
|
||||||
name: Build MacOS (${{ matrix.unityVersion }})
|
|
||||||
path: build
|
|
||||||
retention-days: 14
|
|
||||||
110
.github/workflows/build-tests-ubuntu.yml
vendored
110
.github/workflows/build-tests-ubuntu.yml
vendored
@@ -1,110 +0,0 @@
|
|||||||
name: Builds - Ubuntu
|
|
||||||
|
|
||||||
on:
|
|
||||||
workflow_dispatch:
|
|
||||||
push:
|
|
||||||
branches:
|
|
||||||
- main
|
|
||||||
pull_request:
|
|
||||||
paths-ignore:
|
|
||||||
- '.github/**'
|
|
||||||
|
|
||||||
concurrency:
|
|
||||||
group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }}
|
|
||||||
cancel-in-progress: true
|
|
||||||
|
|
||||||
env:
|
|
||||||
UNITY_LICENSE:
|
|
||||||
"<?xml version=\"1.0\" encoding=\"UTF-8\"?><root>\n <License
|
|
||||||
id=\"Terms\">\n <MachineBindings>\n <Binding Key=\"1\"
|
|
||||||
Value=\"576562626572264761624c65526f7578\"/>\n <Binding Key=\"2\"
|
|
||||||
Value=\"576562626572264761624c65526f7578\"/>\n </MachineBindings>\n <MachineID
|
|
||||||
Value=\"D7nTUnjNAmtsUMcnoyrqkgIbYdM=\"/>\n <SerialHash
|
|
||||||
Value=\"2033b8ac3e6faa3742ca9f0bfae44d18f2a96b80\"/>\n <Features>\n <Feature
|
|
||||||
Value=\"33\"/>\n <Feature Value=\"1\"/>\n <Feature Value=\"12\"/>\n <Feature
|
|
||||||
Value=\"2\"/>\n <Feature Value=\"24\"/>\n <Feature Value=\"3\"/>\n <Feature
|
|
||||||
Value=\"36\"/>\n <Feature Value=\"17\"/>\n <Feature Value=\"19\"/>\n <Feature
|
|
||||||
Value=\"62\"/>\n </Features>\n <DeveloperData
|
|
||||||
Value=\"AQAAAEY0LUJHUlgtWEQ0RS1aQ1dWLUM1SlctR0RIQg==\"/>\n <SerialMasked
|
|
||||||
Value=\"F4-BGRX-XD4E-ZCWV-C5JW-XXXX\"/>\n <StartDate Value=\"2021-02-08T00:00:00\"/>\n <UpdateDate
|
|
||||||
Value=\"2021-02-09T00:34:57\"/>\n <InitialActivationDate
|
|
||||||
Value=\"2021-02-08T00:34:56\"/>\n <LicenseVersion Value=\"6.x\"/>\n <ClientProvidedVersion
|
|
||||||
Value=\"2018.4.30f1\"/>\n <AlwaysOnline Value=\"false\"/>\n <Entitlements>\n <Entitlement
|
|
||||||
Ns=\"unity_editor\" Tag=\"UnityPersonal\" Type=\"EDITOR\"
|
|
||||||
ValidTo=\"9999-12-31T00:00:00\"/>\n <Entitlement Ns=\"unity_editor\" Tag=\"DarkSkin\"
|
|
||||||
Type=\"EDITOR_FEATURE\" ValidTo=\"9999-12-31T00:00:00\"/>\n </Entitlements>\n </License>\n<Signature
|
|
||||||
xmlns=\"http://www.w3.org/2000/09/xmldsig#\"><SignedInfo><CanonicalizationMethod
|
|
||||||
Algorithm=\"http://www.w3.org/TR/2001/REC-xml-c14n-20010315#WithComments\"/><SignatureMethod
|
|
||||||
Algorithm=\"http://www.w3.org/2000/09/xmldsig#rsa-sha1\"/><Reference URI=\"#Terms\"><Transforms><Transform
|
|
||||||
Algorithm=\"http://www.w3.org/2000/09/xmldsig#enveloped-signature\"/></Transforms><DigestMethod
|
|
||||||
Algorithm=\"http://www.w3.org/2000/09/xmldsig#sha1\"/><DigestValue>m0Db8UK+ktnOLJBtHybkfetpcKo=</DigestValue></Reference></SignedInfo><SignatureValue>o/pUbSQAukz7+ZYAWhnA0AJbIlyyCPL7bKVEM2lVqbrXt7cyey+umkCXamuOgsWPVUKBMkXtMH8L\n5etLmD0getWIhTGhzOnDCk+gtIPfL4jMo9tkEuOCROQAXCci23VFscKcrkB+3X6h4wEOtA2APhOY\nB+wvC794o8/82ffjP79aVAi57rp3Wmzx+9pe9yMwoJuljAy2sc2tIMgdQGWVmOGBpQm3JqsidyzI\nJWG2kjnc7pDXK9pwYzXoKiqUqqrut90d+kQqRyv7MSZXR50HFqD/LI69h68b7P8Bjo3bPXOhNXGR\n9YCoemH6EkfCJxp2gIjzjWW+l2Hj2EsFQi8YXw==</SignatureValue></Signature></root>"
|
|
||||||
|
|
||||||
jobs:
|
|
||||||
buildForAllPlatformsUbuntu:
|
|
||||||
name: ${{ matrix.targetPlatform }} on ${{ matrix.unityVersion }}
|
|
||||||
runs-on: ubuntu-latest
|
|
||||||
strategy:
|
|
||||||
fail-fast: false
|
|
||||||
matrix:
|
|
||||||
providerStrategy:
|
|
||||||
# - local-docker
|
|
||||||
- local
|
|
||||||
projectPath:
|
|
||||||
- test-project
|
|
||||||
unityVersion:
|
|
||||||
- 2021.3.29f1
|
|
||||||
- 2022.1.24f1
|
|
||||||
- 2022.2.21f1
|
|
||||||
- 2022.3.7f1
|
|
||||||
- 2023.1.8f1
|
|
||||||
targetPlatform:
|
|
||||||
- StandaloneOSX # Build a macOS standalone (Intel 64-bit) with mono backend.
|
|
||||||
- StandaloneWindows64 # Build a Windows 64-bit standalone with mono backend.
|
|
||||||
- StandaloneLinux64 # Build a Linux 64-bit standalone with mono backend.
|
|
||||||
- iOS # Build an iOS player.
|
|
||||||
- Android # Build an Android .apk.
|
|
||||||
- WebGL # WebGL.
|
|
||||||
# - StandaloneWindows # Build a Windows standalone.
|
|
||||||
# - WSAPlayer # Build an Windows Store Apps player.
|
|
||||||
# - PS4 # Build a PS4 Standalone.
|
|
||||||
# - XboxOne # Build a Xbox One Standalone.
|
|
||||||
# - tvOS # Build to Apple's tvOS platform.
|
|
||||||
# - Switch # Build a Nintendo Switch player
|
|
||||||
steps:
|
|
||||||
###########################
|
|
||||||
# Checkout #
|
|
||||||
###########################
|
|
||||||
- uses: actions/checkout@v3
|
|
||||||
with:
|
|
||||||
lfs: true
|
|
||||||
|
|
||||||
###########################
|
|
||||||
# Cache #
|
|
||||||
###########################
|
|
||||||
- uses: actions/cache@v3
|
|
||||||
with:
|
|
||||||
path: ${{ matrix.projectPath }}/Library
|
|
||||||
key: Library-${{ matrix.projectPath }}-ubuntu-${{ matrix.targetPlatform }}
|
|
||||||
restore-keys: |
|
|
||||||
Library-${{ matrix.projectPath }}-ubuntu-
|
|
||||||
Library-
|
|
||||||
|
|
||||||
###########################
|
|
||||||
# Build #
|
|
||||||
###########################
|
|
||||||
- uses: ./
|
|
||||||
with:
|
|
||||||
projectPath: ${{ matrix.projectPath }}
|
|
||||||
unityVersion: ${{ matrix.unityVersion }}
|
|
||||||
targetPlatform: ${{ matrix.targetPlatform }}
|
|
||||||
customParameters: -profile SomeProfile -someBoolean -someValue exampleValue
|
|
||||||
providerStrategy: ${{ matrix.providerStrategy }}
|
|
||||||
|
|
||||||
###########################
|
|
||||||
# Upload #
|
|
||||||
###########################
|
|
||||||
- uses: actions/upload-artifact@v3
|
|
||||||
with:
|
|
||||||
name: Build Ubuntu (${{ matrix.unityVersion }})
|
|
||||||
path: build
|
|
||||||
retention-days: 14
|
|
||||||
132
.github/workflows/build-tests-windows.yml
vendored
132
.github/workflows/build-tests-windows.yml
vendored
@@ -1,132 +0,0 @@
|
|||||||
name: Builds - Windows
|
|
||||||
|
|
||||||
on:
|
|
||||||
workflow_dispatch:
|
|
||||||
push:
|
|
||||||
branches:
|
|
||||||
- main
|
|
||||||
|
|
||||||
concurrency:
|
|
||||||
group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }}
|
|
||||||
cancel-in-progress: true
|
|
||||||
|
|
||||||
jobs:
|
|
||||||
buildForAllPlatformsWindows:
|
|
||||||
name: ${{ matrix.targetPlatform }} on ${{ matrix.unityVersion }}
|
|
||||||
runs-on: windows-2019
|
|
||||||
strategy:
|
|
||||||
fail-fast: false
|
|
||||||
matrix:
|
|
||||||
projectPath:
|
|
||||||
- test-project
|
|
||||||
unityVersion:
|
|
||||||
- 2021.3.29f1
|
|
||||||
- 2022.1.24f1
|
|
||||||
- 2022.2.21f1
|
|
||||||
- 2022.3.7f1
|
|
||||||
- 2023.1.8f1
|
|
||||||
targetPlatform:
|
|
||||||
- StandaloneWindows64 # Build a Windows 64-bit standalone.
|
|
||||||
- StandaloneWindows # Build a Windows 32-bit standalone.
|
|
||||||
- WSAPlayer # Build a UWP App
|
|
||||||
- tvOS # Build an Apple TV XCode project
|
|
||||||
|
|
||||||
steps:
|
|
||||||
###########################
|
|
||||||
# Checkout #
|
|
||||||
###########################
|
|
||||||
- uses: actions/checkout@v3
|
|
||||||
with:
|
|
||||||
lfs: true
|
|
||||||
|
|
||||||
###########################
|
|
||||||
# Cache #
|
|
||||||
###########################
|
|
||||||
- uses: actions/cache@v3
|
|
||||||
with:
|
|
||||||
path: ${{ matrix.projectPath }}/Library
|
|
||||||
key: Library-${{ matrix.projectPath }}-windows-${{ matrix.targetPlatform }}
|
|
||||||
restore-keys: |
|
|
||||||
Library-${{ matrix.projectPath }}-windows-
|
|
||||||
Library-
|
|
||||||
|
|
||||||
###########################
|
|
||||||
# Set Scripting Backend #
|
|
||||||
###########################
|
|
||||||
- name: Set Scripting Backend To il2cpp
|
|
||||||
run: |
|
|
||||||
Move-Item -Path "./test-project/ProjectSettings/ProjectSettingsIl2cpp.asset" -Destination "./test-project/ProjectSettings/ProjectSettings.asset" -Force
|
|
||||||
|
|
||||||
###########################
|
|
||||||
# Build #
|
|
||||||
###########################
|
|
||||||
- name: Build
|
|
||||||
uses: ./
|
|
||||||
id: build-1
|
|
||||||
continue-on-error: true
|
|
||||||
timeout-minutes: 30
|
|
||||||
env:
|
|
||||||
UNITY_EMAIL: ${{ secrets.UNITY_EMAIL }}
|
|
||||||
UNITY_PASSWORD: ${{ secrets.UNITY_PASSWORD }}
|
|
||||||
UNITY_SERIAL: ${{ secrets.UNITY_SERIAL }}
|
|
||||||
with:
|
|
||||||
projectPath: ${{ matrix.projectPath }}
|
|
||||||
unityVersion: ${{ matrix.unityVersion }}
|
|
||||||
targetPlatform: ${{ matrix.targetPlatform }}
|
|
||||||
customParameters: -profile SomeProfile -someBoolean -someValue exampleValue
|
|
||||||
allowDirtyBuild: true
|
|
||||||
# We use dirty build because we are replacing the default project settings file above
|
|
||||||
|
|
||||||
- name: Sleep for Retry
|
|
||||||
if: ${{ steps.build-1.outcome == 'failure' }}
|
|
||||||
run: |
|
|
||||||
Start-Sleep -s 120
|
|
||||||
|
|
||||||
- name: Build Retry 1
|
|
||||||
uses: ./
|
|
||||||
id: build-2
|
|
||||||
continue-on-error: true
|
|
||||||
timeout-minutes: 30
|
|
||||||
if: steps.build-1.outcome == 'failure'
|
|
||||||
env:
|
|
||||||
UNITY_EMAIL: ${{ secrets.UNITY_EMAIL }}
|
|
||||||
UNITY_PASSWORD: ${{ secrets.UNITY_PASSWORD }}
|
|
||||||
UNITY_SERIAL: ${{ secrets.UNITY_SERIAL }}
|
|
||||||
with:
|
|
||||||
projectPath: ${{ matrix.projectPath }}
|
|
||||||
unityVersion: ${{ matrix.unityVersion }}
|
|
||||||
targetPlatform: ${{ matrix.targetPlatform }}
|
|
||||||
customParameters: -profile SomeProfile -someBoolean -someValue exampleValue
|
|
||||||
allowDirtyBuild: true
|
|
||||||
# We use dirty build because we are replacing the default project settings file above
|
|
||||||
|
|
||||||
- name: Sleep for Retry
|
|
||||||
if: ${{ steps.build-1.outcome == 'failure' && steps.build-2.outcome == 'failure' }}
|
|
||||||
run: |
|
|
||||||
Start-Sleep -s 240
|
|
||||||
|
|
||||||
- name: Build Retry 2
|
|
||||||
uses: ./
|
|
||||||
id: build-3
|
|
||||||
timeout-minutes: 30
|
|
||||||
if: ${{ steps.build-1.outcome == 'failure' && steps.build-2.outcome == 'failure' }}
|
|
||||||
env:
|
|
||||||
UNITY_EMAIL: ${{ secrets.UNITY_EMAIL }}
|
|
||||||
UNITY_PASSWORD: ${{ secrets.UNITY_PASSWORD }}
|
|
||||||
UNITY_SERIAL: ${{ secrets.UNITY_SERIAL }}
|
|
||||||
with:
|
|
||||||
projectPath: ${{ matrix.projectPath }}
|
|
||||||
unityVersion: ${{ matrix.unityVersion }}
|
|
||||||
targetPlatform: ${{ matrix.targetPlatform }}
|
|
||||||
customParameters: -profile SomeProfile -someBoolean -someValue exampleValue
|
|
||||||
allowDirtyBuild: true
|
|
||||||
# We use dirty build because we are replacing the default project settings file above
|
|
||||||
|
|
||||||
###########################
|
|
||||||
# Upload #
|
|
||||||
###########################
|
|
||||||
- uses: actions/upload-artifact@v3
|
|
||||||
with:
|
|
||||||
name: Build Windows (${{ matrix.unityVersion }})
|
|
||||||
path: build
|
|
||||||
retention-days: 14
|
|
||||||
16
.github/workflows/cats.yml
vendored
16
.github/workflows/cats.yml
vendored
@@ -1,16 +0,0 @@
|
|||||||
name: Cats 😺
|
|
||||||
|
|
||||||
on:
|
|
||||||
pull_request_target:
|
|
||||||
types:
|
|
||||||
- opened
|
|
||||||
- reopened
|
|
||||||
|
|
||||||
jobs:
|
|
||||||
aCatForCreatingThePullRequest:
|
|
||||||
name: A cat for your effort!
|
|
||||||
runs-on: ubuntu-latest
|
|
||||||
steps:
|
|
||||||
- uses: ruairidhwm/action-cats@1.0.2
|
|
||||||
with:
|
|
||||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
|
||||||
37
.github/workflows/cleanup.yml
vendored
37
.github/workflows/cleanup.yml
vendored
@@ -1,37 +0,0 @@
|
|||||||
name: Cleanup (cron)
|
|
||||||
on:
|
|
||||||
schedule:
|
|
||||||
- cron: '30 10 * * SUN' # every sunday at 10:30
|
|
||||||
|
|
||||||
jobs:
|
|
||||||
deleteArtifacts:
|
|
||||||
runs-on: ubuntu-latest
|
|
||||||
steps:
|
|
||||||
- name: Delete old artifacts
|
|
||||||
uses: kolpav/purge-artifacts-action@v1
|
|
||||||
with:
|
|
||||||
token: ${{ secrets.GITHUB_TOKEN }}
|
|
||||||
expire-in: 21 days
|
|
||||||
cleanupCloudRunner:
|
|
||||||
runs-on: ubuntu-latest
|
|
||||||
steps:
|
|
||||||
- uses: actions/checkout@v3
|
|
||||||
if: github.event.event_type != 'pull_request_target'
|
|
||||||
with:
|
|
||||||
lfs: true
|
|
||||||
- uses: actions/setup-node@v3
|
|
||||||
with:
|
|
||||||
node-version: '18'
|
|
||||||
- run: yarn
|
|
||||||
- run: yarn run cli --help
|
|
||||||
env:
|
|
||||||
AWS_REGION: eu-west-2
|
|
||||||
AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }}
|
|
||||||
AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
|
|
||||||
AWS_DEFAULT_REGION: eu-west-2
|
|
||||||
- run: yarn run cli -m list-resources
|
|
||||||
env:
|
|
||||||
AWS_REGION: eu-west-2
|
|
||||||
AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }}
|
|
||||||
AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
|
|
||||||
AWS_DEFAULT_REGION: eu-west-2
|
|
||||||
59
.github/workflows/cloud-runner-async-checks.yml
vendored
59
.github/workflows/cloud-runner-async-checks.yml
vendored
@@ -1,59 +0,0 @@
|
|||||||
name: Async Checks API
|
|
||||||
|
|
||||||
on:
|
|
||||||
workflow_dispatch:
|
|
||||||
inputs:
|
|
||||||
checksObject:
|
|
||||||
description: ''
|
|
||||||
required: false
|
|
||||||
default: ''
|
|
||||||
|
|
||||||
permissions:
|
|
||||||
checks: write
|
|
||||||
|
|
||||||
env:
|
|
||||||
GKE_ZONE: 'us-central1'
|
|
||||||
GKE_REGION: 'us-central1'
|
|
||||||
GKE_PROJECT: 'unitykubernetesbuilder'
|
|
||||||
GKE_CLUSTER: 'game-ci-github-pipelines'
|
|
||||||
GCP_LOGGING: true
|
|
||||||
GCP_PROJECT: unitykubernetesbuilder
|
|
||||||
GCP_LOG_FILE: ${{ github.workspace }}/cloud-runner-logs.txt
|
|
||||||
AWS_REGION: eu-west-2
|
|
||||||
AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }}
|
|
||||||
AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
|
|
||||||
AWS_DEFAULT_REGION: eu-west-2
|
|
||||||
AWS_STACK_NAME: game-ci-github-pipelines
|
|
||||||
CLOUD_RUNNER_BRANCH: ${{ github.ref }}
|
|
||||||
CLOUD_RUNNER_DEBUG: true
|
|
||||||
CLOUD_RUNNER_DEBUG_TREE: true
|
|
||||||
DEBUG: true
|
|
||||||
UNITY_LICENSE: ${{ secrets.UNITY_LICENSE }}
|
|
||||||
PROJECT_PATH: test-project
|
|
||||||
UNITY_VERSION: 2019.3.15f1
|
|
||||||
USE_IL2CPP: false
|
|
||||||
|
|
||||||
jobs:
|
|
||||||
asyncChecks:
|
|
||||||
name: Async Checks
|
|
||||||
if: github.event.event_type != 'pull_request_target'
|
|
||||||
runs-on: ubuntu-latest
|
|
||||||
steps:
|
|
||||||
- timeout-minutes: 180
|
|
||||||
env:
|
|
||||||
UNITY_LICENSE: ${{ secrets.UNITY_LICENSE }}
|
|
||||||
PROJECT_PATH: test-project
|
|
||||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
|
||||||
GIT_PRIVATE_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
|
||||||
TARGET_PLATFORM: StandaloneWindows64
|
|
||||||
cloudRunnerTests: true
|
|
||||||
versioning: None
|
|
||||||
CLOUD_RUNNER_CLUSTER: local-docker
|
|
||||||
AWS_STACK_NAME: game-ci-github-pipelines
|
|
||||||
CHECKS_UPDATE: ${{ github.event.inputs.checksObject }}
|
|
||||||
run: |
|
|
||||||
git clone -b cloud-runner-develop https://github.com/game-ci/unity-builder
|
|
||||||
cd unity-builder
|
|
||||||
yarn
|
|
||||||
ls
|
|
||||||
yarn run cli -m checks-update
|
|
||||||
190
.github/workflows/cloud-runner-ci-pipeline.yml
vendored
190
.github/workflows/cloud-runner-ci-pipeline.yml
vendored
@@ -1,190 +0,0 @@
|
|||||||
name: Cloud Runner CI Pipeline
|
|
||||||
|
|
||||||
on:
|
|
||||||
push: { branches: [cloud-runner-develop, cloud-runner-preview, main] }
|
|
||||||
workflow_dispatch:
|
|
||||||
|
|
||||||
permissions:
|
|
||||||
checks: write
|
|
||||||
contents: read
|
|
||||||
actions: write
|
|
||||||
|
|
||||||
env:
|
|
||||||
GKE_ZONE: 'us-central1'
|
|
||||||
GKE_REGION: 'us-central1'
|
|
||||||
GKE_PROJECT: 'unitykubernetesbuilder'
|
|
||||||
GKE_CLUSTER: 'game-ci-github-pipelines'
|
|
||||||
GCP_LOGGING: true
|
|
||||||
GCP_PROJECT: unitykubernetesbuilder
|
|
||||||
GCP_LOG_FILE: ${{ github.workspace }}/cloud-runner-logs.txt
|
|
||||||
AWS_REGION: eu-west-2
|
|
||||||
AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }}
|
|
||||||
AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
|
|
||||||
AWS_DEFAULT_REGION: eu-west-2
|
|
||||||
AWS_STACK_NAME: game-ci-team-pipelines
|
|
||||||
CLOUD_RUNNER_BRANCH: ${{ github.ref }}
|
|
||||||
DEBUG: true
|
|
||||||
UNITY_LICENSE: ${{ secrets.UNITY_LICENSE }}
|
|
||||||
PROJECT_PATH: test-project
|
|
||||||
UNITY_VERSION: 2019.3.15f1
|
|
||||||
USE_IL2CPP: false
|
|
||||||
USE_GKE_GCLOUD_AUTH_PLUGIN: true
|
|
||||||
GIT_PRIVATE_TOKEN: ${{ secrets.GIT_PRIVATE_TOKEN }}
|
|
||||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
|
||||||
|
|
||||||
jobs:
|
|
||||||
smokeTests:
|
|
||||||
name: Smoke Tests
|
|
||||||
if: github.event.event_type != 'pull_request_target'
|
|
||||||
runs-on: ubuntu-latest
|
|
||||||
strategy:
|
|
||||||
fail-fast: false
|
|
||||||
matrix:
|
|
||||||
test:
|
|
||||||
#- 'cloud-runner-async-workflow'
|
|
||||||
- 'cloud-runner-caching'
|
|
||||||
# - 'cloud-runner-end2end-caching'
|
|
||||||
# - 'cloud-runner-end2end-retaining'
|
|
||||||
- 'cloud-runner-environment'
|
|
||||||
- 'cloud-runner-hooks'
|
|
||||||
- 'cloud-runner-local-persistence'
|
|
||||||
- 'cloud-runner-locking-core'
|
|
||||||
- 'cloud-runner-locking-get-locked'
|
|
||||||
providerStrategy:
|
|
||||||
#- aws
|
|
||||||
- local-docker
|
|
||||||
#- k8s
|
|
||||||
steps:
|
|
||||||
- name: Checkout (default)
|
|
||||||
uses: actions/checkout@v3
|
|
||||||
with:
|
|
||||||
lfs: false
|
|
||||||
- name: Configure AWS Credentials
|
|
||||||
uses: aws-actions/configure-aws-credentials@v1
|
|
||||||
with:
|
|
||||||
aws-access-key-id: ${{ secrets.AWS_ACCESS_KEY_ID }}
|
|
||||||
aws-secret-access-key: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
|
|
||||||
aws-region: eu-west-2
|
|
||||||
- uses: google-github-actions/auth@v1
|
|
||||||
if: matrix.providerStrategy == 'k8s'
|
|
||||||
with:
|
|
||||||
credentials_json: ${{ secrets.GOOGLE_SERVICE_ACCOUNT_KEY }}
|
|
||||||
- name: 'Set up Cloud SDK'
|
|
||||||
if: matrix.providerStrategy == 'k8s'
|
|
||||||
uses: 'google-github-actions/setup-gcloud@v1.1.0'
|
|
||||||
- name: Get GKE cluster credentials
|
|
||||||
if: matrix.providerStrategy == 'k8s'
|
|
||||||
run: |
|
|
||||||
export USE_GKE_GCLOUD_AUTH_PLUGIN=True
|
|
||||||
gcloud components install gke-gcloud-auth-plugin
|
|
||||||
gcloud container clusters get-credentials $GKE_CLUSTER --zone $GKE_ZONE --project $GKE_PROJECT
|
|
||||||
- run: yarn
|
|
||||||
- run: yarn run test "${{ matrix.test }}" --detectOpenHandles --forceExit --runInBand
|
|
||||||
timeout-minutes: 35
|
|
||||||
env:
|
|
||||||
UNITY_LICENSE: ${{ secrets.UNITY_LICENSE }}
|
|
||||||
PROJECT_PATH: test-project
|
|
||||||
TARGET_PLATFORM: StandaloneWindows64
|
|
||||||
cloudRunnerTests: true
|
|
||||||
versioning: None
|
|
||||||
CLOUD_RUNNER_CLUSTER: ${{ matrix.providerStrategy }}
|
|
||||||
tests:
|
|
||||||
# needs:
|
|
||||||
# - smokeTests
|
|
||||||
# - buildTargetTests
|
|
||||||
name: Integration Tests
|
|
||||||
if: github.event.event_type != 'pull_request_target'
|
|
||||||
runs-on: ubuntu-latest
|
|
||||||
strategy:
|
|
||||||
fail-fast: false
|
|
||||||
matrix:
|
|
||||||
providerStrategy:
|
|
||||||
- aws
|
|
||||||
- local-docker
|
|
||||||
- k8s
|
|
||||||
test:
|
|
||||||
- 'cloud-runner-async-workflow'
|
|
||||||
#- 'cloud-runner-caching'
|
|
||||||
- 'cloud-runner-end2end-locking'
|
|
||||||
- 'cloud-runner-end2end-caching'
|
|
||||||
- 'cloud-runner-end2end-retaining'
|
|
||||||
- 'cloud-runner-environment'
|
|
||||||
#- 'cloud-runner-hooks'
|
|
||||||
- 'cloud-runner-s3-steps'
|
|
||||||
#- 'cloud-runner-local-persistence'
|
|
||||||
#- 'cloud-runner-locking-core'
|
|
||||||
#- 'cloud-runner-locking-get-locked'
|
|
||||||
steps:
|
|
||||||
- name: Checkout (default)
|
|
||||||
uses: actions/checkout@v2
|
|
||||||
with:
|
|
||||||
lfs: false
|
|
||||||
- name: Configure AWS Credentials
|
|
||||||
uses: aws-actions/configure-aws-credentials@v1
|
|
||||||
with:
|
|
||||||
aws-access-key-id: ${{ secrets.AWS_ACCESS_KEY_ID }}
|
|
||||||
aws-secret-access-key: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
|
|
||||||
aws-region: eu-west-2
|
|
||||||
- uses: google-github-actions/auth@v1
|
|
||||||
if: matrix.providerStrategy == 'k8s'
|
|
||||||
with:
|
|
||||||
credentials_json: ${{ secrets.GOOGLE_SERVICE_ACCOUNT_KEY }}
|
|
||||||
- name: 'Set up Cloud SDK'
|
|
||||||
if: matrix.providerStrategy == 'k8s'
|
|
||||||
uses: 'google-github-actions/setup-gcloud@v1.1.0'
|
|
||||||
- name: Get GKE cluster credentials
|
|
||||||
if: matrix.providerStrategy == 'k8s'
|
|
||||||
run: |
|
|
||||||
export USE_GKE_GCLOUD_AUTH_PLUGIN=True
|
|
||||||
gcloud components install gke-gcloud-auth-plugin
|
|
||||||
gcloud container clusters get-credentials $GKE_CLUSTER --zone $GKE_ZONE --project $GKE_PROJECT
|
|
||||||
- run: yarn
|
|
||||||
- run: yarn run test "${{ matrix.test }}" --detectOpenHandles --forceExit --runInBand
|
|
||||||
timeout-minutes: 60
|
|
||||||
env:
|
|
||||||
UNITY_LICENSE: ${{ secrets.UNITY_LICENSE }}
|
|
||||||
PROJECT_PATH: test-project
|
|
||||||
TARGET_PLATFORM: StandaloneWindows64
|
|
||||||
cloudRunnerTests: true
|
|
||||||
versioning: None
|
|
||||||
PROVIDER_STRATEGY: ${{ matrix.providerStrategy }}
|
|
||||||
buildTargetTests:
|
|
||||||
name: Local Build Target Tests
|
|
||||||
runs-on: ubuntu-latest
|
|
||||||
strategy:
|
|
||||||
fail-fast: false
|
|
||||||
matrix:
|
|
||||||
providerStrategy:
|
|
||||||
#- aws
|
|
||||||
- local-docker
|
|
||||||
#- k8s
|
|
||||||
targetPlatform:
|
|
||||||
- StandaloneOSX # Build a macOS standalone (Intel 64-bit).
|
|
||||||
- StandaloneWindows64 # Build a Windows 64-bit standalone.
|
|
||||||
- StandaloneLinux64 # Build a Linux 64-bit standalone.
|
|
||||||
- WebGL # WebGL.
|
|
||||||
- iOS # Build an iOS player.
|
|
||||||
- Android # Build an Android .apk.
|
|
||||||
steps:
|
|
||||||
- name: Checkout (default)
|
|
||||||
uses: actions/checkout@v3
|
|
||||||
with:
|
|
||||||
lfs: false
|
|
||||||
- run: yarn
|
|
||||||
- uses: ./
|
|
||||||
id: unity-build
|
|
||||||
timeout-minutes: 30
|
|
||||||
env:
|
|
||||||
UNITY_LICENSE: ${{ secrets.UNITY_LICENSE }}
|
|
||||||
with:
|
|
||||||
cloudRunnerTests: true
|
|
||||||
versioning: None
|
|
||||||
targetPlatform: ${{ matrix.targetPlatform }}
|
|
||||||
providerStrategy: ${{ matrix.providerStrategy }}
|
|
||||||
- run: |
|
|
||||||
cp ./cloud-runner-cache/cache/${{ steps.unity-build.outputs.CACHE_KEY }}/build/${{ steps.unity-build.outputs.BUILD_ARTIFACT }} ${{ steps.unity-build.outputs.BUILD_ARTIFACT }}
|
|
||||||
- uses: actions/upload-artifact@v3
|
|
||||||
with:
|
|
||||||
name: ${{ matrix.providerStrategy }} Build (${{ matrix.targetPlatform }})
|
|
||||||
path: ${{ steps.unity-build.outputs.BUILD_ARTIFACT }}
|
|
||||||
retention-days: 14
|
|
||||||
28
.github/workflows/integrity-check.yml
vendored
28
.github/workflows/integrity-check.yml
vendored
@@ -1,28 +0,0 @@
|
|||||||
name: Integrity
|
|
||||||
|
|
||||||
on:
|
|
||||||
push: { branches: [main] }
|
|
||||||
pull_request: {}
|
|
||||||
|
|
||||||
env:
|
|
||||||
CODECOV_TOKEN: '2f2eb890-30e2-4724-83eb-7633832cf0de'
|
|
||||||
|
|
||||||
concurrency:
|
|
||||||
group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }}
|
|
||||||
cancel-in-progress: true
|
|
||||||
|
|
||||||
jobs:
|
|
||||||
tests:
|
|
||||||
name: Tests
|
|
||||||
runs-on: ubuntu-latest
|
|
||||||
steps:
|
|
||||||
- uses: actions/checkout@v3
|
|
||||||
- uses: actions/setup-node@v3
|
|
||||||
with:
|
|
||||||
node-version: '18'
|
|
||||||
- run: yarn
|
|
||||||
- run: yarn lint
|
|
||||||
- run: yarn test --coverage
|
|
||||||
- run: bash <(curl -s https://codecov.io/bash)
|
|
||||||
- run: yarn build || { echo "build command should always succeed" ; exit 61; }
|
|
||||||
# - run: yarn build --quiet && git diff --quiet dist || { echo "dist should be auto generated" ; git diff dist ; exit 62; }
|
|
||||||
81
.github/workflows/main.yml
vendored
Normal file
81
.github/workflows/main.yml
vendored
Normal file
@@ -0,0 +1,81 @@
|
|||||||
|
name: Actions 😎
|
||||||
|
|
||||||
|
on:
|
||||||
|
pull_request: {}
|
||||||
|
push: { branches: [master, check-internal-push] }
|
||||||
|
|
||||||
|
env:
|
||||||
|
CODECOV_TOKEN: '2f2eb890-30e2-4724-83eb-7633832cf0de'
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
tests:
|
||||||
|
name: Tests
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
steps:
|
||||||
|
- uses: actions/checkout@v2
|
||||||
|
- uses: actions/setup-node@v1
|
||||||
|
with:
|
||||||
|
node-version: 12.x
|
||||||
|
- run: yarn
|
||||||
|
- run: yarn lint
|
||||||
|
- run: yarn test --coverage
|
||||||
|
- run: bash <(curl -s https://codecov.io/bash)
|
||||||
|
- run: yarn build || { echo "build command should always succeed" ; exit 61; }
|
||||||
|
- run: yarn build --quiet && git diff --quiet action || { echo "action should be auto generated" ; git diff action ; exit 62; }
|
||||||
|
|
||||||
|
buildForAllPlatforms:
|
||||||
|
name: Build for ${{ matrix.targetPlatform }} on version ${{ matrix.unityVersion }}
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
strategy:
|
||||||
|
fail-fast: false
|
||||||
|
matrix:
|
||||||
|
projectPath:
|
||||||
|
- test-project
|
||||||
|
unityVersion:
|
||||||
|
- 2019.2.11f1
|
||||||
|
- 2019.3.15f1
|
||||||
|
include:
|
||||||
|
# Please be polite; don't copy my personal licenses.
|
||||||
|
# These are here because they are needed to allowing pull requests from forks to unity-builder.
|
||||||
|
# You should be using ${{ secrets.UNITY_LICENSE_2019_3_15 }} here.
|
||||||
|
- unityVersion: 2019.2.11f1
|
||||||
|
license: "<?xml version=\"1.0\" encoding=\"UTF-8\"?><root>\n <License id=\"Terms\">\n <MachineBindings>\n <Binding Key=\"1\" Value=\"d39b8e2f4d364b2e98b06afa0c6e08c5\"/>\n <Binding Key=\"2\" Value=\"d39b8e2f4d364b2e98b06afa0c6e08c5\"/>\n </MachineBindings>\n <MachineID Value=\"Xxo1ZKbdPu/IATrc0mPBYANJFF0=\"/>\n <SerialHash Value=\"1efd68fa935192b6090ac03c77d289a9f588c55a\"/>\n <Features>\n <Feature Value=\"33\"/>\n <Feature Value=\"1\"/>\n <Feature Value=\"12\"/>\n <Feature Value=\"2\"/>\n <Feature Value=\"24\"/>\n <Feature Value=\"3\"/>\n <Feature Value=\"36\"/>\n <Feature Value=\"17\"/>\n <Feature Value=\"19\"/>\n <Feature Value=\"62\"/>\n </Features>\n <DeveloperData Value=\"AQAAAEY0LUg2WFMtUE00NS1SM0M4LUUyWlotWkdWOA==\"/>\n <SerialMasked Value=\"F4-H6XS-PM45-R3C8-E2ZZ-XXXX\"/>\n <StartDate Value=\"2018-05-02T00:00:00\"/>\n <UpdateDate Value=\"2019-11-25T18:23:38\"/>\n <InitialActivationDate Value=\"2018-05-02T14:21:28\"/>\n <LicenseVersion Value=\"6.x\"/>\n <ClientProvidedVersion Value=\"2019.2.11f1\"/>\n <AlwaysOnline Value=\"false\"/>\n <Entitlements>\n <Entitlement Ns=\"unity_editor\" Tag=\"UnityPersonal\" Type=\"EDITOR\" ValidTo=\"9999-12-31T00:00:00\"/>\n </Entitlements>\n </License>\n<Signature xmlns=\"http://www.w3.org/2000/09/xmldsig#\"><SignedInfo><CanonicalizationMethod Algorithm=\"http://www.w3.org/TR/2001/REC-xml-c14n-20010315#WithComments\"/><SignatureMethod Algorithm=\"http://www.w3.org/2000/09/xmldsig#rsa-sha1\"/><Reference URI=\"#Terms\"><Transforms><Transform Algorithm=\"http://www.w3.org/2000/09/xmldsig#enveloped-signature\"/></Transforms><DigestMethod Algorithm=\"http://www.w3.org/2000/09/xmldsig#sha1\"/><DigestValue>JHdOBFmBNq2H8BrGFzir/StLoYo=</DigestValue></Reference></SignedInfo><SignatureValue>aENLHd37a51RtP2/g7YU0Pexf5mx0/ENXYGtrPzqwZ8NQt2AsSdxGnl0CUB45/GuNXfJVDt2HWot\ncNYZB2OylVBn1WHQbKZlPmm8gEAMz0MYbr4Isb5i5buryBrZlmbEOjnRI+pEg1CBwlgMo6xdtjjE\n/d7cC293QIUO91kdzRXftYou1dNaUyuPL9ZH65vdB2pDXGRNxgUVD+GnnqZA7b5L2HXqNQclcWAK\n5Yd1BeF3VzR1iLw9G/SmH5oOhnpXSmqbL4qk7LVP2/mgXpFk5kP4X8VC3z47obNhBIGq40dwWyEe\nUYk5/nRAOkZawDT+tcu96e06gPC9Cxk5PdbRbA==</SignatureValue></Signature></root>"
|
||||||
|
- unityVersion: 2019.3.15f1
|
||||||
|
license: "<?xml version=\"1.0\" encoding=\"UTF-8\"?><root>\n <License id=\"Terms\">\n <MachineBindings>\n <Binding Key=\"1\" Value=\"33bf639e81e54693a8f9bf57c8900e5a\"/>\n <Binding Key=\"2\" Value=\"33bf639e81e54693a8f9bf57c8900e5a\"/>\n </MachineBindings>\n <MachineID Value=\"xWka2iXdDJejhZdi/zU2RUeXUi4=\"/>\n <SerialHash Value=\"1efd68fa935192b6090ac03c77d289a9f588c55a\"/>\n <Features>\n <Feature Value=\"33\"/>\n <Feature Value=\"1\"/>\n <Feature Value=\"12\"/>\n <Feature Value=\"2\"/>\n <Feature Value=\"24\"/>\n <Feature Value=\"3\"/>\n <Feature Value=\"36\"/>\n <Feature Value=\"17\"/>\n <Feature Value=\"19\"/>\n <Feature Value=\"62\"/>\n </Features>\n <DeveloperData Value=\"AQAAAEY0LUg2WFMtUE00NS1SM0M4LUUyWlotWkdWOA==\"/>\n <SerialMasked Value=\"F4-H6XS-PM45-R3C8-E2ZZ-XXXX\"/>\n <StartDate Value=\"2018-05-02T00:00:00\"/>\n <UpdateDate Value=\"2020-06-14T13:49:47\"/>\n <InitialActivationDate Value=\"2018-05-02T14:21:28\"/>\n <LicenseVersion Value=\"6.x\"/>\n <ClientProvidedVersion Value=\"2019.3.15f1\"/>\n <AlwaysOnline Value=\"false\"/>\n <Entitlements>\n <Entitlement Ns=\"unity_editor\" Tag=\"UnityPersonal\" Type=\"EDITOR\" ValidTo=\"9999-12-31T00:00:00\"/>\n </Entitlements>\n </License>\n<Signature xmlns=\"http://www.w3.org/2000/09/xmldsig#\"><SignedInfo><CanonicalizationMethod Algorithm=\"http://www.w3.org/TR/2001/REC-xml-c14n-20010315#WithComments\"/><SignatureMethod Algorithm=\"http://www.w3.org/2000/09/xmldsig#rsa-sha1\"/><Reference URI=\"#Terms\"><Transforms><Transform Algorithm=\"http://www.w3.org/2000/09/xmldsig#enveloped-signature\"/></Transforms><DigestMethod Algorithm=\"http://www.w3.org/2000/09/xmldsig#sha1\"/><DigestValue>bpzWx3PZ0lqWDo1m9aLQuZ4cweo=</DigestValue></Reference></SignedInfo><SignatureValue>QcDm4/qAXZuUMQbUVk63vO6u66Bp8PnqqWQcZZOcym/rGUZLj1sr66EquF3X3w1L7aqiwMGtbY2b\nkPttcalFeaBkc5NsJMrexWjuBCxQvhbmVFQnTjvC6vNS+k1wrkz7If1oPkz/XaDtCfUs8oxc9iPe\nPzzUJIVYLZoDtpPq2XbgVn9/TiVb3Zu6ldKgvtNRYUjrB3KywtvL9OcIFll3htRcBZPG43kxryJc\nDD2TL5Nw1JuX6MejBBuYTZsZNpGX9Pjop9+uFUZ4GI9h8a5g6wJUfXzsGw7j4gkvDkC9MvyWiksi\n2hNXw1QNeB6JfQsd4sAuhYh/CqTm2gCz9i9ZpA==</SignatureValue></Signature></root>"
|
||||||
|
targetPlatform:
|
||||||
|
- StandaloneOSX # Build a macOS standalone (Intel 64-bit).
|
||||||
|
- StandaloneWindows # Build a Windows standalone.
|
||||||
|
- StandaloneWindows64 # Build a Windows 64-bit standalone.
|
||||||
|
- StandaloneLinux64 # Build a Linux 64-bit standalone.
|
||||||
|
- iOS # Build an iOS player.
|
||||||
|
# - Android # Build an Android .apk standalone app.
|
||||||
|
# - WebGL # WebGL.
|
||||||
|
# - WSAPlayer # Build an Windows Store Apps player.
|
||||||
|
# - PS4 # Build a PS4 Standalone.
|
||||||
|
# - XboxOne # Build a Xbox One Standalone.
|
||||||
|
# - tvOS # Build to Apple's tvOS platform.
|
||||||
|
# - Switch # Build a Nintendo Switch player.
|
||||||
|
|
||||||
|
steps:
|
||||||
|
- uses: actions/checkout@v2
|
||||||
|
with:
|
||||||
|
lfs: true
|
||||||
|
- uses: actions/cache@v1.1.0
|
||||||
|
with:
|
||||||
|
path: ${{ matrix.projectPath }}/Library
|
||||||
|
key: Library-${{ matrix.projectPath }}-${{ matrix.targetPlatform }}
|
||||||
|
restore-keys: |
|
||||||
|
Library-${{ matrix.projectPath }}-
|
||||||
|
Library-
|
||||||
|
- uses: webbertakken/unity-builder@8ae8dbb
|
||||||
|
env:
|
||||||
|
UNITY_LICENSE: ${{ matrix.license }}
|
||||||
|
with:
|
||||||
|
projectPath: ${{ matrix.projectPath }}
|
||||||
|
unityVersion: ${{ matrix.unityVersion }}
|
||||||
|
targetPlatform: ${{ matrix.targetPlatform }}
|
||||||
|
customParameters: -profile SomeProfile -someBoolean -someValue exampleValue
|
||||||
|
- uses: actions/upload-artifact@v1
|
||||||
|
with:
|
||||||
|
name: Build (${{ matrix.unityVersion }})
|
||||||
|
path: build
|
||||||
12
.github/workflows/versioning.yml
vendored
12
.github/workflows/versioning.yml
vendored
@@ -1,12 +0,0 @@
|
|||||||
name: Versioning
|
|
||||||
|
|
||||||
on:
|
|
||||||
release:
|
|
||||||
types: [published, edited]
|
|
||||||
|
|
||||||
jobs:
|
|
||||||
updateMajorTag:
|
|
||||||
name: Update major tag
|
|
||||||
runs-on: ubuntu-latest
|
|
||||||
steps:
|
|
||||||
- uses: Actions-R-Us/actions-tagger@v2
|
|
||||||
4
.gitignore
vendored
4
.gitignore
vendored
@@ -1,7 +1,3 @@
|
|||||||
.idea
|
.idea
|
||||||
node_modules
|
node_modules
|
||||||
coverage/
|
coverage/
|
||||||
lib/
|
|
||||||
.vsconfig
|
|
||||||
yarn-error.log
|
|
||||||
.orig
|
|
||||||
|
|||||||
@@ -1,2 +1,2 @@
|
|||||||
**/node_modules/**
|
**/node_modules/**
|
||||||
**/dist/**
|
**/action/**
|
||||||
|
|||||||
@@ -2,6 +2,5 @@
|
|||||||
"semi": true,
|
"semi": true,
|
||||||
"singleQuote": true,
|
"singleQuote": true,
|
||||||
"trailingComma": "all",
|
"trailingComma": "all",
|
||||||
"printWidth": 120,
|
"printWidth": 100
|
||||||
"proseWrap": "always"
|
|
||||||
}
|
}
|
||||||
|
|||||||
25
.vscode/launch.json
vendored
25
.vscode/launch.json
vendored
@@ -1,25 +0,0 @@
|
|||||||
{
|
|
||||||
"configurations": [
|
|
||||||
{
|
|
||||||
"type": "node",
|
|
||||||
"request": "launch",
|
|
||||||
"name": "Debug Jest Test",
|
|
||||||
"program": "${workspaceRoot}/node_modules/jest/bin/jest.js",
|
|
||||||
"args": [
|
|
||||||
"--collectCoverage=false",
|
|
||||||
"--colors",
|
|
||||||
"--config",
|
|
||||||
"${workspaceRoot}/jest.config.js",
|
|
||||||
"--runInBand",
|
|
||||||
"--runTestsByPath",
|
|
||||||
"${relativeFile}",
|
|
||||||
"--testPathPattern=${fileDirname}",
|
|
||||||
"--testTimeout=10000000"
|
|
||||||
],
|
|
||||||
"outputCapture": "std",
|
|
||||||
"internalConsoleOptions": "openOnSessionStart",
|
|
||||||
"envFile": "${workspaceRoot}/.env",
|
|
||||||
"skipFiles": ["${workspaceRoot}/../../node_modules/**/*", "<node_internals>/**/*"]
|
|
||||||
}
|
|
||||||
]
|
|
||||||
}
|
|
||||||
33
.vscode/settings.json
vendored
33
.vscode/settings.json
vendored
@@ -1,33 +0,0 @@
|
|||||||
{
|
|
||||||
"files.eol": "\n",
|
|
||||||
"god.tsconfig": "./tsconfig.json",
|
|
||||||
"yaml.customTags": [
|
|
||||||
"!And",
|
|
||||||
"!And sequence",
|
|
||||||
"!If",
|
|
||||||
"!If sequence",
|
|
||||||
"!Not",
|
|
||||||
"!Not sequence",
|
|
||||||
"!Equals",
|
|
||||||
"!Equals sequence",
|
|
||||||
"!Or",
|
|
||||||
"!Or sequence",
|
|
||||||
"!FindInMap",
|
|
||||||
"!FindInMap sequence",
|
|
||||||
"!Base64",
|
|
||||||
"!Join",
|
|
||||||
"!Join sequence",
|
|
||||||
"!Cidr",
|
|
||||||
"!Ref",
|
|
||||||
"!Sub",
|
|
||||||
"!Sub sequence",
|
|
||||||
"!GetAtt",
|
|
||||||
"!GetAZs",
|
|
||||||
"!ImportValue",
|
|
||||||
"!ImportValue sequence",
|
|
||||||
"!Select",
|
|
||||||
"!Select sequence",
|
|
||||||
"!Split",
|
|
||||||
"!Split sequence"
|
|
||||||
]
|
|
||||||
}
|
|
||||||
2
.yarnrc
2
.yarnrc
@@ -1,3 +1,3 @@
|
|||||||
save-prefix "^"
|
save-prefix ""
|
||||||
--install.audit true
|
--install.audit true
|
||||||
--add.audit true
|
--add.audit true
|
||||||
|
|||||||
@@ -4,12 +4,13 @@
|
|||||||
|
|
||||||
#### Code of Conduct
|
#### Code of Conduct
|
||||||
|
|
||||||
This repository has adopted the Contributor Covenant as it's Code of Conduct. It is expected that participants adhere to
|
This repository has adopted the Contributor Covenant as it's
|
||||||
it.
|
Code of Conduct. It is expected that participants adhere to it.
|
||||||
|
|
||||||
#### Proposing a Change
|
#### Proposing a Change
|
||||||
|
|
||||||
If you are unsure about whether or not a change is desired, you can create an issue. This is useful because it creates
|
If you are unsure about whether or not a change is desired,
|
||||||
|
you can create an issue. This is useful because it creates
|
||||||
the possibility for a discussion that's visible to everyone.
|
the possibility for a discussion that's visible to everyone.
|
||||||
|
|
||||||
When fixing a bug it is fine to submit a pull request right away.
|
When fixing a bug it is fine to submit a pull request right away.
|
||||||
@@ -18,7 +19,7 @@ When fixing a bug it is fine to submit a pull request right away.
|
|||||||
|
|
||||||
Steps to be performed to submit a pull request:
|
Steps to be performed to submit a pull request:
|
||||||
|
|
||||||
1. Fork the repository and create your branch from `main`.
|
1. Fork the repository and create your branch from `master`.
|
||||||
2. Run `yarn` in the repository root.
|
2. Run `yarn` in the repository root.
|
||||||
3. If you've fixed a bug or added code that should be tested, add tests!
|
3. If you've fixed a bug or added code that should be tested, add tests!
|
||||||
4. Fill out the description, link any related issues and submit your pull request.
|
4. Fill out the description, link any related issues and submit your pull request.
|
||||||
@@ -33,11 +34,6 @@ Please note that commit hooks will run automatically to perform some tasks;
|
|||||||
- run tests
|
- run tests
|
||||||
- build distributable files
|
- build distributable files
|
||||||
|
|
||||||
#### Windows users
|
|
||||||
|
|
||||||
Make sure your editor and terminal that run the tests are set to `Powershell 7` or above with
|
|
||||||
`Git's Unix tools for Windows` installed. Some tests require you to be able to run `sh` and other unix commands.
|
|
||||||
|
|
||||||
#### License
|
#### License
|
||||||
|
|
||||||
By contributing to this repository, you agree that your contributions will be licensed under its MIT license.
|
By contributing to this repository, you agree that your contributions will be licensed under its MIT license.
|
||||||
|
|||||||
350
README.md
350
README.md
@@ -1,55 +1,341 @@
|
|||||||
# Unity - Builder
|
# Unity - Builder
|
||||||
|
|
||||||
(Not affiliated with Unity Technologies)
|
[](https://github.com/webbertakken/unity-builder/actions?query=branch%3Amaster+event%3Apush+workflow%3A%22Actions+%F0%9F%98%8E%22)
|
||||||
|
[](https://lgtm.com/projects/g/webbertakken/unity-builder/context:javascript)
|
||||||
|
[](https://codecov.io/gh/webbertakken/unity-builder)
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
GitHub Action to
|
GitHub Action to
|
||||||
[build Unity projects](https://github.com/marketplace/actions/unity-builder)
|
[build Unity projects](https://github.com/marketplace/actions/unity-builder)
|
||||||
for different platforms.
|
for different platforms.
|
||||||
|
|
||||||
Part of the <a href="https://game.ci">GameCI</a> open source project.
|
Part of the
|
||||||
<br />
|
[Unity Actions](https://github.com/webbertakken/unity-actions)
|
||||||
<br />
|
collection.
|
||||||
|
|
||||||
[](https://github.com/game-ci/unity-builder/actions/workflows/build-tests-ubuntu.yml)
|
---
|
||||||
[](https://github.com/game-ci/unity-builder/actions/workflows/build-tests-windows.yml)
|
|
||||||
[](https://github.com/game-ci/unity-builder/actions/workflows/build-tests-mac.yml)
|
|
||||||
[](https://codecov.io/gh/game-ci/unity-builder)
|
|
||||||
<br />
|
|
||||||
<br />
|
|
||||||
|
|
||||||
## How to use
|
[Github Action](https://github.com/features/actions)
|
||||||
|
to build Unity projects for different platforms.
|
||||||
|
|
||||||
Find the
|
It is recommended to run the
|
||||||
[docs](https://game.ci/docs/github/builder)
|
[Test](https://github.com/webbertakken/unity-actions#test)
|
||||||
on the GameCI
|
action from the
|
||||||
[documentation website](https://game.ci/docs).
|
[Unity Actions](https://github.com/webbertakken/unity-actions)
|
||||||
|
collection before running this action. This action also requires the [Activation](https://github.com/marketplace/actions/unity-activate) step.
|
||||||
|
|
||||||
## Related actions
|
## Documentation
|
||||||
|
|
||||||
Visit the
|
See the
|
||||||
GameCI <a href="https://github.com/game-ci/unity-actions">Unity Actions</a>
|
[Unity Actions](https://github.com/webbertakken/unity-actions)
|
||||||
status repository for related Actions.
|
collection repository for workflow documentation and reference implementation.
|
||||||
|
|
||||||
## Community
|
## Usage
|
||||||
|
|
||||||
Feel free to join us on
|
#### Setup builder
|
||||||
<a href="http://game.ci/discord"><img height="30" src="media/Discord-Logo.svg" alt="Discord" /></a>
|
|
||||||
and engage with the community.
|
|
||||||
|
|
||||||
## Contributing
|
By default the enabled scenes from the project's settings will be built.
|
||||||
|
|
||||||
To help improve the documentation, please find the docs [repository](https://github.com/game-ci/documentation).
|
Create or edit the file called `.github/workflows/main.yml` and add a job to it.
|
||||||
|
|
||||||
To contribute to Unity Builder, kindly read the [contribution guide](./CONTRIBUTING.md).
|
##### Personal License
|
||||||
|
|
||||||
## Support us
|
Personal licenses require a one-time manual activation step (per unity version).
|
||||||
|
|
||||||
GameCI is free for everyone forever.
|
Make sure you
|
||||||
|
[acquire and activate](https://github.com/marketplace/actions/unity-request-activation-file)
|
||||||
|
your license file and add it as a secret.
|
||||||
|
|
||||||
You can support us at [OpenCollective](https://opencollective.com/game-ci).
|
Then, define the build step as follows:
|
||||||
|
|
||||||
|
```yaml
|
||||||
|
- uses: webbertakken/unity-builder@<version>
|
||||||
|
env:
|
||||||
|
UNITY_LICENSE: ${{ secrets.UNITY_LICENSE }}
|
||||||
|
with:
|
||||||
|
projectPath: path/to/your/project
|
||||||
|
unityVersion: 2020.X.XXXX
|
||||||
|
targetPlatform: WebGL
|
||||||
|
```
|
||||||
|
|
||||||
|
##### Professional license
|
||||||
|
|
||||||
|
Professional licenses do not need any manual steps.
|
||||||
|
|
||||||
|
Instead, three variables will need to be set.
|
||||||
|
|
||||||
|
- `UNITY_EMAIL` (should contain the email address for your Unity account)
|
||||||
|
- `UNITY_PASSWORD` (the password that you use to login to Unity)
|
||||||
|
- `UNITY_SERIAL` (the serial provided by Unity)
|
||||||
|
|
||||||
|
Define the build step as follows:
|
||||||
|
|
||||||
|
```yaml
|
||||||
|
- uses: webbertakken/unity-builder@<version>
|
||||||
|
env:
|
||||||
|
UNITY_EMAIL: ${{ secrets.UNITY_EMAIL }}
|
||||||
|
UNITY_PASSWORD: ${{ secrets.UNITY_PASSWORD }}
|
||||||
|
UNITY_SERIAL: ${{ secrets.UNITY_SERIAL }}
|
||||||
|
with:
|
||||||
|
projectPath: path/to/your/project
|
||||||
|
unityVersion: 2020.X.XXXX
|
||||||
|
targetPlatform: WebGL
|
||||||
|
```
|
||||||
|
|
||||||
|
That is all you need to build your project.
|
||||||
|
|
||||||
|
#### Storing the build
|
||||||
|
|
||||||
|
To be able to access your built files,
|
||||||
|
they need to be uploaded as artifacts.
|
||||||
|
To do this it is recommended to use Github Actions official
|
||||||
|
[upload artifact action](https://github.com/marketplace/actions/upload-artifact)
|
||||||
|
after any build action.
|
||||||
|
|
||||||
|
By default, Builder outputs it's builds to a folder named `build`.
|
||||||
|
|
||||||
|
Example:
|
||||||
|
|
||||||
|
```yaml
|
||||||
|
- uses: actions/upload-artifact@v1
|
||||||
|
with:
|
||||||
|
name: Build
|
||||||
|
path: build
|
||||||
|
```
|
||||||
|
|
||||||
|
Builds can now be downloaded as Artifacts in the Actions tab.
|
||||||
|
|
||||||
|
#### Caching
|
||||||
|
|
||||||
|
In order to make builds run faster, you can cache Library files from previous
|
||||||
|
builds. To do so simply add Github Actions official
|
||||||
|
[cache action](https://github.com/marketplace/actions/cache) before any unity steps.
|
||||||
|
|
||||||
|
Example:
|
||||||
|
|
||||||
|
```yaml
|
||||||
|
- uses: actions/cache@v1.1.0
|
||||||
|
with:
|
||||||
|
path: path/to/your/project/Library
|
||||||
|
key: Library-MyProjectName-TargetPlatform
|
||||||
|
restore-keys: |
|
||||||
|
Library-MyProjectName-
|
||||||
|
Library-
|
||||||
|
```
|
||||||
|
|
||||||
|
This simple addition could speed up your build by more than 50%.
|
||||||
|
|
||||||
|
## Complete example
|
||||||
|
|
||||||
|
A complete workflow that builds every available platform could look like this:
|
||||||
|
|
||||||
|
```yaml
|
||||||
|
name: Build project
|
||||||
|
|
||||||
|
on:
|
||||||
|
pull_request: {}
|
||||||
|
push: { branches: [master] }
|
||||||
|
|
||||||
|
env:
|
||||||
|
UNITY_LICENSE: ${{ secrets.UNITY_LICENSE }}
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
buildForSomePlatforms:
|
||||||
|
name: Build for ${{ matrix.targetPlatform }} on version ${{ matrix.unityVersion }}
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
strategy:
|
||||||
|
fail-fast: false
|
||||||
|
matrix:
|
||||||
|
projectPath:
|
||||||
|
- path/to/your/project
|
||||||
|
unityVersion:
|
||||||
|
- 2019.2.11f1
|
||||||
|
- 2019.3.0f1
|
||||||
|
targetPlatform:
|
||||||
|
- StandaloneOSX # Build a macOS standalone (Intel 64-bit).
|
||||||
|
- StandaloneWindows # Build a Windows standalone.
|
||||||
|
- StandaloneWindows64 # Build a Windows 64-bit standalone.
|
||||||
|
- StandaloneLinux64 # Build a Linux 64-bit standalone.
|
||||||
|
- iOS # Build an iOS player.
|
||||||
|
- Android # Build an Android .apk standalone app.
|
||||||
|
- WebGL # WebGL.
|
||||||
|
- WSAPlayer # Build an Windows Store Apps player.
|
||||||
|
- PS4 # Build a PS4 Standalone.
|
||||||
|
- XboxOne # Build a Xbox One Standalone.
|
||||||
|
- tvOS # Build to Apple's tvOS platform.
|
||||||
|
- Switch # Build a Nintendo Switch player.
|
||||||
|
steps:
|
||||||
|
- uses: actions/checkout@v2
|
||||||
|
with:
|
||||||
|
lfs: true
|
||||||
|
- uses: actions/cache@v1.1.0
|
||||||
|
with:
|
||||||
|
path: ${{ matrix.projectPath }}/Library
|
||||||
|
key: Library-${{ matrix.projectPath }}-${{ matrix.targetPlatform }}
|
||||||
|
restore-keys: |
|
||||||
|
Library-${{ matrix.projectPath }}-
|
||||||
|
Library-
|
||||||
|
- uses: webbertakken/unity-builder@<version>
|
||||||
|
with:
|
||||||
|
projectPath: ${{ matrix.projectPath }}
|
||||||
|
unityVersion: ${{ matrix.unityVersion }}
|
||||||
|
targetPlatform: ${{ matrix.targetPlatform }}
|
||||||
|
- uses: actions/upload-artifact@v1
|
||||||
|
with:
|
||||||
|
name: Build
|
||||||
|
path: build
|
||||||
|
```
|
||||||
|
|
||||||
|
> **Note:** _Environment variables are set for all jobs in the workflow like this._
|
||||||
|
|
||||||
|
## Configuration options
|
||||||
|
|
||||||
|
Below options can be specified under `with:` for the `unity-builder` action.
|
||||||
|
|
||||||
|
#### projectPath
|
||||||
|
|
||||||
|
Specify the path to your Unity project to be built.
|
||||||
|
The path should be relative to the root of your project.
|
||||||
|
|
||||||
|
_**required:** `false`_
|
||||||
|
_**default:** `<your project root>`_
|
||||||
|
|
||||||
|
#### unityVersion
|
||||||
|
|
||||||
|
Version of Unity to use for building the project.
|
||||||
|
|
||||||
|
_**required:** `false`_
|
||||||
|
_**default:** `2019.2.1f11`_
|
||||||
|
|
||||||
|
#### targetPlatform
|
||||||
|
|
||||||
|
Platform that the build should target.
|
||||||
|
|
||||||
|
Must be one of the [allowed values](https://docs.unity3d.com/ScriptReference/BuildTarget.html) listed in the Unity scripting manual.
|
||||||
|
|
||||||
|
_**required:** `true`_
|
||||||
|
|
||||||
|
#### buildName
|
||||||
|
|
||||||
|
Name of the build. Also the folder in which the build will be stored within `buildsPath`.
|
||||||
|
|
||||||
|
_**required:** `false`_
|
||||||
|
_**default:** `<build_target>`_
|
||||||
|
|
||||||
|
#### buildsPath
|
||||||
|
|
||||||
|
Path where the builds should be stored.
|
||||||
|
|
||||||
|
In this folder a folder will be created for every targetPlatform.
|
||||||
|
|
||||||
|
_**required:** `false`_
|
||||||
|
_**default:** `build`_
|
||||||
|
|
||||||
|
#### buildMethod
|
||||||
|
|
||||||
|
Custom command to run your build.
|
||||||
|
|
||||||
|
There are two conditions for a custom buildCommand:
|
||||||
|
|
||||||
|
- Must reference a valid path to a `static` method.
|
||||||
|
- The class must reside in the `Assets/Editor` directory.
|
||||||
|
|
||||||
|
_**example:**_
|
||||||
|
|
||||||
|
```yaml
|
||||||
|
- uses: webbertakken/unity-builder@<version>
|
||||||
|
with:
|
||||||
|
buildMethod: EditorNamespace.BuilderClassName.StaticBulidMethod
|
||||||
|
```
|
||||||
|
|
||||||
|
_**required:** `false`_
|
||||||
|
_**default:** Built-in script that will run a build out of the box._
|
||||||
|
|
||||||
|
#### versioning
|
||||||
|
|
||||||
|
Configure a specific versioning strategy
|
||||||
|
|
||||||
|
```yaml
|
||||||
|
- uses: webbertakken/unity-builder@<version>
|
||||||
|
with:
|
||||||
|
versioning: Semantic
|
||||||
|
```
|
||||||
|
|
||||||
|
Find the available strategies below:
|
||||||
|
|
||||||
|
##### Semantic
|
||||||
|
|
||||||
|
Versioning out of the box! **(recommended)**
|
||||||
|
|
||||||
|
> Compatible with **all platforms**.
|
||||||
|
> Does **not** modify your repository.
|
||||||
|
> Requires **zero configuration**.
|
||||||
|
|
||||||
|
How it works:
|
||||||
|
|
||||||
|
> Generates a version based on [semantic versioning](https://semver.org/).
|
||||||
|
> Follows `<major>.<minor>.<patch>` for example `0.17.2`.
|
||||||
|
> The latest tag dictates `<major>.<minor>` (defaults to 0.0 for no tag).
|
||||||
|
> The number of commits (since the last tag, if any) is used for `<patch>`.
|
||||||
|
|
||||||
|
No configuration required.
|
||||||
|
|
||||||
|
##### Custom
|
||||||
|
|
||||||
|
Allows specifying a custom version in the `version` field. **(advanced users)**
|
||||||
|
|
||||||
|
> This strategy is useful when your project or pipeline has some kind of orchestration
|
||||||
|
> that determines the versions.
|
||||||
|
|
||||||
|
##### None
|
||||||
|
|
||||||
|
No version will be set by Builder. **(not recommended)**
|
||||||
|
|
||||||
|
> Not recommended unless you generate a new version in a pre-commit hook. Manually
|
||||||
|
> setting versions is error-prone.
|
||||||
|
|
||||||
|
#### allowDirtyBuild
|
||||||
|
|
||||||
|
Allows the branch of the build to be dirty, and still generate the build.
|
||||||
|
|
||||||
|
```yaml
|
||||||
|
- uses: webbertakken/unity-builder@<version>
|
||||||
|
with:
|
||||||
|
allowDirtyBuild: true
|
||||||
|
```
|
||||||
|
|
||||||
|
Note that it is generally bad practice to modify your branch
|
||||||
|
in a CI Pipeline. However there are exceptions where this might
|
||||||
|
be needed. (use with care).
|
||||||
|
|
||||||
|
#### customParameters
|
||||||
|
|
||||||
|
Custom parameters to configure the build.
|
||||||
|
|
||||||
|
Parameters must start with a hyphen (`-`) and may be followed by a value (without hyphen).
|
||||||
|
|
||||||
|
Parameters without a value will be considered booleans (with a value of true).
|
||||||
|
|
||||||
|
_**example:**_
|
||||||
|
|
||||||
|
```yaml
|
||||||
|
- uses: webbertakken/unity-builder@<version>
|
||||||
|
with:
|
||||||
|
customParameters: -profile SomeProfile -someBoolean -someValue exampleValue
|
||||||
|
```
|
||||||
|
|
||||||
|
_**required:** `false`_
|
||||||
|
_**default:** ""_
|
||||||
|
|
||||||
|
## More actions
|
||||||
|
|
||||||
|
Visit
|
||||||
|
[Unity Actions](https://github.com/webbertakken/unity-actions)
|
||||||
|
to find related actions for Unity.
|
||||||
|
|
||||||
|
Feel free to contribute.
|
||||||
|
|
||||||
## Licence
|
## Licence
|
||||||
|
|
||||||
This repository is [MIT](./LICENSE) licensed.
|
[MIT](./LICENSE)
|
||||||
|
|
||||||
This includes all contributions from the community.
|
|
||||||
|
|||||||
218
action.yml
218
action.yml
@@ -2,19 +2,14 @@ name: 'Unity - Builder'
|
|||||||
author: Webber Takken <webber@takken.io>
|
author: Webber Takken <webber@takken.io>
|
||||||
description: 'Build Unity projects for different platforms.'
|
description: 'Build Unity projects for different platforms.'
|
||||||
inputs:
|
inputs:
|
||||||
targetPlatform:
|
|
||||||
required: true
|
|
||||||
default: ''
|
|
||||||
description: 'Platform that the build should target.'
|
|
||||||
unityVersion:
|
unityVersion:
|
||||||
required: false
|
required: false
|
||||||
default: 'auto'
|
default: ''
|
||||||
description:
|
description: 'Version of unity to use for building the project.'
|
||||||
'Version of unity to use for building the project. Use "auto" to get from your ProjectSettings/ProjectVersion.txt'
|
targetPlatform:
|
||||||
customImage:
|
|
||||||
required: false
|
required: false
|
||||||
default: ''
|
default: ''
|
||||||
description: 'Specific docker image that should be used for building the project'
|
description: 'Platform that the build should target.'
|
||||||
projectPath:
|
projectPath:
|
||||||
required: false
|
required: false
|
||||||
default: ''
|
default: ''
|
||||||
@@ -22,7 +17,7 @@ inputs:
|
|||||||
buildName:
|
buildName:
|
||||||
required: false
|
required: false
|
||||||
default: ''
|
default: ''
|
||||||
description: 'Name of the build. Should not include a file extension.'
|
description: 'Name of the build.'
|
||||||
buildsPath:
|
buildsPath:
|
||||||
required: false
|
required: false
|
||||||
default: ''
|
default: ''
|
||||||
@@ -31,207 +26,10 @@ inputs:
|
|||||||
required: false
|
required: false
|
||||||
default: ''
|
default: ''
|
||||||
description: 'Path to a Namespace.Class.StaticMethod to run to perform the build.'
|
description: 'Path to a Namespace.Class.StaticMethod to run to perform the build.'
|
||||||
manualExit:
|
outputs: {}
|
||||||
required: false
|
|
||||||
default: ''
|
|
||||||
description: 'Suppresses `-quit`. Exit your build method using `EditorApplication.Exit(0)` instead.'
|
|
||||||
customParameters:
|
|
||||||
required: false
|
|
||||||
default: ''
|
|
||||||
description: 'Custom parameters to configure the build.'
|
|
||||||
versioning:
|
|
||||||
required: false
|
|
||||||
default: 'Semantic'
|
|
||||||
description: 'The versioning scheme to use when building the project'
|
|
||||||
version:
|
|
||||||
required: false
|
|
||||||
default: ''
|
|
||||||
description: 'The version, when used with the "Custom" versioning scheme'
|
|
||||||
androidVersionCode:
|
|
||||||
required: false
|
|
||||||
default: ''
|
|
||||||
description: 'The android versionCode'
|
|
||||||
androidExportType:
|
|
||||||
required: false
|
|
||||||
default: 'androidPackage'
|
|
||||||
description:
|
|
||||||
'The android export type. Should be androidPackage for apk, androidAppBundle for aab, or androidStudioProject for
|
|
||||||
an android studio project.'
|
|
||||||
androidKeystoreName:
|
|
||||||
required: false
|
|
||||||
default: ''
|
|
||||||
description: 'The android keystoreName'
|
|
||||||
androidKeystoreBase64:
|
|
||||||
required: false
|
|
||||||
default: ''
|
|
||||||
description: 'The base64 contents of the android keystore file'
|
|
||||||
androidKeystorePass:
|
|
||||||
required: false
|
|
||||||
default: ''
|
|
||||||
description: 'The android keystorePass'
|
|
||||||
androidKeyaliasName:
|
|
||||||
required: false
|
|
||||||
default: ''
|
|
||||||
description: 'The android keyaliasName'
|
|
||||||
androidKeyaliasPass:
|
|
||||||
required: false
|
|
||||||
default: ''
|
|
||||||
description: 'The android keyaliasPass'
|
|
||||||
androidTargetSdkVersion:
|
|
||||||
required: false
|
|
||||||
default: ''
|
|
||||||
description: 'The android target API level.'
|
|
||||||
androidSymbolType:
|
|
||||||
required: false
|
|
||||||
default: 'none'
|
|
||||||
description: 'The android symbol type to export. Should be "none", "public" or "debugging".'
|
|
||||||
sshAgent:
|
|
||||||
required: false
|
|
||||||
default: ''
|
|
||||||
description: 'SSH Agent path to forward to the container'
|
|
||||||
sshPublicKeysDirectoryPath:
|
|
||||||
required: false
|
|
||||||
default: ''
|
|
||||||
description: 'Path to a directory containing SSH public keys to forward to the container.'
|
|
||||||
gitPrivateToken:
|
|
||||||
required: false
|
|
||||||
default: ''
|
|
||||||
description: '[CloudRunner] Github private token to pull from github'
|
|
||||||
githubOwner:
|
|
||||||
required: false
|
|
||||||
default: ''
|
|
||||||
description: '[CloudRunner] GitHub owner name or organization/team name'
|
|
||||||
chownFilesTo:
|
|
||||||
required: false
|
|
||||||
default: ''
|
|
||||||
description:
|
|
||||||
'User and optionally group (user or user:group or uid:gid) to give ownership of the resulting build artifacts'
|
|
||||||
allowDirtyBuild:
|
|
||||||
required: false
|
|
||||||
default: ''
|
|
||||||
description: '[CloudRunner] Allows the branch of the build to be dirty, and still generate the build.'
|
|
||||||
postBuildSteps:
|
|
||||||
required: false
|
|
||||||
default: ''
|
|
||||||
description:
|
|
||||||
'[CloudRunner] run a post build job in yaml format with the keys image, secrets (name, value object array),
|
|
||||||
command string'
|
|
||||||
preBuildSteps:
|
|
||||||
required: false
|
|
||||||
default: ''
|
|
||||||
description:
|
|
||||||
'[CloudRunner] Run a pre build job after the repository setup but before the build job (in yaml format with the
|
|
||||||
keys image, secrets (name, value object array), command line string)'
|
|
||||||
containerHookFiles:
|
|
||||||
required: false
|
|
||||||
default: ''
|
|
||||||
description:
|
|
||||||
'[CloudRunner] Specify the names (by file name) of custom steps to run before or after cloud runner jobs, must
|
|
||||||
match a yaml step file inside your repo in the folder .game-ci/steps/'
|
|
||||||
customHookFiles:
|
|
||||||
required: false
|
|
||||||
default: ''
|
|
||||||
description:
|
|
||||||
'[CloudRunner] Specify the names (by file name) of custom hooks to run before or after cloud runner jobs, must
|
|
||||||
match a yaml step file inside your repo in the folder .game-ci/hooks/'
|
|
||||||
customCommandHooks:
|
|
||||||
required: false
|
|
||||||
default: ''
|
|
||||||
description: '[CloudRunner] Specify custom commands and trigger hooks (injects commands into jobs)'
|
|
||||||
customJob:
|
|
||||||
required: false
|
|
||||||
default: ''
|
|
||||||
description:
|
|
||||||
'[CloudRunner] Run a custom job instead of the standard build automation for cloud runner (in yaml format with the
|
|
||||||
keys image, secrets (name, value object array), command line string)'
|
|
||||||
awsStackName:
|
|
||||||
default: 'game-ci'
|
|
||||||
required: false
|
|
||||||
description: '[CloudRunner] The Cloud Formation stack name that must be setup before using this option.'
|
|
||||||
providerStrategy:
|
|
||||||
default: 'local'
|
|
||||||
required: false
|
|
||||||
description:
|
|
||||||
'[CloudRunner] Either local, k8s or aws can be used to run builds on a remote cluster. Additional parameters must
|
|
||||||
be configured.'
|
|
||||||
cloudRunnerCpu:
|
|
||||||
default: ''
|
|
||||||
required: false
|
|
||||||
description: '[CloudRunner] Amount of CPU time to assign the remote build container'
|
|
||||||
cloudRunnerMemory:
|
|
||||||
default: ''
|
|
||||||
required: false
|
|
||||||
description: '[CloudRunner] Amount of memory to assign the remote build container'
|
|
||||||
readInputFromOverrideList:
|
|
||||||
default: ''
|
|
||||||
required: false
|
|
||||||
description: '[CloudRunner] Comma separated list of input value names to read from "input override command"'
|
|
||||||
readInputOverrideCommand:
|
|
||||||
default: ''
|
|
||||||
required: false
|
|
||||||
description:
|
|
||||||
'[CloudRunner] Extend game ci by specifying a command to execute to pull input from external source e.g cloud
|
|
||||||
provider secret managers'
|
|
||||||
kubeConfig:
|
|
||||||
default: ''
|
|
||||||
required: false
|
|
||||||
description:
|
|
||||||
'[CloudRunner] Supply a base64 encoded kubernetes config to run builds on kubernetes and stream logs until
|
|
||||||
completion.'
|
|
||||||
kubeVolume:
|
|
||||||
default: ''
|
|
||||||
required: false
|
|
||||||
description: '[CloudRunner] Supply a Persistent Volume Claim name to use for the Unity build.'
|
|
||||||
kubeStorageClass:
|
|
||||||
default: ''
|
|
||||||
required: false
|
|
||||||
description:
|
|
||||||
'[CloudRunner] Kubernetes storage class to use for cloud runner jobs, leave empty to install rook cluster.'
|
|
||||||
kubeVolumeSize:
|
|
||||||
default: '5Gi'
|
|
||||||
required: false
|
|
||||||
description: '[CloudRunner] Amount of disc space to assign the Kubernetes Persistent Volume'
|
|
||||||
cacheKey:
|
|
||||||
default: ''
|
|
||||||
required: false
|
|
||||||
description: '[CloudRunner] Cache key to indicate bucket for cache'
|
|
||||||
watchToEnd:
|
|
||||||
default: 'true'
|
|
||||||
required: false
|
|
||||||
description:
|
|
||||||
'[CloudRunner] Whether or not to watch the build to the end. Can be used for especially long running jobs e.g
|
|
||||||
imports or self-hosted ephemeral runners.'
|
|
||||||
cacheUnityInstallationOnMac:
|
|
||||||
default: 'false'
|
|
||||||
required: false
|
|
||||||
description: 'Whether to cache the Unity hub and editor installation on MacOS'
|
|
||||||
unityHubVersionOnMac:
|
|
||||||
default: ''
|
|
||||||
required: false
|
|
||||||
description:
|
|
||||||
'The version of Unity Hub to install on MacOS (e.g. 3.4.0). Defaults to latest available on brew if empty string
|
|
||||||
or nothing is specified.'
|
|
||||||
unityLicensingServer:
|
|
||||||
default: ''
|
|
||||||
required: false
|
|
||||||
description: 'The Unity licensing server address to use for activating Unity.'
|
|
||||||
dockerWorkspacePath:
|
|
||||||
default: '/github/workspace'
|
|
||||||
required: false
|
|
||||||
description:
|
|
||||||
'The path to mount the workspace inside the docker container. For windows, leave out the drive letter. For example
|
|
||||||
c:/github/workspace should be defined as /github/workspace'
|
|
||||||
|
|
||||||
outputs:
|
|
||||||
volume:
|
|
||||||
description: 'The Persistent Volume (PV) where the build artifacts have been stored by Kubernetes'
|
|
||||||
buildVersion:
|
|
||||||
description: 'The generated version used for the Unity build'
|
|
||||||
androidVersionCode:
|
|
||||||
description: 'The generated versionCode used for the Android Unity build'
|
|
||||||
branding:
|
branding:
|
||||||
icon: 'box'
|
icon: 'box'
|
||||||
color: 'gray-dark'
|
color: 'gray-dark'
|
||||||
runs:
|
runs:
|
||||||
using: 'node16'
|
using: 'node12'
|
||||||
main: 'dist/index.js'
|
main: 'action/index.js'
|
||||||
|
|||||||
18
action/Dockerfile
Normal file
18
action/Dockerfile
Normal file
@@ -0,0 +1,18 @@
|
|||||||
|
ARG IMAGE
|
||||||
|
FROM $IMAGE
|
||||||
|
|
||||||
|
LABEL "com.github.actions.name"="Unity - Builder"
|
||||||
|
LABEL "com.github.actions.description"="Build Unity projects for different platforms."
|
||||||
|
LABEL "com.github.actions.icon"="box"
|
||||||
|
LABEL "com.github.actions.color"="gray-dark"
|
||||||
|
|
||||||
|
LABEL "repository"="http://github.com/webbertakken/unity-actions"
|
||||||
|
LABEL "homepage"="http://github.com/webbertakken/unity-actions"
|
||||||
|
LABEL "maintainer"="Webber Takken <webber@takken.io>"
|
||||||
|
|
||||||
|
ADD default-build-script /UnityBuilderAction
|
||||||
|
ADD steps /steps
|
||||||
|
RUN chmod -R +x /steps
|
||||||
|
ADD entrypoint.sh /entrypoint.sh
|
||||||
|
RUN chmod +x /entrypoint.sh
|
||||||
|
ENTRYPOINT ["/entrypoint.sh"]
|
||||||
44
action/default-build-script/Assets/Editor/Builder.cs
Normal file
44
action/default-build-script/Assets/Editor/Builder.cs
Normal file
@@ -0,0 +1,44 @@
|
|||||||
|
using System;
|
||||||
|
using System.Collections.Generic;
|
||||||
|
using System.Linq;
|
||||||
|
using UnityBuilderAction.Input;
|
||||||
|
using UnityBuilderAction.Reporting;
|
||||||
|
using UnityBuilderAction.Versioning;
|
||||||
|
using UnityEditor;
|
||||||
|
using UnityEditor.Build.Reporting;
|
||||||
|
|
||||||
|
namespace UnityBuilderAction
|
||||||
|
{
|
||||||
|
static class Builder
|
||||||
|
{
|
||||||
|
public static void BuildProject()
|
||||||
|
{
|
||||||
|
// Gather values from args
|
||||||
|
var options = ArgumentsParser.GetValidatedOptions();
|
||||||
|
|
||||||
|
// Gather values from project
|
||||||
|
var scenes = EditorBuildSettings.scenes.Where(scene => scene.enabled).Select(s => s.path).ToArray();
|
||||||
|
|
||||||
|
// Define BuildPlayer Options
|
||||||
|
var buildOptions = new BuildPlayerOptions {
|
||||||
|
scenes = scenes,
|
||||||
|
locationPathName = options["customBuildPath"],
|
||||||
|
target = (BuildTarget) Enum.Parse(typeof(BuildTarget), options["buildTarget"]),
|
||||||
|
};
|
||||||
|
|
||||||
|
// Set version for this build
|
||||||
|
VersionApplicator.SetVersion(options["version"]);
|
||||||
|
|
||||||
|
// Perform build
|
||||||
|
BuildReport buildReport = BuildPipeline.BuildPlayer(buildOptions);
|
||||||
|
|
||||||
|
// Summary
|
||||||
|
BuildSummary summary = buildReport.summary;
|
||||||
|
StdOutReporter.ReportSummary(summary);
|
||||||
|
|
||||||
|
// Result
|
||||||
|
BuildResult result = summary.result;
|
||||||
|
StdOutReporter.ExitWithResult(result);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -1,6 +1,5 @@
|
|||||||
using System;
|
using System;
|
||||||
using System.Collections.Generic;
|
using System.Collections.Generic;
|
||||||
using System.Linq;
|
|
||||||
using UnityEditor;
|
using UnityEditor;
|
||||||
|
|
||||||
namespace UnityBuilderAction.Input
|
namespace UnityBuilderAction.Input
|
||||||
@@ -8,39 +7,32 @@ namespace UnityBuilderAction.Input
|
|||||||
public class ArgumentsParser
|
public class ArgumentsParser
|
||||||
{
|
{
|
||||||
static string EOL = Environment.NewLine;
|
static string EOL = Environment.NewLine;
|
||||||
static readonly string[] Secrets = { "androidKeystorePass", "androidKeyaliasName", "androidKeyaliasPass" };
|
|
||||||
|
|
||||||
public static Dictionary<string, string> GetValidatedOptions()
|
public static Dictionary<string, string> GetValidatedOptions()
|
||||||
{
|
{
|
||||||
Dictionary<string, string> validatedOptions;
|
ParseCommandLineArguments(out var validatedOptions);
|
||||||
ParseCommandLineArguments(out validatedOptions);
|
|
||||||
|
|
||||||
string projectPath;
|
if (!validatedOptions.TryGetValue("projectPath", out var projectPath)) {
|
||||||
if (!validatedOptions.TryGetValue("projectPath", out projectPath)) {
|
|
||||||
Console.WriteLine("Missing argument -projectPath");
|
Console.WriteLine("Missing argument -projectPath");
|
||||||
EditorApplication.Exit(110);
|
EditorApplication.Exit(110);
|
||||||
}
|
}
|
||||||
|
|
||||||
string buildTarget;
|
if (!validatedOptions.TryGetValue("buildTarget", out var buildTarget)) {
|
||||||
if (!validatedOptions.TryGetValue("buildTarget", out buildTarget)) {
|
|
||||||
Console.WriteLine("Missing argument -buildTarget");
|
Console.WriteLine("Missing argument -buildTarget");
|
||||||
EditorApplication.Exit(120);
|
EditorApplication.Exit(120);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!Enum.IsDefined(typeof(BuildTarget), buildTarget)) {
|
if (!Enum.IsDefined(typeof(BuildTarget), buildTarget)) {
|
||||||
Console.WriteLine($"{buildTarget} is not a defined {nameof(BuildTarget)}");
|
|
||||||
EditorApplication.Exit(121);
|
EditorApplication.Exit(121);
|
||||||
}
|
}
|
||||||
|
|
||||||
string customBuildPath;
|
if (!validatedOptions.TryGetValue("customBuildPath", out var customBuildPath)) {
|
||||||
if (!validatedOptions.TryGetValue("customBuildPath", out customBuildPath)) {
|
|
||||||
Console.WriteLine("Missing argument -customBuildPath");
|
Console.WriteLine("Missing argument -customBuildPath");
|
||||||
EditorApplication.Exit(130);
|
EditorApplication.Exit(130);
|
||||||
}
|
}
|
||||||
|
|
||||||
const string defaultCustomBuildName = "TestBuild";
|
const string defaultCustomBuildName = "TestBuild";
|
||||||
string customBuildName;
|
if (!validatedOptions.TryGetValue("customBuildName", out var customBuildName)) {
|
||||||
if (!validatedOptions.TryGetValue("customBuildName", out customBuildName)) {
|
|
||||||
Console.WriteLine($"Missing argument -customBuildName, defaulting to {defaultCustomBuildName}.");
|
Console.WriteLine($"Missing argument -customBuildName, defaulting to {defaultCustomBuildName}.");
|
||||||
validatedOptions.Add("customBuildName", defaultCustomBuildName);
|
validatedOptions.Add("customBuildName", defaultCustomBuildName);
|
||||||
} else if (customBuildName == "") {
|
} else if (customBuildName == "") {
|
||||||
@@ -74,11 +66,9 @@ namespace UnityBuilderAction.Input
|
|||||||
// Parse optional value
|
// Parse optional value
|
||||||
bool flagHasValue = next < args.Length && !args[next].StartsWith("-");
|
bool flagHasValue = next < args.Length && !args[next].StartsWith("-");
|
||||||
string value = flagHasValue ? args[next].TrimStart('-') : "";
|
string value = flagHasValue ? args[next].TrimStart('-') : "";
|
||||||
bool secret = Secrets.Contains(flag);
|
|
||||||
string displayValue = secret ? "*HIDDEN*" : "\"" + value + "\"";
|
|
||||||
|
|
||||||
// Assign
|
// Assign
|
||||||
Console.WriteLine($"Found flag \"{flag}\" with value {displayValue}.");
|
Console.WriteLine($"Found flag \"{flag}\" with value \"{value}\".");
|
||||||
providedArguments.Add(flag, value);
|
providedArguments.Add(flag, value);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -104,10 +104,9 @@ namespace UnityBuilderAction.Versioning
|
|||||||
static string Run(string arguments)
|
static string Run(string arguments)
|
||||||
{
|
{
|
||||||
using (var process = new System.Diagnostics.Process()) {
|
using (var process = new System.Diagnostics.Process()) {
|
||||||
string workingDirectory = UnityEngine.Application.dataPath;
|
string workingDirectory = Application.dataPath;
|
||||||
|
|
||||||
string output, errors;
|
int exitCode = process.Run(application, arguments, workingDirectory, out string output, out string errors);
|
||||||
int exitCode = process.Run(application, arguments, workingDirectory, out output, out errors);
|
|
||||||
if (exitCode != 0) { throw new GitException(exitCode, errors); }
|
if (exitCode != 0) { throw new GitException(exitCode, errors); }
|
||||||
|
|
||||||
return output;
|
return output;
|
||||||
@@ -1,4 +1,5 @@
|
|||||||
using System;
|
using System;
|
||||||
|
using JetBrains.Annotations;
|
||||||
using UnityEditor;
|
using UnityEditor;
|
||||||
|
|
||||||
namespace UnityBuilderAction.Versioning
|
namespace UnityBuilderAction.Versioning
|
||||||
@@ -14,19 +15,9 @@ namespace UnityBuilderAction.Versioning
|
|||||||
Apply(version);
|
Apply(version);
|
||||||
}
|
}
|
||||||
|
|
||||||
public static void SetAndroidVersionCode(string androidVersionCode) {
|
|
||||||
int bundleVersionCode = Int32.Parse(androidVersionCode);
|
|
||||||
if (bundleVersionCode <= 0) {
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
PlayerSettings.Android.bundleVersionCode = bundleVersionCode;
|
|
||||||
}
|
|
||||||
|
|
||||||
static void Apply(string version)
|
static void Apply(string version)
|
||||||
{
|
{
|
||||||
PlayerSettings.bundleVersion = version;
|
PlayerSettings.bundleVersion = version;
|
||||||
PlayerSettings.macOS.buildNumber = version;
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
15
action/entrypoint.sh
Normal file
15
action/entrypoint.sh
Normal file
@@ -0,0 +1,15 @@
|
|||||||
|
#!/usr/bin/env bash
|
||||||
|
|
||||||
|
#
|
||||||
|
# Run steps
|
||||||
|
#
|
||||||
|
|
||||||
|
source /steps/activate.sh
|
||||||
|
source /steps/build.sh
|
||||||
|
source /steps/return_license.sh
|
||||||
|
|
||||||
|
#
|
||||||
|
# Exit with code from the build step.
|
||||||
|
#
|
||||||
|
|
||||||
|
exit $BUILD_EXIT_CODE
|
||||||
1
action/index.js
Normal file
1
action/index.js
Normal file
File diff suppressed because one or more lines are too long
34
dist/platforms/ubuntu/steps/activate.sh → action/steps/activate.sh
Executable file → Normal file
34
dist/platforms/ubuntu/steps/activate.sh → action/steps/activate.sh
Executable file → Normal file
@@ -1,9 +1,5 @@
|
|||||||
#!/usr/bin/env bash
|
#!/usr/bin/env bash
|
||||||
|
|
||||||
# Run in ACTIVATE_LICENSE_PATH directory
|
|
||||||
echo "Changing to \"$ACTIVATE_LICENSE_PATH\" directory."
|
|
||||||
pushd "$ACTIVATE_LICENSE_PATH"
|
|
||||||
|
|
||||||
if [[ -n "$UNITY_LICENSE" ]] || [[ -n "$UNITY_LICENSE_FILE" ]]; then
|
if [[ -n "$UNITY_LICENSE" ]] || [[ -n "$UNITY_LICENSE_FILE" ]]; then
|
||||||
#
|
#
|
||||||
# PERSONAL LICENSE MODE
|
# PERSONAL LICENSE MODE
|
||||||
@@ -28,7 +24,10 @@ if [[ -n "$UNITY_LICENSE" ]] || [[ -n "$UNITY_LICENSE_FILE" ]]; then
|
|||||||
fi
|
fi
|
||||||
|
|
||||||
# Activate license
|
# Activate license
|
||||||
ACTIVATION_OUTPUT=$(unity-editor \
|
ACTIVATION_OUTPUT=$(xvfb-run --auto-servernum --server-args='-screen 0 640x480x24' \
|
||||||
|
/opt/Unity/Editor/Unity \
|
||||||
|
-batchmode \
|
||||||
|
-nographics \
|
||||||
-logFile /dev/stdout \
|
-logFile /dev/stdout \
|
||||||
-quit \
|
-quit \
|
||||||
-manualLicenseFile $FILE_PATH)
|
-manualLicenseFile $FILE_PATH)
|
||||||
@@ -64,7 +63,10 @@ elif [[ -n "$UNITY_SERIAL" && -n "$UNITY_EMAIL" && -n "$UNITY_PASSWORD" ]]; then
|
|||||||
echo "Requesting activation (professional license)"
|
echo "Requesting activation (professional license)"
|
||||||
|
|
||||||
# Activate license
|
# Activate license
|
||||||
unity-editor \
|
xvfb-run --auto-servernum --server-args='-screen 0 640x480x24' \
|
||||||
|
/opt/Unity/Editor/Unity \
|
||||||
|
-batchmode \
|
||||||
|
-nographics \
|
||||||
-logFile /dev/stdout \
|
-logFile /dev/stdout \
|
||||||
-quit \
|
-quit \
|
||||||
-serial "$UNITY_SERIAL" \
|
-serial "$UNITY_SERIAL" \
|
||||||
@@ -74,21 +76,6 @@ elif [[ -n "$UNITY_SERIAL" && -n "$UNITY_EMAIL" && -n "$UNITY_PASSWORD" ]]; then
|
|||||||
# Store the exit code from the verify command
|
# Store the exit code from the verify command
|
||||||
UNITY_EXIT_CODE=$?
|
UNITY_EXIT_CODE=$?
|
||||||
|
|
||||||
elif [[ -n "$UNITY_LICENSING_SERVER" ]]; then
|
|
||||||
#
|
|
||||||
# Custom Unity License Server
|
|
||||||
#
|
|
||||||
echo "Adding licensing server config"
|
|
||||||
|
|
||||||
/opt/unity/Editor/Data/Resources/Licensing/Client/Unity.Licensing.Client --acquire-floating > license.txt #is this accessible in a env variable?
|
|
||||||
PARSEDFILE=$(grep -oP '\".*?\"' < license.txt | tr -d '"')
|
|
||||||
export FLOATING_LICENSE
|
|
||||||
FLOATING_LICENSE=$(sed -n 2p <<< "$PARSEDFILE")
|
|
||||||
FLOATING_LICENSE_TIMEOUT=$(sed -n 4p <<< "$PARSEDFILE")
|
|
||||||
|
|
||||||
echo "Acquired floating license: \"$FLOATING_LICENSE\" with timeout $FLOATING_LICENSE_TIMEOUT"
|
|
||||||
# Store the exit code from the verify command
|
|
||||||
UNITY_EXIT_CODE=$?
|
|
||||||
else
|
else
|
||||||
#
|
#
|
||||||
# NO LICENSE ACTIVATION STRATEGY MATCHED
|
# NO LICENSE ACTIVATION STRATEGY MATCHED
|
||||||
@@ -97,7 +84,7 @@ else
|
|||||||
#
|
#
|
||||||
echo "License activation strategy could not be determined."
|
echo "License activation strategy could not be determined."
|
||||||
echo ""
|
echo ""
|
||||||
echo "Visit https://game.ci/docs/github/getting-started for more"
|
echo "Visit https://github.com/webbertakken/unity-builder#usage for more"
|
||||||
echo "details on how to set up one of the possible activation strategies."
|
echo "details on how to set up one of the possible activation strategies."
|
||||||
|
|
||||||
# Immediately exit as no UNITY_EXIT_CODE can be derrived.
|
# Immediately exit as no UNITY_EXIT_CODE can be derrived.
|
||||||
@@ -117,6 +104,3 @@ else
|
|||||||
echo "Exit code was: $UNITY_EXIT_CODE"
|
echo "Exit code was: $UNITY_EXIT_CODE"
|
||||||
exit $UNITY_EXIT_CODE
|
exit $UNITY_EXIT_CODE
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# Return to previous working directory
|
|
||||||
popd
|
|
||||||
76
dist/platforms/ubuntu/steps/build.sh → action/steps/build.sh
Executable file → Normal file
76
dist/platforms/ubuntu/steps/build.sh → action/steps/build.sh
Executable file → Normal file
@@ -48,7 +48,7 @@ if [ -z "$BUILD_METHOD" ]; then
|
|||||||
# Create Editor directory if it does not exist
|
# Create Editor directory if it does not exist
|
||||||
mkdir -p "$UNITY_PROJECT_PATH/Assets/Editor/"
|
mkdir -p "$UNITY_PROJECT_PATH/Assets/Editor/"
|
||||||
# Copy the build script of Unity Builder action
|
# Copy the build script of Unity Builder action
|
||||||
cp -R "/UnityBuilderAction/Assets/Editor/" "$UNITY_PROJECT_PATH/Assets/Editor/"
|
cp -r "/UnityBuilderAction/Assets/Editor" "$UNITY_PROJECT_PATH/Assets/Editor/"
|
||||||
# Set the Build method to that of UnityBuilder Action
|
# Set the Build method to that of UnityBuilder Action
|
||||||
BUILD_METHOD="UnityBuilderAction.Builder.BuildProject"
|
BUILD_METHOD="UnityBuilderAction.Builder.BuildProject"
|
||||||
# Verify recursive paths
|
# Verify recursive paths
|
||||||
@@ -63,30 +63,17 @@ else
|
|||||||
fi
|
fi
|
||||||
|
|
||||||
#
|
#
|
||||||
# Prepare Android SDK, if needed
|
# Display custom parameters
|
||||||
#
|
#
|
||||||
|
echo "Using custom parameters $CUSTOM_PARAMETERS."
|
||||||
|
|
||||||
if [[ "$BUILD_TARGET" == "Android" && -n "$ANDROID_SDK_MANAGER_PARAMETERS" ]]; then
|
# The build specification below may require Unity 2019.2.11f1 or later (not tested below).
|
||||||
echo "Updating Android SDK with parameters: $ANDROID_SDK_MANAGER_PARAMETERS"
|
# Reference: https://docs.unity3d.com/2019.3/Documentation/Manual/CommandLineArguments.html
|
||||||
export JAVA_HOME="$(awk -F'=' '/JAVA_HOME=/{print $2}' /usr/bin/unity-editor.d/*)"
|
|
||||||
"$(awk -F'=' '/ANDROID_HOME=/{print $2}' /usr/bin/unity-editor.d/*)/cmdline-tools/6.0/bin/sdkmanager" "$ANDROID_SDK_MANAGER_PARAMETERS"
|
|
||||||
echo "Updated Android SDK."
|
|
||||||
else
|
|
||||||
echo "Not updating Android SDK."
|
|
||||||
fi
|
|
||||||
|
|
||||||
#
|
#
|
||||||
# Pre-build debug information
|
# Build info
|
||||||
#
|
#
|
||||||
|
|
||||||
echo ""
|
|
||||||
echo "###########################"
|
|
||||||
echo "# Custom parameters #"
|
|
||||||
echo "###########################"
|
|
||||||
echo ""
|
|
||||||
|
|
||||||
echo "$CUSTOM_PARAMETERS"
|
|
||||||
|
|
||||||
echo ""
|
echo ""
|
||||||
echo "###########################"
|
echo "###########################"
|
||||||
echo "# Current build dir #"
|
echo "# Current build dir #"
|
||||||
@@ -103,38 +90,27 @@ echo "# Project directory #"
|
|||||||
echo "###########################"
|
echo "###########################"
|
||||||
echo ""
|
echo ""
|
||||||
|
|
||||||
ls -alh "$UNITY_PROJECT_PATH"
|
ls -alh $UNITY_PROJECT_PATH
|
||||||
|
|
||||||
#
|
|
||||||
# Build
|
|
||||||
#
|
|
||||||
|
|
||||||
echo ""
|
echo ""
|
||||||
echo "###########################"
|
echo "###########################"
|
||||||
echo "# Building project #"
|
echo "# Building platform #"
|
||||||
echo "###########################"
|
echo "###########################"
|
||||||
echo ""
|
echo ""
|
||||||
|
|
||||||
# Reference: https://docs.unity3d.com/2019.3/Documentation/Manual/CommandLineArguments.html
|
xvfb-run --auto-servernum --server-args='-screen 0 640x480x24' \
|
||||||
|
/opt/Unity/Editor/Unity \
|
||||||
unity-editor \
|
-batchmode \
|
||||||
-logfile /dev/stdout \
|
-logfile /dev/stdout \
|
||||||
$( [ "${MANUAL_EXIT}" == "true" ] || echo "-quit" ) \
|
-quit \
|
||||||
-customBuildName "$BUILD_NAME" \
|
-customBuildName "$BUILD_NAME" \
|
||||||
-projectPath "$UNITY_PROJECT_PATH" \
|
-projectPath "$UNITY_PROJECT_PATH" \
|
||||||
-buildTarget "$BUILD_TARGET" \
|
-buildTarget "$BUILD_TARGET" \
|
||||||
-customBuildTarget "$BUILD_TARGET" \
|
-customBuildTarget "$BUILD_TARGET" \
|
||||||
-customBuildPath "$CUSTOM_BUILD_PATH" \
|
-customBuildPath "$CUSTOM_BUILD_PATH" \
|
||||||
-executeMethod "$BUILD_METHOD" \
|
-executeMethod "$BUILD_METHOD" \
|
||||||
-buildVersion "$VERSION" \
|
-versioning "$VERSIONING" \
|
||||||
-androidVersionCode "$ANDROID_VERSION_CODE" \
|
-version "$VERSION" \
|
||||||
-androidKeystoreName "$ANDROID_KEYSTORE_NAME" \
|
|
||||||
-androidKeystorePass "$ANDROID_KEYSTORE_PASS" \
|
|
||||||
-androidKeyaliasName "$ANDROID_KEYALIAS_NAME" \
|
|
||||||
-androidKeyaliasPass "$ANDROID_KEYALIAS_PASS" \
|
|
||||||
-androidTargetSdkVersion "$ANDROID_TARGET_SDK_VERSION" \
|
|
||||||
-androidExportType "$ANDROID_EXPORT_TYPE" \
|
|
||||||
-androidSymbolType "$ANDROID_SYMBOL_TYPE" \
|
|
||||||
$CUSTOM_PARAMETERS
|
$CUSTOM_PARAMETERS
|
||||||
|
|
||||||
# Catch exit code
|
# Catch exit code
|
||||||
@@ -147,25 +123,11 @@ else
|
|||||||
echo "Build failed, with exit code $BUILD_EXIT_CODE";
|
echo "Build failed, with exit code $BUILD_EXIT_CODE";
|
||||||
fi
|
fi
|
||||||
|
|
||||||
#
|
# Add permissions to make app runnable
|
||||||
# Permissions
|
|
||||||
#
|
|
||||||
|
|
||||||
# Make a given user owner of all artifacts
|
|
||||||
if [[ -n "$CHOWN_FILES_TO" ]]; then
|
|
||||||
echo "Changing ownership of files to $CHOWN_FILES_TO for $BUILD_PATH_FULL and $UNITY_PROJECT_PATH"
|
|
||||||
chown -R "$CHOWN_FILES_TO" "$BUILD_PATH_FULL"
|
|
||||||
chown -R "$CHOWN_FILES_TO" "$UNITY_PROJECT_PATH"
|
|
||||||
fi
|
|
||||||
|
|
||||||
# Add read permissions for everyone to all artifacts
|
|
||||||
chmod -R a+r "$BUILD_PATH_FULL"
|
|
||||||
chmod -R a+r "$UNITY_PROJECT_PATH"
|
|
||||||
|
|
||||||
# Add execute permissions to specific files
|
|
||||||
if [[ "$BUILD_TARGET" == "StandaloneOSX" ]]; then
|
if [[ "$BUILD_TARGET" == "StandaloneOSX" ]]; then
|
||||||
OSX_EXECUTABLE_PATH="$BUILD_PATH_FULL/$BUILD_NAME.app/Contents/MacOS"
|
ADD_PERMISSIONS_PATH=$BUILD_PATH_FULL/StandaloneOSX.app/Contents/MacOS/*
|
||||||
find "$OSX_EXECUTABLE_PATH" -type f -exec chmod +x {} \;
|
echo "Making the following path executable: $ADD_PERMISSIONS_PATH"
|
||||||
|
chmod +x $ADD_PERMISSIONS_PATH
|
||||||
fi
|
fi
|
||||||
|
|
||||||
#
|
#
|
||||||
@@ -174,7 +136,7 @@ fi
|
|||||||
|
|
||||||
echo ""
|
echo ""
|
||||||
echo "###########################"
|
echo "###########################"
|
||||||
echo "# Build output #"
|
echo "# Build directory #"
|
||||||
echo "###########################"
|
echo "###########################"
|
||||||
echo ""
|
echo ""
|
||||||
|
|
||||||
16
action/steps/return_license.sh
Normal file
16
action/steps/return_license.sh
Normal file
@@ -0,0 +1,16 @@
|
|||||||
|
#!/usr/bin/env bash
|
||||||
|
|
||||||
|
if [[ -n "$UNITY_SERIAL" ]]; then
|
||||||
|
#
|
||||||
|
# PROFESSIONAL (SERIAL) LICENSE MODE
|
||||||
|
#
|
||||||
|
# This will return the license that is currently in use.
|
||||||
|
#
|
||||||
|
xvfb-run --auto-servernum --server-args='-screen 0 640x480x24' \
|
||||||
|
/opt/Unity/Editor/Unity \
|
||||||
|
-batchmode \
|
||||||
|
-nographics \
|
||||||
|
-logFile /dev/stdout \
|
||||||
|
-quit \
|
||||||
|
-returnlicense
|
||||||
|
fi
|
||||||
15
babel.config.js
Normal file
15
babel.config.js
Normal file
@@ -0,0 +1,15 @@
|
|||||||
|
const esModules = ['lodash-es'].join('|');
|
||||||
|
|
||||||
|
module.exports = {
|
||||||
|
ignore: [`/node_modules/(?!${esModules})`],
|
||||||
|
presets: [
|
||||||
|
[
|
||||||
|
'@babel/preset-env',
|
||||||
|
{
|
||||||
|
targets: {
|
||||||
|
node: true,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
],
|
||||||
|
],
|
||||||
|
};
|
||||||
BIN
dist/.DS_Store
vendored
BIN
dist/.DS_Store
vendored
Binary file not shown.
49
dist/BlankProject/.gitignore
vendored
49
dist/BlankProject/.gitignore
vendored
@@ -1,49 +0,0 @@
|
|||||||
Library/
|
|
||||||
[Tt]emp/
|
|
||||||
[Oo]bj/
|
|
||||||
[Bb]uild/
|
|
||||||
[Bb]uilds/
|
|
||||||
[Ll]ogs/
|
|
||||||
|
|
||||||
# Uncomment this line if you wish to ignore the asset store tools plugin
|
|
||||||
# [Aa]ssets/AssetStoreTools*
|
|
||||||
|
|
||||||
# IDEs
|
|
||||||
.vs/
|
|
||||||
.idea/
|
|
||||||
|
|
||||||
# Gradle cache directory
|
|
||||||
.gradle/
|
|
||||||
|
|
||||||
# Autogenerated VS/MD/Consulo solution and project files
|
|
||||||
ExportedObj/
|
|
||||||
.consulo/
|
|
||||||
*.csproj
|
|
||||||
*.unityproj
|
|
||||||
*.sln
|
|
||||||
*.suo
|
|
||||||
*.tmp
|
|
||||||
*.user
|
|
||||||
*.userprefs
|
|
||||||
*.pidb
|
|
||||||
*.booproj
|
|
||||||
*.svd
|
|
||||||
*.pdb
|
|
||||||
*.mdb
|
|
||||||
*.opendb
|
|
||||||
*.VC.db
|
|
||||||
|
|
||||||
# Unity3D generated meta files
|
|
||||||
*.pidb.meta
|
|
||||||
*.pdb.meta
|
|
||||||
*.mdb.meta
|
|
||||||
|
|
||||||
# Unity3D generated file on crash reports
|
|
||||||
sysinfo.txt
|
|
||||||
|
|
||||||
# Builds
|
|
||||||
*.apk
|
|
||||||
*.unitypackage
|
|
||||||
|
|
||||||
# Crashlytics generated file
|
|
||||||
crashlytics-build.properties
|
|
||||||
8
dist/BlankProject/Assets/Scenes.meta
vendored
8
dist/BlankProject/Assets/Scenes.meta
vendored
@@ -1,8 +0,0 @@
|
|||||||
fileFormatVersion: 2
|
|
||||||
guid: 131a6b21c8605f84396be9f6751fb6e3
|
|
||||||
folderAsset: yes
|
|
||||||
DefaultImporter:
|
|
||||||
externalObjects: {}
|
|
||||||
userData:
|
|
||||||
assetBundleName:
|
|
||||||
assetBundleVariant:
|
|
||||||
208
dist/BlankProject/Assets/Scenes/SampleScene.unity
vendored
208
dist/BlankProject/Assets/Scenes/SampleScene.unity
vendored
@@ -1,208 +0,0 @@
|
|||||||
%YAML 1.1
|
|
||||||
%TAG !u! tag:unity3d.com,2011:
|
|
||||||
--- !u!29 &1
|
|
||||||
OcclusionCullingSettings:
|
|
||||||
m_ObjectHideFlags: 0
|
|
||||||
serializedVersion: 2
|
|
||||||
m_OcclusionBakeSettings:
|
|
||||||
smallestOccluder: 5
|
|
||||||
smallestHole: 0.25
|
|
||||||
backfaceThreshold: 100
|
|
||||||
m_SceneGUID: 00000000000000000000000000000000
|
|
||||||
m_OcclusionCullingData: {fileID: 0}
|
|
||||||
--- !u!104 &2
|
|
||||||
RenderSettings:
|
|
||||||
m_ObjectHideFlags: 0
|
|
||||||
serializedVersion: 9
|
|
||||||
m_Fog: 0
|
|
||||||
m_FogColor: {r: 0.5, g: 0.5, b: 0.5, a: 1}
|
|
||||||
m_FogMode: 3
|
|
||||||
m_FogDensity: 0.01
|
|
||||||
m_LinearFogStart: 0
|
|
||||||
m_LinearFogEnd: 300
|
|
||||||
m_AmbientSkyColor: {r: 0.212, g: 0.227, b: 0.259, a: 1}
|
|
||||||
m_AmbientEquatorColor: {r: 0.114, g: 0.125, b: 0.133, a: 1}
|
|
||||||
m_AmbientGroundColor: {r: 0.047, g: 0.043, b: 0.035, a: 1}
|
|
||||||
m_AmbientIntensity: 1
|
|
||||||
m_AmbientMode: 3
|
|
||||||
m_SubtractiveShadowColor: {r: 0.42, g: 0.478, b: 0.627, a: 1}
|
|
||||||
m_SkyboxMaterial: {fileID: 0}
|
|
||||||
m_HaloStrength: 0.5
|
|
||||||
m_FlareStrength: 1
|
|
||||||
m_FlareFadeSpeed: 3
|
|
||||||
m_HaloTexture: {fileID: 0}
|
|
||||||
m_SpotCookie: {fileID: 10001, guid: 0000000000000000e000000000000000, type: 0}
|
|
||||||
m_DefaultReflectionMode: 0
|
|
||||||
m_DefaultReflectionResolution: 128
|
|
||||||
m_ReflectionBounces: 1
|
|
||||||
m_ReflectionIntensity: 1
|
|
||||||
m_CustomReflection: {fileID: 0}
|
|
||||||
m_Sun: {fileID: 0}
|
|
||||||
m_IndirectSpecularColor: {r: 0, g: 0, b: 0, a: 1}
|
|
||||||
m_UseRadianceAmbientProbe: 0
|
|
||||||
--- !u!157 &3
|
|
||||||
LightmapSettings:
|
|
||||||
m_ObjectHideFlags: 0
|
|
||||||
serializedVersion: 12
|
|
||||||
m_GIWorkflowMode: 1
|
|
||||||
m_GISettings:
|
|
||||||
serializedVersion: 2
|
|
||||||
m_BounceScale: 1
|
|
||||||
m_IndirectOutputScale: 1
|
|
||||||
m_AlbedoBoost: 1
|
|
||||||
m_EnvironmentLightingMode: 0
|
|
||||||
m_EnableBakedLightmaps: 0
|
|
||||||
m_EnableRealtimeLightmaps: 0
|
|
||||||
m_LightmapEditorSettings:
|
|
||||||
serializedVersion: 12
|
|
||||||
m_Resolution: 2
|
|
||||||
m_BakeResolution: 40
|
|
||||||
m_AtlasSize: 1024
|
|
||||||
m_AO: 0
|
|
||||||
m_AOMaxDistance: 1
|
|
||||||
m_CompAOExponent: 1
|
|
||||||
m_CompAOExponentDirect: 0
|
|
||||||
m_ExtractAmbientOcclusion: 0
|
|
||||||
m_Padding: 2
|
|
||||||
m_LightmapParameters: {fileID: 0}
|
|
||||||
m_LightmapsBakeMode: 1
|
|
||||||
m_TextureCompression: 1
|
|
||||||
m_FinalGather: 0
|
|
||||||
m_FinalGatherFiltering: 1
|
|
||||||
m_FinalGatherRayCount: 256
|
|
||||||
m_ReflectionCompression: 2
|
|
||||||
m_MixedBakeMode: 2
|
|
||||||
m_BakeBackend: 0
|
|
||||||
m_PVRSampling: 1
|
|
||||||
m_PVRDirectSampleCount: 32
|
|
||||||
m_PVRSampleCount: 500
|
|
||||||
m_PVRBounces: 2
|
|
||||||
m_PVREnvironmentSampleCount: 500
|
|
||||||
m_PVREnvironmentReferencePointCount: 2048
|
|
||||||
m_PVRFilteringMode: 2
|
|
||||||
m_PVRDenoiserTypeDirect: 0
|
|
||||||
m_PVRDenoiserTypeIndirect: 0
|
|
||||||
m_PVRDenoiserTypeAO: 0
|
|
||||||
m_PVRFilterTypeDirect: 0
|
|
||||||
m_PVRFilterTypeIndirect: 0
|
|
||||||
m_PVRFilterTypeAO: 0
|
|
||||||
m_PVREnvironmentMIS: 0
|
|
||||||
m_PVRCulling: 1
|
|
||||||
m_PVRFilteringGaussRadiusDirect: 1
|
|
||||||
m_PVRFilteringGaussRadiusIndirect: 5
|
|
||||||
m_PVRFilteringGaussRadiusAO: 2
|
|
||||||
m_PVRFilteringAtrousPositionSigmaDirect: 0.5
|
|
||||||
m_PVRFilteringAtrousPositionSigmaIndirect: 2
|
|
||||||
m_PVRFilteringAtrousPositionSigmaAO: 1
|
|
||||||
m_ExportTrainingData: 0
|
|
||||||
m_TrainingDataDestination: TrainingData
|
|
||||||
m_LightProbeSampleCountMultiplier: 4
|
|
||||||
m_LightingDataAsset: {fileID: 0}
|
|
||||||
m_LightingSettings: {fileID: 0}
|
|
||||||
--- !u!196 &4
|
|
||||||
NavMeshSettings:
|
|
||||||
serializedVersion: 2
|
|
||||||
m_ObjectHideFlags: 0
|
|
||||||
m_BuildSettings:
|
|
||||||
serializedVersion: 2
|
|
||||||
agentTypeID: 0
|
|
||||||
agentRadius: 0.5
|
|
||||||
agentHeight: 2
|
|
||||||
agentSlope: 45
|
|
||||||
agentClimb: 0.4
|
|
||||||
ledgeDropHeight: 0
|
|
||||||
maxJumpAcrossDistance: 0
|
|
||||||
minRegionArea: 2
|
|
||||||
manualCellSize: 0
|
|
||||||
cellSize: 0.16666667
|
|
||||||
manualTileSize: 0
|
|
||||||
tileSize: 256
|
|
||||||
accuratePlacement: 0
|
|
||||||
maxJobWorkers: 0
|
|
||||||
preserveTilesOutsideBounds: 0
|
|
||||||
debug:
|
|
||||||
m_Flags: 0
|
|
||||||
m_NavMeshData: {fileID: 0}
|
|
||||||
--- !u!1 &519420028
|
|
||||||
GameObject:
|
|
||||||
m_ObjectHideFlags: 0
|
|
||||||
m_CorrespondingSourceObject: {fileID: 0}
|
|
||||||
m_PrefabInstance: {fileID: 0}
|
|
||||||
m_PrefabAsset: {fileID: 0}
|
|
||||||
serializedVersion: 6
|
|
||||||
m_Component:
|
|
||||||
- component: {fileID: 519420032}
|
|
||||||
- component: {fileID: 519420031}
|
|
||||||
- component: {fileID: 519420029}
|
|
||||||
m_Layer: 0
|
|
||||||
m_Name: Main Camera
|
|
||||||
m_TagString: MainCamera
|
|
||||||
m_Icon: {fileID: 0}
|
|
||||||
m_NavMeshLayer: 0
|
|
||||||
m_StaticEditorFlags: 0
|
|
||||||
m_IsActive: 1
|
|
||||||
--- !u!81 &519420029
|
|
||||||
AudioListener:
|
|
||||||
m_ObjectHideFlags: 0
|
|
||||||
m_CorrespondingSourceObject: {fileID: 0}
|
|
||||||
m_PrefabInstance: {fileID: 0}
|
|
||||||
m_PrefabAsset: {fileID: 0}
|
|
||||||
m_GameObject: {fileID: 519420028}
|
|
||||||
m_Enabled: 1
|
|
||||||
--- !u!20 &519420031
|
|
||||||
Camera:
|
|
||||||
m_ObjectHideFlags: 0
|
|
||||||
m_CorrespondingSourceObject: {fileID: 0}
|
|
||||||
m_PrefabInstance: {fileID: 0}
|
|
||||||
m_PrefabAsset: {fileID: 0}
|
|
||||||
m_GameObject: {fileID: 519420028}
|
|
||||||
m_Enabled: 1
|
|
||||||
serializedVersion: 2
|
|
||||||
m_ClearFlags: 2
|
|
||||||
m_BackGroundColor: {r: 0.19215687, g: 0.3019608, b: 0.4745098, a: 0}
|
|
||||||
m_projectionMatrixMode: 1
|
|
||||||
m_GateFitMode: 2
|
|
||||||
m_FOVAxisMode: 0
|
|
||||||
m_SensorSize: {x: 36, y: 24}
|
|
||||||
m_LensShift: {x: 0, y: 0}
|
|
||||||
m_FocalLength: 50
|
|
||||||
m_NormalizedViewPortRect:
|
|
||||||
serializedVersion: 2
|
|
||||||
x: 0
|
|
||||||
y: 0
|
|
||||||
width: 1
|
|
||||||
height: 1
|
|
||||||
near clip plane: 0.3
|
|
||||||
far clip plane: 1000
|
|
||||||
field of view: 60
|
|
||||||
orthographic: 1
|
|
||||||
orthographic size: 5
|
|
||||||
m_Depth: -1
|
|
||||||
m_CullingMask:
|
|
||||||
serializedVersion: 2
|
|
||||||
m_Bits: 4294967295
|
|
||||||
m_RenderingPath: -1
|
|
||||||
m_TargetTexture: {fileID: 0}
|
|
||||||
m_TargetDisplay: 0
|
|
||||||
m_TargetEye: 0
|
|
||||||
m_HDR: 1
|
|
||||||
m_AllowMSAA: 0
|
|
||||||
m_AllowDynamicResolution: 0
|
|
||||||
m_ForceIntoRT: 0
|
|
||||||
m_OcclusionCulling: 0
|
|
||||||
m_StereoConvergence: 10
|
|
||||||
m_StereoSeparation: 0.022
|
|
||||||
--- !u!4 &519420032
|
|
||||||
Transform:
|
|
||||||
m_ObjectHideFlags: 0
|
|
||||||
m_CorrespondingSourceObject: {fileID: 0}
|
|
||||||
m_PrefabInstance: {fileID: 0}
|
|
||||||
m_PrefabAsset: {fileID: 0}
|
|
||||||
m_GameObject: {fileID: 519420028}
|
|
||||||
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
|
|
||||||
m_LocalPosition: {x: 0, y: 0, z: -10}
|
|
||||||
m_LocalScale: {x: 1, y: 1, z: 1}
|
|
||||||
m_Children: []
|
|
||||||
m_Father: {fileID: 0}
|
|
||||||
m_RootOrder: 0
|
|
||||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
|
||||||
@@ -1,7 +0,0 @@
|
|||||||
fileFormatVersion: 2
|
|
||||||
guid: 2cda990e2423bbf4892e6590ba056729
|
|
||||||
DefaultImporter:
|
|
||||||
externalObjects: {}
|
|
||||||
userData:
|
|
||||||
assetBundleName:
|
|
||||||
assetBundleVariant:
|
|
||||||
BIN
dist/BlankProject/Packages/.DS_Store
vendored
BIN
dist/BlankProject/Packages/.DS_Store
vendored
Binary file not shown.
4
dist/BlankProject/Packages/manifest.json
vendored
4
dist/BlankProject/Packages/manifest.json
vendored
@@ -1,4 +0,0 @@
|
|||||||
{
|
|
||||||
"dependencies": {
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@@ -1,4 +0,0 @@
|
|||||||
{
|
|
||||||
"dependencies": {
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@@ -1,37 +0,0 @@
|
|||||||
%YAML 1.1
|
|
||||||
%TAG !u! tag:unity3d.com,2011:
|
|
||||||
--- !u!55 &1
|
|
||||||
PhysicsManager:
|
|
||||||
m_ObjectHideFlags: 0
|
|
||||||
serializedVersion: 13
|
|
||||||
m_Gravity: {x: 0, y: -9.81, z: 0}
|
|
||||||
m_DefaultMaterial: {fileID: 0}
|
|
||||||
m_BounceThreshold: 2
|
|
||||||
m_DefaultMaxDepenetrationVelocity: 10
|
|
||||||
m_SleepThreshold: 0.005
|
|
||||||
m_DefaultContactOffset: 0.01
|
|
||||||
m_DefaultSolverIterations: 6
|
|
||||||
m_DefaultSolverVelocityIterations: 1
|
|
||||||
m_QueriesHitBackfaces: 0
|
|
||||||
m_QueriesHitTriggers: 1
|
|
||||||
m_EnableAdaptiveForce: 0
|
|
||||||
m_ClothInterCollisionDistance: 0.1
|
|
||||||
m_ClothInterCollisionStiffness: 0.2
|
|
||||||
m_ContactsGeneration: 1
|
|
||||||
m_LayerCollisionMatrix: ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
|
|
||||||
m_AutoSimulation: 1
|
|
||||||
m_AutoSyncTransforms: 0
|
|
||||||
m_ReuseCollisionCallbacks: 1
|
|
||||||
m_ClothInterCollisionSettingsToggle: 0
|
|
||||||
m_ClothGravity: {x: 0, y: -9.81, z: 0}
|
|
||||||
m_ContactPairsMode: 0
|
|
||||||
m_BroadphaseType: 0
|
|
||||||
m_WorldBounds:
|
|
||||||
m_Center: {x: 0, y: 0, z: 0}
|
|
||||||
m_Extent: {x: 250, y: 250, z: 250}
|
|
||||||
m_WorldSubdivisions: 8
|
|
||||||
m_FrictionType: 0
|
|
||||||
m_EnableEnhancedDeterminism: 0
|
|
||||||
m_EnableUnifiedHeightmaps: 1
|
|
||||||
m_SolverType: 0
|
|
||||||
m_DefaultMaxAngularSpeed: 50
|
|
||||||
@@ -1,11 +0,0 @@
|
|||||||
%YAML 1.1
|
|
||||||
%TAG !u! tag:unity3d.com,2011:
|
|
||||||
--- !u!1045 &1
|
|
||||||
EditorBuildSettings:
|
|
||||||
m_ObjectHideFlags: 0
|
|
||||||
serializedVersion: 2
|
|
||||||
m_Scenes:
|
|
||||||
- enabled: 1
|
|
||||||
path: Assets/Scenes/SampleScene.unity
|
|
||||||
guid: 2cda990e2423bbf4892e6590ba056729
|
|
||||||
m_configObjects: {}
|
|
||||||
@@ -1,40 +0,0 @@
|
|||||||
%YAML 1.1
|
|
||||||
%TAG !u! tag:unity3d.com,2011:
|
|
||||||
--- !u!159 &1
|
|
||||||
EditorSettings:
|
|
||||||
m_ObjectHideFlags: 0
|
|
||||||
serializedVersion: 11
|
|
||||||
m_SerializationMode: 2
|
|
||||||
m_LineEndingsForNewScripts: 0
|
|
||||||
m_DefaultBehaviorMode: 1
|
|
||||||
m_PrefabRegularEnvironment: {fileID: 0}
|
|
||||||
m_PrefabUIEnvironment: {fileID: 0}
|
|
||||||
m_SpritePackerMode: 4
|
|
||||||
m_SpritePackerPaddingPower: 1
|
|
||||||
m_EtcTextureCompressorBehavior: 1
|
|
||||||
m_EtcTextureFastCompressor: 1
|
|
||||||
m_EtcTextureNormalCompressor: 2
|
|
||||||
m_EtcTextureBestCompressor: 4
|
|
||||||
m_ProjectGenerationIncludedExtensions: txt;xml;fnt;cd;asmdef;asmref;rsp
|
|
||||||
m_ProjectGenerationRootNamespace:
|
|
||||||
m_EnableTextureStreamingInEditMode: 1
|
|
||||||
m_EnableTextureStreamingInPlayMode: 1
|
|
||||||
m_AsyncShaderCompilation: 1
|
|
||||||
m_CachingShaderPreprocessor: 1
|
|
||||||
m_PrefabModeAllowAutoSave: 1
|
|
||||||
m_EnterPlayModeOptionsEnabled: 0
|
|
||||||
m_EnterPlayModeOptions: 3
|
|
||||||
m_GameObjectNamingDigits: 1
|
|
||||||
m_GameObjectNamingScheme: 0
|
|
||||||
m_AssetNamingUsesSpace: 1
|
|
||||||
m_UseLegacyProbeSampleCount: 0
|
|
||||||
m_SerializeInlineMappingsOnOneLine: 1
|
|
||||||
m_DisableCookiesInLightmapper: 1
|
|
||||||
m_AssetPipelineMode: 1
|
|
||||||
m_CacheServerMode: 0
|
|
||||||
m_CacheServerEndpoint:
|
|
||||||
m_CacheServerNamespacePrefix: default
|
|
||||||
m_CacheServerEnableDownload: 1
|
|
||||||
m_CacheServerEnableUpload: 1
|
|
||||||
m_CacheServerEnableAuth: 0
|
|
||||||
m_CacheServerEnableTls: 0
|
|
||||||
@@ -1,64 +0,0 @@
|
|||||||
%YAML 1.1
|
|
||||||
%TAG !u! tag:unity3d.com,2011:
|
|
||||||
--- !u!30 &1
|
|
||||||
GraphicsSettings:
|
|
||||||
m_ObjectHideFlags: 0
|
|
||||||
serializedVersion: 13
|
|
||||||
m_Deferred:
|
|
||||||
m_Mode: 1
|
|
||||||
m_Shader: {fileID: 69, guid: 0000000000000000f000000000000000, type: 0}
|
|
||||||
m_DeferredReflections:
|
|
||||||
m_Mode: 1
|
|
||||||
m_Shader: {fileID: 74, guid: 0000000000000000f000000000000000, type: 0}
|
|
||||||
m_ScreenSpaceShadows:
|
|
||||||
m_Mode: 1
|
|
||||||
m_Shader: {fileID: 64, guid: 0000000000000000f000000000000000, type: 0}
|
|
||||||
m_LegacyDeferred:
|
|
||||||
m_Mode: 1
|
|
||||||
m_Shader: {fileID: 63, guid: 0000000000000000f000000000000000, type: 0}
|
|
||||||
m_DepthNormals:
|
|
||||||
m_Mode: 1
|
|
||||||
m_Shader: {fileID: 62, guid: 0000000000000000f000000000000000, type: 0}
|
|
||||||
m_MotionVectors:
|
|
||||||
m_Mode: 1
|
|
||||||
m_Shader: {fileID: 75, guid: 0000000000000000f000000000000000, type: 0}
|
|
||||||
m_LightHalo:
|
|
||||||
m_Mode: 1
|
|
||||||
m_Shader: {fileID: 105, guid: 0000000000000000f000000000000000, type: 0}
|
|
||||||
m_LensFlare:
|
|
||||||
m_Mode: 1
|
|
||||||
m_Shader: {fileID: 102, guid: 0000000000000000f000000000000000, type: 0}
|
|
||||||
m_VideoShadersIncludeMode: 2
|
|
||||||
m_AlwaysIncludedShaders:
|
|
||||||
- {fileID: 7, guid: 0000000000000000f000000000000000, type: 0}
|
|
||||||
- {fileID: 15104, guid: 0000000000000000f000000000000000, type: 0}
|
|
||||||
- {fileID: 15105, guid: 0000000000000000f000000000000000, type: 0}
|
|
||||||
- {fileID: 15106, guid: 0000000000000000f000000000000000, type: 0}
|
|
||||||
- {fileID: 10753, guid: 0000000000000000f000000000000000, type: 0}
|
|
||||||
- {fileID: 10770, guid: 0000000000000000f000000000000000, type: 0}
|
|
||||||
- {fileID: 10783, guid: 0000000000000000f000000000000000, type: 0}
|
|
||||||
m_PreloadedShaders: []
|
|
||||||
m_SpritesDefaultMaterial: {fileID: 10754, guid: 0000000000000000f000000000000000, type: 0}
|
|
||||||
m_CustomRenderPipeline: {fileID: 0}
|
|
||||||
m_TransparencySortMode: 0
|
|
||||||
m_TransparencySortAxis: {x: 0, y: 0, z: 1}
|
|
||||||
m_DefaultRenderingPath: 1
|
|
||||||
m_DefaultMobileRenderingPath: 1
|
|
||||||
m_TierSettings: []
|
|
||||||
m_LightmapStripping: 0
|
|
||||||
m_FogStripping: 0
|
|
||||||
m_InstancingStripping: 0
|
|
||||||
m_LightmapKeepPlain: 1
|
|
||||||
m_LightmapKeepDirCombined: 1
|
|
||||||
m_LightmapKeepDynamicPlain: 1
|
|
||||||
m_LightmapKeepDynamicDirCombined: 1
|
|
||||||
m_LightmapKeepShadowMask: 1
|
|
||||||
m_LightmapKeepSubtractive: 1
|
|
||||||
m_FogKeepLinear: 1
|
|
||||||
m_FogKeepExp: 1
|
|
||||||
m_FogKeepExp2: 1
|
|
||||||
m_AlbedoSwatchInfos: []
|
|
||||||
m_LightsUseLinearIntensity: 0
|
|
||||||
m_LightsUseColorTemperature: 0
|
|
||||||
m_DefaultRenderingLayerMask: 1
|
|
||||||
m_LogWhenShaderIsCompiled: 0
|
|
||||||
487
dist/BlankProject/ProjectSettings/InputManager.asset
vendored
487
dist/BlankProject/ProjectSettings/InputManager.asset
vendored
@@ -1,487 +0,0 @@
|
|||||||
%YAML 1.1
|
|
||||||
%TAG !u! tag:unity3d.com,2011:
|
|
||||||
--- !u!13 &1
|
|
||||||
InputManager:
|
|
||||||
m_ObjectHideFlags: 0
|
|
||||||
serializedVersion: 2
|
|
||||||
m_Axes:
|
|
||||||
- serializedVersion: 3
|
|
||||||
m_Name: Horizontal
|
|
||||||
descriptiveName:
|
|
||||||
descriptiveNegativeName:
|
|
||||||
negativeButton: left
|
|
||||||
positiveButton: right
|
|
||||||
altNegativeButton: a
|
|
||||||
altPositiveButton: d
|
|
||||||
gravity: 3
|
|
||||||
dead: 0.001
|
|
||||||
sensitivity: 3
|
|
||||||
snap: 1
|
|
||||||
invert: 0
|
|
||||||
type: 0
|
|
||||||
axis: 0
|
|
||||||
joyNum: 0
|
|
||||||
- serializedVersion: 3
|
|
||||||
m_Name: Vertical
|
|
||||||
descriptiveName:
|
|
||||||
descriptiveNegativeName:
|
|
||||||
negativeButton: down
|
|
||||||
positiveButton: up
|
|
||||||
altNegativeButton: s
|
|
||||||
altPositiveButton: w
|
|
||||||
gravity: 3
|
|
||||||
dead: 0.001
|
|
||||||
sensitivity: 3
|
|
||||||
snap: 1
|
|
||||||
invert: 0
|
|
||||||
type: 0
|
|
||||||
axis: 0
|
|
||||||
joyNum: 0
|
|
||||||
- serializedVersion: 3
|
|
||||||
m_Name: Fire1
|
|
||||||
descriptiveName:
|
|
||||||
descriptiveNegativeName:
|
|
||||||
negativeButton:
|
|
||||||
positiveButton: left ctrl
|
|
||||||
altNegativeButton:
|
|
||||||
altPositiveButton: mouse 0
|
|
||||||
gravity: 1000
|
|
||||||
dead: 0.001
|
|
||||||
sensitivity: 1000
|
|
||||||
snap: 0
|
|
||||||
invert: 0
|
|
||||||
type: 0
|
|
||||||
axis: 0
|
|
||||||
joyNum: 0
|
|
||||||
- serializedVersion: 3
|
|
||||||
m_Name: Fire2
|
|
||||||
descriptiveName:
|
|
||||||
descriptiveNegativeName:
|
|
||||||
negativeButton:
|
|
||||||
positiveButton: left alt
|
|
||||||
altNegativeButton:
|
|
||||||
altPositiveButton: mouse 1
|
|
||||||
gravity: 1000
|
|
||||||
dead: 0.001
|
|
||||||
sensitivity: 1000
|
|
||||||
snap: 0
|
|
||||||
invert: 0
|
|
||||||
type: 0
|
|
||||||
axis: 0
|
|
||||||
joyNum: 0
|
|
||||||
- serializedVersion: 3
|
|
||||||
m_Name: Fire3
|
|
||||||
descriptiveName:
|
|
||||||
descriptiveNegativeName:
|
|
||||||
negativeButton:
|
|
||||||
positiveButton: left shift
|
|
||||||
altNegativeButton:
|
|
||||||
altPositiveButton: mouse 2
|
|
||||||
gravity: 1000
|
|
||||||
dead: 0.001
|
|
||||||
sensitivity: 1000
|
|
||||||
snap: 0
|
|
||||||
invert: 0
|
|
||||||
type: 0
|
|
||||||
axis: 0
|
|
||||||
joyNum: 0
|
|
||||||
- serializedVersion: 3
|
|
||||||
m_Name: Jump
|
|
||||||
descriptiveName:
|
|
||||||
descriptiveNegativeName:
|
|
||||||
negativeButton:
|
|
||||||
positiveButton: space
|
|
||||||
altNegativeButton:
|
|
||||||
altPositiveButton:
|
|
||||||
gravity: 1000
|
|
||||||
dead: 0.001
|
|
||||||
sensitivity: 1000
|
|
||||||
snap: 0
|
|
||||||
invert: 0
|
|
||||||
type: 0
|
|
||||||
axis: 0
|
|
||||||
joyNum: 0
|
|
||||||
- serializedVersion: 3
|
|
||||||
m_Name: Mouse X
|
|
||||||
descriptiveName:
|
|
||||||
descriptiveNegativeName:
|
|
||||||
negativeButton:
|
|
||||||
positiveButton:
|
|
||||||
altNegativeButton:
|
|
||||||
altPositiveButton:
|
|
||||||
gravity: 0
|
|
||||||
dead: 0
|
|
||||||
sensitivity: 0.1
|
|
||||||
snap: 0
|
|
||||||
invert: 0
|
|
||||||
type: 1
|
|
||||||
axis: 0
|
|
||||||
joyNum: 0
|
|
||||||
- serializedVersion: 3
|
|
||||||
m_Name: Mouse Y
|
|
||||||
descriptiveName:
|
|
||||||
descriptiveNegativeName:
|
|
||||||
negativeButton:
|
|
||||||
positiveButton:
|
|
||||||
altNegativeButton:
|
|
||||||
altPositiveButton:
|
|
||||||
gravity: 0
|
|
||||||
dead: 0
|
|
||||||
sensitivity: 0.1
|
|
||||||
snap: 0
|
|
||||||
invert: 0
|
|
||||||
type: 1
|
|
||||||
axis: 1
|
|
||||||
joyNum: 0
|
|
||||||
- serializedVersion: 3
|
|
||||||
m_Name: Mouse ScrollWheel
|
|
||||||
descriptiveName:
|
|
||||||
descriptiveNegativeName:
|
|
||||||
negativeButton:
|
|
||||||
positiveButton:
|
|
||||||
altNegativeButton:
|
|
||||||
altPositiveButton:
|
|
||||||
gravity: 0
|
|
||||||
dead: 0
|
|
||||||
sensitivity: 0.1
|
|
||||||
snap: 0
|
|
||||||
invert: 0
|
|
||||||
type: 1
|
|
||||||
axis: 2
|
|
||||||
joyNum: 0
|
|
||||||
- serializedVersion: 3
|
|
||||||
m_Name: Horizontal
|
|
||||||
descriptiveName:
|
|
||||||
descriptiveNegativeName:
|
|
||||||
negativeButton:
|
|
||||||
positiveButton:
|
|
||||||
altNegativeButton:
|
|
||||||
altPositiveButton:
|
|
||||||
gravity: 0
|
|
||||||
dead: 0.19
|
|
||||||
sensitivity: 1
|
|
||||||
snap: 0
|
|
||||||
invert: 0
|
|
||||||
type: 2
|
|
||||||
axis: 0
|
|
||||||
joyNum: 0
|
|
||||||
- serializedVersion: 3
|
|
||||||
m_Name: Vertical
|
|
||||||
descriptiveName:
|
|
||||||
descriptiveNegativeName:
|
|
||||||
negativeButton:
|
|
||||||
positiveButton:
|
|
||||||
altNegativeButton:
|
|
||||||
altPositiveButton:
|
|
||||||
gravity: 0
|
|
||||||
dead: 0.19
|
|
||||||
sensitivity: 1
|
|
||||||
snap: 0
|
|
||||||
invert: 1
|
|
||||||
type: 2
|
|
||||||
axis: 1
|
|
||||||
joyNum: 0
|
|
||||||
- serializedVersion: 3
|
|
||||||
m_Name: Fire1
|
|
||||||
descriptiveName:
|
|
||||||
descriptiveNegativeName:
|
|
||||||
negativeButton:
|
|
||||||
positiveButton: joystick button 0
|
|
||||||
altNegativeButton:
|
|
||||||
altPositiveButton:
|
|
||||||
gravity: 1000
|
|
||||||
dead: 0.001
|
|
||||||
sensitivity: 1000
|
|
||||||
snap: 0
|
|
||||||
invert: 0
|
|
||||||
type: 0
|
|
||||||
axis: 0
|
|
||||||
joyNum: 0
|
|
||||||
- serializedVersion: 3
|
|
||||||
m_Name: Fire2
|
|
||||||
descriptiveName:
|
|
||||||
descriptiveNegativeName:
|
|
||||||
negativeButton:
|
|
||||||
positiveButton: joystick button 1
|
|
||||||
altNegativeButton:
|
|
||||||
altPositiveButton:
|
|
||||||
gravity: 1000
|
|
||||||
dead: 0.001
|
|
||||||
sensitivity: 1000
|
|
||||||
snap: 0
|
|
||||||
invert: 0
|
|
||||||
type: 0
|
|
||||||
axis: 0
|
|
||||||
joyNum: 0
|
|
||||||
- serializedVersion: 3
|
|
||||||
m_Name: Fire3
|
|
||||||
descriptiveName:
|
|
||||||
descriptiveNegativeName:
|
|
||||||
negativeButton:
|
|
||||||
positiveButton: joystick button 2
|
|
||||||
altNegativeButton:
|
|
||||||
altPositiveButton:
|
|
||||||
gravity: 1000
|
|
||||||
dead: 0.001
|
|
||||||
sensitivity: 1000
|
|
||||||
snap: 0
|
|
||||||
invert: 0
|
|
||||||
type: 0
|
|
||||||
axis: 0
|
|
||||||
joyNum: 0
|
|
||||||
- serializedVersion: 3
|
|
||||||
m_Name: Jump
|
|
||||||
descriptiveName:
|
|
||||||
descriptiveNegativeName:
|
|
||||||
negativeButton:
|
|
||||||
positiveButton: joystick button 3
|
|
||||||
altNegativeButton:
|
|
||||||
altPositiveButton:
|
|
||||||
gravity: 1000
|
|
||||||
dead: 0.001
|
|
||||||
sensitivity: 1000
|
|
||||||
snap: 0
|
|
||||||
invert: 0
|
|
||||||
type: 0
|
|
||||||
axis: 0
|
|
||||||
joyNum: 0
|
|
||||||
- serializedVersion: 3
|
|
||||||
m_Name: Submit
|
|
||||||
descriptiveName:
|
|
||||||
descriptiveNegativeName:
|
|
||||||
negativeButton:
|
|
||||||
positiveButton: return
|
|
||||||
altNegativeButton:
|
|
||||||
altPositiveButton: joystick button 0
|
|
||||||
gravity: 1000
|
|
||||||
dead: 0.001
|
|
||||||
sensitivity: 1000
|
|
||||||
snap: 0
|
|
||||||
invert: 0
|
|
||||||
type: 0
|
|
||||||
axis: 0
|
|
||||||
joyNum: 0
|
|
||||||
- serializedVersion: 3
|
|
||||||
m_Name: Submit
|
|
||||||
descriptiveName:
|
|
||||||
descriptiveNegativeName:
|
|
||||||
negativeButton:
|
|
||||||
positiveButton: enter
|
|
||||||
altNegativeButton:
|
|
||||||
altPositiveButton: space
|
|
||||||
gravity: 1000
|
|
||||||
dead: 0.001
|
|
||||||
sensitivity: 1000
|
|
||||||
snap: 0
|
|
||||||
invert: 0
|
|
||||||
type: 0
|
|
||||||
axis: 0
|
|
||||||
joyNum: 0
|
|
||||||
- serializedVersion: 3
|
|
||||||
m_Name: Cancel
|
|
||||||
descriptiveName:
|
|
||||||
descriptiveNegativeName:
|
|
||||||
negativeButton:
|
|
||||||
positiveButton: escape
|
|
||||||
altNegativeButton:
|
|
||||||
altPositiveButton: joystick button 1
|
|
||||||
gravity: 1000
|
|
||||||
dead: 0.001
|
|
||||||
sensitivity: 1000
|
|
||||||
snap: 0
|
|
||||||
invert: 0
|
|
||||||
type: 0
|
|
||||||
axis: 0
|
|
||||||
joyNum: 0
|
|
||||||
- serializedVersion: 3
|
|
||||||
m_Name: Enable Debug Button 1
|
|
||||||
descriptiveName:
|
|
||||||
descriptiveNegativeName:
|
|
||||||
negativeButton:
|
|
||||||
positiveButton: left ctrl
|
|
||||||
altNegativeButton:
|
|
||||||
altPositiveButton: joystick button 8
|
|
||||||
gravity: 0
|
|
||||||
dead: 0
|
|
||||||
sensitivity: 0
|
|
||||||
snap: 0
|
|
||||||
invert: 0
|
|
||||||
type: 0
|
|
||||||
axis: 0
|
|
||||||
joyNum: 0
|
|
||||||
- serializedVersion: 3
|
|
||||||
m_Name: Enable Debug Button 2
|
|
||||||
descriptiveName:
|
|
||||||
descriptiveNegativeName:
|
|
||||||
negativeButton:
|
|
||||||
positiveButton: backspace
|
|
||||||
altNegativeButton:
|
|
||||||
altPositiveButton: joystick button 9
|
|
||||||
gravity: 0
|
|
||||||
dead: 0
|
|
||||||
sensitivity: 0
|
|
||||||
snap: 0
|
|
||||||
invert: 0
|
|
||||||
type: 0
|
|
||||||
axis: 0
|
|
||||||
joyNum: 0
|
|
||||||
- serializedVersion: 3
|
|
||||||
m_Name: Debug Reset
|
|
||||||
descriptiveName:
|
|
||||||
descriptiveNegativeName:
|
|
||||||
negativeButton:
|
|
||||||
positiveButton: left alt
|
|
||||||
altNegativeButton:
|
|
||||||
altPositiveButton: joystick button 1
|
|
||||||
gravity: 0
|
|
||||||
dead: 0
|
|
||||||
sensitivity: 0
|
|
||||||
snap: 0
|
|
||||||
invert: 0
|
|
||||||
type: 0
|
|
||||||
axis: 0
|
|
||||||
joyNum: 0
|
|
||||||
- serializedVersion: 3
|
|
||||||
m_Name: Debug Next
|
|
||||||
descriptiveName:
|
|
||||||
descriptiveNegativeName:
|
|
||||||
negativeButton:
|
|
||||||
positiveButton: page down
|
|
||||||
altNegativeButton:
|
|
||||||
altPositiveButton: joystick button 5
|
|
||||||
gravity: 0
|
|
||||||
dead: 0
|
|
||||||
sensitivity: 0
|
|
||||||
snap: 0
|
|
||||||
invert: 0
|
|
||||||
type: 0
|
|
||||||
axis: 0
|
|
||||||
joyNum: 0
|
|
||||||
- serializedVersion: 3
|
|
||||||
m_Name: Debug Previous
|
|
||||||
descriptiveName:
|
|
||||||
descriptiveNegativeName:
|
|
||||||
negativeButton:
|
|
||||||
positiveButton: page up
|
|
||||||
altNegativeButton:
|
|
||||||
altPositiveButton: joystick button 4
|
|
||||||
gravity: 0
|
|
||||||
dead: 0
|
|
||||||
sensitivity: 0
|
|
||||||
snap: 0
|
|
||||||
invert: 0
|
|
||||||
type: 0
|
|
||||||
axis: 0
|
|
||||||
joyNum: 0
|
|
||||||
- serializedVersion: 3
|
|
||||||
m_Name: Debug Validate
|
|
||||||
descriptiveName:
|
|
||||||
descriptiveNegativeName:
|
|
||||||
negativeButton:
|
|
||||||
positiveButton: return
|
|
||||||
altNegativeButton:
|
|
||||||
altPositiveButton: joystick button 0
|
|
||||||
gravity: 0
|
|
||||||
dead: 0
|
|
||||||
sensitivity: 0
|
|
||||||
snap: 0
|
|
||||||
invert: 0
|
|
||||||
type: 0
|
|
||||||
axis: 0
|
|
||||||
joyNum: 0
|
|
||||||
- serializedVersion: 3
|
|
||||||
m_Name: Debug Persistent
|
|
||||||
descriptiveName:
|
|
||||||
descriptiveNegativeName:
|
|
||||||
negativeButton:
|
|
||||||
positiveButton: right shift
|
|
||||||
altNegativeButton:
|
|
||||||
altPositiveButton: joystick button 2
|
|
||||||
gravity: 0
|
|
||||||
dead: 0
|
|
||||||
sensitivity: 0
|
|
||||||
snap: 0
|
|
||||||
invert: 0
|
|
||||||
type: 0
|
|
||||||
axis: 0
|
|
||||||
joyNum: 0
|
|
||||||
- serializedVersion: 3
|
|
||||||
m_Name: Debug Multiplier
|
|
||||||
descriptiveName:
|
|
||||||
descriptiveNegativeName:
|
|
||||||
negativeButton:
|
|
||||||
positiveButton: left shift
|
|
||||||
altNegativeButton:
|
|
||||||
altPositiveButton: joystick button 3
|
|
||||||
gravity: 0
|
|
||||||
dead: 0
|
|
||||||
sensitivity: 0
|
|
||||||
snap: 0
|
|
||||||
invert: 0
|
|
||||||
type: 0
|
|
||||||
axis: 0
|
|
||||||
joyNum: 0
|
|
||||||
- serializedVersion: 3
|
|
||||||
m_Name: Debug Horizontal
|
|
||||||
descriptiveName:
|
|
||||||
descriptiveNegativeName:
|
|
||||||
negativeButton: left
|
|
||||||
positiveButton: right
|
|
||||||
altNegativeButton:
|
|
||||||
altPositiveButton:
|
|
||||||
gravity: 1000
|
|
||||||
dead: 0.001
|
|
||||||
sensitivity: 1000
|
|
||||||
snap: 0
|
|
||||||
invert: 0
|
|
||||||
type: 0
|
|
||||||
axis: 0
|
|
||||||
joyNum: 0
|
|
||||||
- serializedVersion: 3
|
|
||||||
m_Name: Debug Vertical
|
|
||||||
descriptiveName:
|
|
||||||
descriptiveNegativeName:
|
|
||||||
negativeButton: down
|
|
||||||
positiveButton: up
|
|
||||||
altNegativeButton:
|
|
||||||
altPositiveButton:
|
|
||||||
gravity: 1000
|
|
||||||
dead: 0.001
|
|
||||||
sensitivity: 1000
|
|
||||||
snap: 0
|
|
||||||
invert: 0
|
|
||||||
type: 0
|
|
||||||
axis: 0
|
|
||||||
joyNum: 0
|
|
||||||
- serializedVersion: 3
|
|
||||||
m_Name: Debug Vertical
|
|
||||||
descriptiveName:
|
|
||||||
descriptiveNegativeName:
|
|
||||||
negativeButton: down
|
|
||||||
positiveButton: up
|
|
||||||
altNegativeButton:
|
|
||||||
altPositiveButton:
|
|
||||||
gravity: 1000
|
|
||||||
dead: 0.001
|
|
||||||
sensitivity: 1000
|
|
||||||
snap: 0
|
|
||||||
invert: 0
|
|
||||||
type: 2
|
|
||||||
axis: 6
|
|
||||||
joyNum: 0
|
|
||||||
- serializedVersion: 3
|
|
||||||
m_Name: Debug Horizontal
|
|
||||||
descriptiveName:
|
|
||||||
descriptiveNegativeName:
|
|
||||||
negativeButton: left
|
|
||||||
positiveButton: right
|
|
||||||
altNegativeButton:
|
|
||||||
altPositiveButton:
|
|
||||||
gravity: 1000
|
|
||||||
dead: 0.001
|
|
||||||
sensitivity: 1000
|
|
||||||
snap: 0
|
|
||||||
invert: 0
|
|
||||||
type: 2
|
|
||||||
axis: 5
|
|
||||||
joyNum: 0
|
|
||||||
@@ -1,35 +0,0 @@
|
|||||||
%YAML 1.1
|
|
||||||
%TAG !u! tag:unity3d.com,2011:
|
|
||||||
--- !u!387306366 &1
|
|
||||||
MemorySettings:
|
|
||||||
m_ObjectHideFlags: 0
|
|
||||||
m_EditorMemorySettings:
|
|
||||||
m_MainAllocatorBlockSize: -1
|
|
||||||
m_ThreadAllocatorBlockSize: -1
|
|
||||||
m_MainGfxBlockSize: -1
|
|
||||||
m_ThreadGfxBlockSize: -1
|
|
||||||
m_CacheBlockSize: -1
|
|
||||||
m_TypetreeBlockSize: -1
|
|
||||||
m_ProfilerBlockSize: -1
|
|
||||||
m_ProfilerEditorBlockSize: -1
|
|
||||||
m_BucketAllocatorGranularity: -1
|
|
||||||
m_BucketAllocatorBucketsCount: -1
|
|
||||||
m_BucketAllocatorBlockSize: -1
|
|
||||||
m_BucketAllocatorBlockCount: -1
|
|
||||||
m_ProfilerBucketAllocatorGranularity: -1
|
|
||||||
m_ProfilerBucketAllocatorBucketsCount: -1
|
|
||||||
m_ProfilerBucketAllocatorBlockSize: -1
|
|
||||||
m_ProfilerBucketAllocatorBlockCount: -1
|
|
||||||
m_TempAllocatorSizeMain: -1
|
|
||||||
m_JobTempAllocatorBlockSize: -1
|
|
||||||
m_BackgroundJobTempAllocatorBlockSize: -1
|
|
||||||
m_JobTempAllocatorReducedBlockSize: -1
|
|
||||||
m_TempAllocatorSizeGIBakingWorker: -1
|
|
||||||
m_TempAllocatorSizeNavMeshWorker: -1
|
|
||||||
m_TempAllocatorSizeAudioWorker: -1
|
|
||||||
m_TempAllocatorSizeCloudWorker: -1
|
|
||||||
m_TempAllocatorSizeGfx: -1
|
|
||||||
m_TempAllocatorSizeJobWorker: -1
|
|
||||||
m_TempAllocatorSizeBackgroundWorker: -1
|
|
||||||
m_TempAllocatorSizePreloadManager: -1
|
|
||||||
m_PlatformMemorySettings: {}
|
|
||||||
@@ -1,93 +0,0 @@
|
|||||||
%YAML 1.1
|
|
||||||
%TAG !u! tag:unity3d.com,2011:
|
|
||||||
--- !u!126 &1
|
|
||||||
NavMeshProjectSettings:
|
|
||||||
m_ObjectHideFlags: 0
|
|
||||||
serializedVersion: 2
|
|
||||||
areas:
|
|
||||||
- name: Walkable
|
|
||||||
cost: 1
|
|
||||||
- name: Not Walkable
|
|
||||||
cost: 1
|
|
||||||
- name: Jump
|
|
||||||
cost: 2
|
|
||||||
- name:
|
|
||||||
cost: 1
|
|
||||||
- name:
|
|
||||||
cost: 1
|
|
||||||
- name:
|
|
||||||
cost: 1
|
|
||||||
- name:
|
|
||||||
cost: 1
|
|
||||||
- name:
|
|
||||||
cost: 1
|
|
||||||
- name:
|
|
||||||
cost: 1
|
|
||||||
- name:
|
|
||||||
cost: 1
|
|
||||||
- name:
|
|
||||||
cost: 1
|
|
||||||
- name:
|
|
||||||
cost: 1
|
|
||||||
- name:
|
|
||||||
cost: 1
|
|
||||||
- name:
|
|
||||||
cost: 1
|
|
||||||
- name:
|
|
||||||
cost: 1
|
|
||||||
- name:
|
|
||||||
cost: 1
|
|
||||||
- name:
|
|
||||||
cost: 1
|
|
||||||
- name:
|
|
||||||
cost: 1
|
|
||||||
- name:
|
|
||||||
cost: 1
|
|
||||||
- name:
|
|
||||||
cost: 1
|
|
||||||
- name:
|
|
||||||
cost: 1
|
|
||||||
- name:
|
|
||||||
cost: 1
|
|
||||||
- name:
|
|
||||||
cost: 1
|
|
||||||
- name:
|
|
||||||
cost: 1
|
|
||||||
- name:
|
|
||||||
cost: 1
|
|
||||||
- name:
|
|
||||||
cost: 1
|
|
||||||
- name:
|
|
||||||
cost: 1
|
|
||||||
- name:
|
|
||||||
cost: 1
|
|
||||||
- name:
|
|
||||||
cost: 1
|
|
||||||
- name:
|
|
||||||
cost: 1
|
|
||||||
- name:
|
|
||||||
cost: 1
|
|
||||||
- name:
|
|
||||||
cost: 1
|
|
||||||
m_LastAgentTypeID: -887442657
|
|
||||||
m_Settings:
|
|
||||||
- serializedVersion: 2
|
|
||||||
agentTypeID: 0
|
|
||||||
agentRadius: 0.5
|
|
||||||
agentHeight: 2
|
|
||||||
agentSlope: 45
|
|
||||||
agentClimb: 0.75
|
|
||||||
ledgeDropHeight: 0
|
|
||||||
maxJumpAcrossDistance: 0
|
|
||||||
minRegionArea: 2
|
|
||||||
manualCellSize: 0
|
|
||||||
cellSize: 0.16666667
|
|
||||||
manualTileSize: 0
|
|
||||||
tileSize: 256
|
|
||||||
accuratePlacement: 0
|
|
||||||
maxJobWorkers: 0
|
|
||||||
preserveTilesOutsideBounds: 0
|
|
||||||
debug:
|
|
||||||
m_Flags: 0
|
|
||||||
m_SettingNames:
|
|
||||||
- Humanoid
|
|
||||||
@@ -1,8 +0,0 @@
|
|||||||
%YAML 1.1
|
|
||||||
%TAG !u! tag:unity3d.com,2011:
|
|
||||||
--- !u!149 &1
|
|
||||||
NetworkManager:
|
|
||||||
m_ObjectHideFlags: 0
|
|
||||||
m_DebugLevel: 0
|
|
||||||
m_Sendrate: 15
|
|
||||||
m_AssetToPrefab: {}
|
|
||||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user