├── .github
└── workflows
│ ├── activation.yml
│ ├── build.yml
│ └── remove-old-artifacts.yml
├── .gitignore
├── Assets
├── UniMasterLinker.meta
└── UniMasterLinker
│ ├── DataObject.meta
│ ├── DataObject
│ └── .gitkeep
│ ├── Scripts.meta
│ ├── Scripts
│ ├── API.meta
│ ├── API
│ │ ├── ResponseBase.cs
│ │ └── ResponseBase.cs.meta
│ ├── Constant.meta
│ ├── Constant
│ │ ├── Constant.cs
│ │ └── Constant.cs.meta
│ ├── DataObject.meta
│ ├── Editor.meta
│ ├── Editor
│ │ ├── UpdateAPIClassMenu.cs
│ │ └── UpdateAPIClassMenu.cs.meta
│ ├── Extensions.meta
│ ├── Extensions
│ │ ├── UnityWebRequestExtensions.cs
│ │ └── UnityWebRequestExtensions.cs.meta
│ ├── UniMasterLinker.asmdef
│ ├── UniMasterLinker.asmdef.meta
│ ├── Util.meta
│ └── Util
│ │ ├── CreateDataObjectClass.cs
│ │ ├── CreateDataObjectClass.cs.meta
│ │ ├── GenerateClassUtil.cs
│ │ ├── GenerateClassUtil.cs.meta
│ │ ├── GoogleSheetUtil.cs
│ │ ├── GoogleSheetUtil.cs.meta
│ │ ├── UnityWebRequestAsyncOperationAwaiter.cs
│ │ ├── UnityWebRequestAsyncOperationAwaiter.cs.meta
│ │ ├── UpdateGameMasterAPIClass.cs
│ │ └── UpdateGameMasterAPIClass.cs.meta
│ ├── package.json
│ └── package.json.meta
├── LICENSE
├── Packages
├── manifest.json
└── packages-lock.json
├── ProjectSettings
├── AudioManager.asset
├── ClusterInputManager.asset
├── DynamicsManager.asset
├── EditorBuildSettings.asset
├── EditorSettings.asset
├── GraphicsSettings.asset
├── InputManager.asset
├── MemorySettings.asset
├── MultiplayerManager.asset
├── NavMeshAreas.asset
├── NetworkManager.asset
├── PackageManagerSettings.asset
├── Physics2DSettings.asset
├── PresetManager.asset
├── ProjectSettings.asset
├── ProjectVersion.txt
├── QualitySettings.asset
├── SceneTemplateSettings.json
├── TagManager.asset
├── TimeManager.asset
├── UnityConnectSettings.asset
├── VFXManager.asset
├── VersionControlSettings.asset
└── XRSettings.asset
├── README.md
└── README_JP.md
/.github/workflows/activation.yml:
--------------------------------------------------------------------------------
1 | name: Acquire activation file
2 | on:
3 | workflow_dispatch: {}
4 | jobs:
5 | activation:
6 | name: Request manual activation file 🔑
7 | runs-on: ubuntu-latest
8 | steps:
9 | # Request manual activation file
10 | - name: Request manual activation file
11 | id: getManualLicenseFile
12 | uses: game-ci/unity-request-activation-file@v2
13 | with:
14 | unityVersion: 2022.2.0f1
15 | # Upload artifact (Unity_v20XX.X.XXXX.alf)
16 | - name: Expose as artifact
17 | uses: actions/upload-artifact@v3.1.1
18 | with:
19 | name: ${{ steps.getManualLicenseFile.outputs.filePath }}
20 | path: ${{ steps.getManualLicenseFile.outputs.filePath }}
21 |
--------------------------------------------------------------------------------
/.github/workflows/build.yml:
--------------------------------------------------------------------------------
1 | name: Build
2 |
3 | env:
4 | UNITY_LICENSE: ${{ secrets.UNITY_LICENSE }}
5 |
6 | # Controls when the action will run.
7 | on:
8 | workflow_dispatch: {}
9 | push:
10 | branches:
11 | - main
12 | paths-ignore:
13 | - '.github/**'
14 | # Triggers the workflow on push or pull request events but only for the main branch
15 |
16 | # A workflow run is made up of one or more jobs that can run sequentially or in parallel
17 | jobs:
18 | build:
19 | runs-on: ubuntu-latest
20 | strategy:
21 | fail-fast: false
22 | matrix:
23 | projectPath:
24 | - .
25 | unityVersion:
26 | - 2022.2.0f1
27 | targetPlatform:
28 | - WebGL
29 | steps:
30 | - name: Checkout
31 | uses: actions/checkout@v3.2.0
32 | with:
33 | lfs: true
34 | clean: false
35 |
36 | # Cache
37 | - uses: actions/cache@v3
38 | with:
39 | path: Library
40 | key: Library
41 |
42 | # Build
43 | - name: Build project
44 | uses: game-ci/unity-builder@v2.1.2
45 | with:
46 | unityVersion: ${{ matrix.unityVersion }}
47 | targetPlatform: ${{ matrix.targetPlatform }}
48 |
49 | # Output
50 | - uses: actions/upload-artifact@v3.1.1
51 | with:
52 | name: Build-${{ matrix.targetPlatform }}
53 | path: build/${{ matrix.targetPlatform }}
54 |
--------------------------------------------------------------------------------
/.github/workflows/remove-old-artifacts.yml:
--------------------------------------------------------------------------------
1 | name: remove-old-artifacts
2 |
3 | env:
4 | UNITY_LICENSE: ${{ secrets.UNITY_LICENSE }}
5 |
6 | on:
7 | schedule:
8 | - cron: '0 0 * * *'
9 |
10 | # A workflow run is made up of one or more jobs that can run sequentially or in parallel
11 | jobs:
12 | remove-old-artifacts:
13 | runs-on: ubuntu-latest
14 | timeout-minutes: 10
15 | steps:
16 | - name: Remove old artifacts
17 | uses: c-hive/gha-remove-artifacts@v1.2.0
18 | with:
19 | age: '1 days'
20 | skip-recent: 1
21 |
--------------------------------------------------------------------------------
/.gitignore:
--------------------------------------------------------------------------------
1 |
2 | # Created by https://www.toptal.com/developers/gitignore/api/unity,rider
3 | # Edit at https://www.toptal.com/developers/gitignore?templates=unity,rider
4 |
5 | ### Rider ###
6 | # Covers JetBrains IDEs: IntelliJ, RubyMine, PhpStorm, AppCode, PyCharm, CLion, Android Studio, WebStorm and Rider
7 | # Reference: https://intellij-support.jetbrains.com/hc/en-us/articles/206544839
8 |
9 | # User-specific stuff
10 | .idea/**/workspace.xml
11 | .idea/**/tasks.xml
12 | .idea/**/usage.statistics.xml
13 | .idea/**/dictionaries
14 | .idea/**/shelf
15 |
16 | # AWS User-specific
17 | .idea/**/aws.xml
18 |
19 | # Generated files
20 | .idea/**/contentModel.xml
21 |
22 | # Sensitive or high-churn files
23 | .idea/**/dataSources/
24 | .idea/**/dataSources.ids
25 | .idea/**/dataSources.local.xml
26 | .idea/**/sqlDataSources.xml
27 | .idea/**/dynamic.xml
28 | .idea/**/uiDesigner.xml
29 | .idea/**/dbnavigator.xml
30 |
31 | # Gradle
32 | .idea/**/gradle.xml
33 | .idea/**/libraries
34 |
35 | # Gradle and Maven with auto-import
36 | # When using Gradle or Maven with auto-import, you should exclude module files,
37 | # since they will be recreated, and may cause churn. Uncomment if using
38 | # auto-import.
39 | # .idea/artifacts
40 | # .idea/compiler.xml
41 | # .idea/jarRepositories.xml
42 | # .idea/modules.xml
43 | # .idea/*.iml
44 | # .idea/modules
45 | # *.iml
46 | # *.ipr
47 |
48 | # CMake
49 | cmake-build-*/
50 |
51 | # Mongo Explorer plugin
52 | .idea/**/mongoSettings.xml
53 |
54 | # File-based project format
55 | *.iws
56 |
57 | # IntelliJ
58 | out/
59 |
60 | # mpeltonen/sbt-idea plugin
61 | .idea_modules/
62 |
63 | # JIRA plugin
64 | atlassian-ide-plugin.xml
65 |
66 | # Cursive Clojure plugin
67 | .idea/replstate.xml
68 |
69 | # SonarLint plugin
70 | .idea/sonarlint/
71 |
72 | # Crashlytics plugin (for Android Studio and IntelliJ)
73 | com_crashlytics_export_strings.xml
74 | crashlytics.properties
75 | crashlytics-build.properties
76 | fabric.properties
77 |
78 | # Editor-based Rest Client
79 | .idea/httpRequests
80 |
81 | # Android studio 3.1+ serialized cache file
82 | .idea/caches/build_file_checksums.ser
83 |
84 | ### Unity ###
85 | # This .gitignore file should be placed at the root of your Unity project directory
86 | #
87 | # Get latest from https://github.com/github/gitignore/blob/main/Unity.gitignore
88 | /[Ll]ibrary/
89 | /[Tt]emp/
90 | /[Oo]bj/
91 | /[Bb]uild/
92 | /[Bb]uilds/
93 | /[Ll]ogs/
94 | /[Uu]ser[Ss]ettings/
95 |
96 | # MemoryCaptures can get excessive in size.
97 | # They also could contain extremely sensitive data
98 | /[Mm]emoryCaptures/
99 |
100 | # Recordings can get excessive in size
101 | /[Rr]ecordings/
102 |
103 | # Uncomment this line if you wish to ignore the asset store tools plugin
104 | # /[Aa]ssets/AssetStoreTools*
105 |
106 | # Autogenerated Jetbrains Rider plugin
107 | /[Aa]ssets/Plugins/Editor/JetBrains*
108 |
109 | # Visual Studio cache directory
110 | .vs/
111 |
112 | # Gradle cache directory
113 | .gradle/
114 |
115 | # Autogenerated VS/MD/Consulo solution and project files
116 | ExportedObj/
117 | .consulo/
118 | *.csproj
119 | *.unityproj
120 | *.sln
121 | *.suo
122 | *.tmp
123 | *.user
124 | *.userprefs
125 | *.pidb
126 | *.booproj
127 | *.svd
128 | *.pdb
129 | *.mdb
130 | *.opendb
131 | *.VC.db
132 |
133 | # Unity3D generated meta files
134 | *.pidb.meta
135 | *.pdb.meta
136 | *.mdb.meta
137 |
138 | # Unity3D generated file on crash reports
139 | sysinfo.txt
140 |
141 | # Builds
142 | *.apk
143 | *.aab
144 | *.unitypackage
145 | *.app
146 |
147 | # Crashlytics generated file
148 |
149 | # Packed Addressables
150 | /[Aa]ssets/[Aa]ddressable[Aa]ssets[Dd]ata/*/*.bin*
151 |
152 | # Temporary auto-generated Android Assets
153 | /[Aa]ssets/[Ss]treamingAssets/aa.meta
154 | /[Aa]ssets/[Ss]treamingAssets/aa/*
155 |
156 | # End of https://www.toptal.com/developers/gitignore/api/unity,rider
157 |
--------------------------------------------------------------------------------
/Assets/UniMasterLinker.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: fb8ce983417aa43c09d8ebabbc8d8288
3 | folderAsset: yes
4 | DefaultImporter:
5 | externalObjects: {}
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/Assets/UniMasterLinker/DataObject.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 3c378fc38ac44224ab754f3d00b5421b
3 | folderAsset: yes
4 | DefaultImporter:
5 | externalObjects: {}
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/Assets/UniMasterLinker/DataObject/.gitkeep:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/MidraLab/uni-master-linker/d0b592706a22197f10adffcc2551cc1d9740d103/Assets/UniMasterLinker/DataObject/.gitkeep
--------------------------------------------------------------------------------
/Assets/UniMasterLinker/Scripts.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 22213d174b88e4783a30e6f9e2c92749
3 | folderAsset: yes
4 | DefaultImporter:
5 | externalObjects: {}
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/Assets/UniMasterLinker/Scripts/API.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 71a046e82c6604cc8b65c119c7ba1cc3
3 | folderAsset: yes
4 | DefaultImporter:
5 | externalObjects: {}
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/Assets/UniMasterLinker/Scripts/API/ResponseBase.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 |
4 | namespace UniMasterLinker.API
5 | {
6 | ///
7 | /// マスターデータから取得する際にレスポンスBaseクラス
8 | ///
9 | ///
10 | [Serializable]
11 | public class ResponseBase
12 | {
13 | public List gameInfo;
14 | }
15 | }
--------------------------------------------------------------------------------
/Assets/UniMasterLinker/Scripts/API/ResponseBase.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: cd21466047794d6da565fcf28dcbe410
3 | timeCreated: 1689438611
--------------------------------------------------------------------------------
/Assets/UniMasterLinker/Scripts/Constant.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 59e3e0356d9143e0a8e1caa5e4cf2cca
3 | timeCreated: 1692672908
--------------------------------------------------------------------------------
/Assets/UniMasterLinker/Scripts/Constant/Constant.cs:
--------------------------------------------------------------------------------
1 | namespace UniMasterLinker.Constant
2 | {
3 | public static class Constant
4 | {
5 | ///
6 | /// ゲームマスターデータのURL
7 | ///
8 | public const string GameMasterSheetURL =
9 | "GASのURL";
10 |
11 | ///
12 | /// ゲームデータオブジェクトのパス
13 | ///
14 | public const string DataObjectPath = "Assets/UniMasterLinker/DataObject/";
15 | }
16 | }
--------------------------------------------------------------------------------
/Assets/UniMasterLinker/Scripts/Constant/Constant.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: eabc6e90ca714cb79f0232b49226c1e1
3 | timeCreated: 1692672915
--------------------------------------------------------------------------------
/Assets/UniMasterLinker/Scripts/DataObject.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 92878aacddcfa4e2fb0fc1e3038fad43
3 | folderAsset: yes
4 | DefaultImporter:
5 | externalObjects: {}
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/Assets/UniMasterLinker/Scripts/Editor.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 65bde77e022b4e138ab336a348c5c87e
3 | timeCreated: 1701780892
--------------------------------------------------------------------------------
/Assets/UniMasterLinker/Scripts/Editor/UpdateAPIClassMenu.cs:
--------------------------------------------------------------------------------
1 | #if UNITY_EDITOR
2 |
3 | using System.Threading;
4 | using UniMasterLinker.Util;
5 | using UnityEditor;
6 |
7 | namespace UniMasterLinker.Editor
8 | {
9 | ///
10 | /// ゲームマスターのAPIクラスを更新するエディタ拡張
11 | ///
12 | public class UpdateAPIClassMenu : EditorWindow
13 | {
14 | ///
15 | /// APIクラスの更新
16 | ///
17 | [MenuItem("UniMasterLinker/APIクラスの更新")]
18 | private static async void UpdateAPIClassFile()
19 | {
20 | CancellationTokenSource tokenSource = new CancellationTokenSource();
21 | // // 実装例
22 | // var baseWeapon = GoogleSheetUtil.GetGameInfo(Constant.Constant.GameMasterSheetURL,
23 | // Constant.Constant.BaseWeapon, tokenSource.Token);
24 | // var materialWeapon = GoogleSheetUtil.GetGameInfo(
25 | // Constant.Constant.GameMasterSheetURL, Constant.Constant.MaterialWeapon, tokenSource.Token);
26 | //
27 | //
28 | // var (baseWeaponPramJson, materialWeaponParamJson) =
29 | // await UniTask.WhenAll(baseWeapon, materialWeapon;
30 | //
31 | // // プレイヤーの初期パラメータAPIクラスを生成
32 | // UpdateGameMasterAPIClass.CreateParamAPIClassFile(baseWeaponPramJson, Constant.Constant.BaseWeapon);
33 | // UpdateGameMasterAPIClass.CreateParamAPIClassFile(materialWeaponParamJson, Constant.Constant.MaterialWeapon);
34 | //
35 | // //データオブジェクトクラスも存在していない場合は、作成する
36 | // CreateDataObjectClass.CreateDataObjectClasses(Constant.Constant.BaseWeapon, Constant.Constant.MaterialWeapon,Constant.Constant.Enemy,Constant.Constant.AlchemyTable,Constant.Constant.Element);
37 | }
38 | }
39 | }
40 | #endif
41 |
--------------------------------------------------------------------------------
/Assets/UniMasterLinker/Scripts/Editor/UpdateAPIClassMenu.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 548b3a13c9004c90b9ce335f640f0b49
3 | timeCreated: 1701780911
--------------------------------------------------------------------------------
/Assets/UniMasterLinker/Scripts/Extensions.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: cbf42eb96c0c4a8e93c19432d05c2844
3 | timeCreated: 1735829130
--------------------------------------------------------------------------------
/Assets/UniMasterLinker/Scripts/Extensions/UnityWebRequestExtensions.cs:
--------------------------------------------------------------------------------
1 | using UniMasterLinker.Util;
2 | using UnityEngine.Networking;
3 |
4 | namespace UniMasterLinker.Extensions
5 | {
6 | ///
7 | /// UnityWebRequestの拡張メソッド
8 | ///
9 | public static class UnityWebRequestExtensions
10 | {
11 | public static UnityWebRequestAsyncOperationAwaiter GetAwaiter(this UnityWebRequestAsyncOperation asyncOperation)
12 | {
13 | return new UnityWebRequestAsyncOperationAwaiter(asyncOperation);
14 | }
15 | }
16 | }
--------------------------------------------------------------------------------
/Assets/UniMasterLinker/Scripts/Extensions/UnityWebRequestExtensions.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 038f59ac7309474f9e879e147c7d0c07
3 | timeCreated: 1735829109
--------------------------------------------------------------------------------
/Assets/UniMasterLinker/Scripts/UniMasterLinker.asmdef:
--------------------------------------------------------------------------------
1 | {
2 | "name": "UniMasterLinker",
3 | "rootNamespace": "",
4 | "references": [],
5 | "includePlatforms": [],
6 | "excludePlatforms": [],
7 | "allowUnsafeCode": false,
8 | "overrideReferences": false,
9 | "precompiledReferences": [],
10 | "autoReferenced": true,
11 | "defineConstraints": [],
12 | "versionDefines": [],
13 | "noEngineReferences": false
14 | }
--------------------------------------------------------------------------------
/Assets/UniMasterLinker/Scripts/UniMasterLinker.asmdef.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 6e39405796c454faf92785f4f1c7ff0e
3 | AssemblyDefinitionImporter:
4 | externalObjects: {}
5 | userData:
6 | assetBundleName:
7 | assetBundleVariant:
8 |
--------------------------------------------------------------------------------
/Assets/UniMasterLinker/Scripts/Util.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 131d664e21d0049a3a73167e37ad8251
3 | folderAsset: yes
4 | DefaultImporter:
5 | externalObjects: {}
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/Assets/UniMasterLinker/Scripts/Util/CreateDataObjectClass.cs:
--------------------------------------------------------------------------------
1 | #if UNITY_EDITOR
2 |
3 | namespace UniMasterLinker.Util
4 | {
5 | ///
6 | /// データオブジェクトのクラスを作成するクラス
7 | ///
8 | public class CreateDataObjectClass
9 | {
10 | ///
11 | /// データオブジェクトのクラスの作成パス
12 | ///
13 | private const string DataRootPath = "/UniMasterLinker/Scripts/DataObject/";
14 |
15 | ///
16 | /// データオブジェクトのクラスを作成する
17 | ///
18 | public static void CreateDataObjectClasses(params string[] classNameList)
19 | {
20 | foreach (var className in classNameList)
21 | {
22 | if (IsExistDataObjectClass(className)) continue;
23 | CrateDataObjectClass(className);
24 | }
25 | }
26 |
27 | ///
28 | /// データオブジェクトのクラスが存在するか
29 | ///
30 | ///
31 | ///
32 | private static bool IsExistDataObjectClass(string className)
33 | {
34 | return GenerateClassUtil.IsExistClass(className, DataRootPath);
35 | }
36 |
37 | ///
38 | /// データオブジェクトのクラスを作成
39 | ///
40 | ///
41 | private static void CrateDataObjectClass(string className)
42 | {
43 | var scriptContent = CreateDataObjectScriptContent(className);
44 | var createFileName = GetCreateFileName(className);
45 | GenerateClassUtil.CreateScript(createFileName, scriptContent, DataRootPath);
46 | }
47 |
48 | ///
49 | /// データオブジェクトのクラス名を取得
50 | ///
51 | ///
52 | ///
53 | private static string GetCreateFileName(string className)
54 | {
55 | return className + "DataObject";
56 | }
57 |
58 | ///
59 | /// データオブジェクトのクラス内容を作成
60 | ///
61 | ///
62 | ///
63 | private static string CreateDataObjectScriptContent(string className)
64 | {
65 | return $@"using UniMasterLinker.API;
66 | using UnityEngine;
67 |
68 | namespace UniMasterLinker.DataObject
69 | {{
70 | [CreateAssetMenu(fileName = ""{className}DataObject"", menuName = ""UniMasterLinker/{className}DataObject"", order = 0)]
71 | public class {className}DataObject : DataObjectBase<{className}Data>
72 | {{
73 |
74 | }}
75 | }}";
76 | }
77 | }
78 | }
79 | #endif
80 |
--------------------------------------------------------------------------------
/Assets/UniMasterLinker/Scripts/Util/CreateDataObjectClass.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 6401059772c9453c82888d6fe9fb0dfb
3 | timeCreated: 1701778824
--------------------------------------------------------------------------------
/Assets/UniMasterLinker/Scripts/Util/GenerateClassUtil.cs:
--------------------------------------------------------------------------------
1 | using System.IO;
2 | #if UNITY_EDITOR
3 | using UnityEditor;
4 | #endif
5 | using UnityEngine;
6 |
7 | namespace UniMasterLinker.Util
8 | {
9 | ///
10 | /// クラスの生成を行うUtilityクラス
11 | ///
12 | public class GenerateClassUtil
13 | {
14 | #if UNITY_EDITOR
15 |
16 | ///
17 | /// スクリプトファイルを生成
18 | ///
19 | ///
20 | ///
21 | ///
22 | public static void CreateScript(string fileName, string content, string dataRootPath)
23 | {
24 | var createPath = Application.dataPath + "/" + dataRootPath + "/" + fileName + ".cs";
25 |
26 | using (var writer = new StreamWriter(createPath, false))
27 | {
28 | writer.WriteLine(content);
29 | }
30 |
31 | AssetDatabase.Refresh();
32 | }
33 | #endif
34 |
35 | ///
36 | /// 自動生成クラスファイルが存在するか
37 | ///
38 | ///
39 | ///
40 | ///
41 | ///
42 | public static bool IsExistClass(string className, string dataRootPath)
43 | {
44 | var path = Application.dataPath + dataRootPath + className + "DataObject" + ".cs";
45 | return File.Exists(path);
46 | }
47 | }
48 | }
--------------------------------------------------------------------------------
/Assets/UniMasterLinker/Scripts/Util/GenerateClassUtil.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 6e1081022c1b404d99a0c51df21e5de3
3 | timeCreated: 1701779321
--------------------------------------------------------------------------------
/Assets/UniMasterLinker/Scripts/Util/GoogleSheetUtil.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.Linq;
4 | using System.Threading;
5 | using System.Threading.Tasks;
6 | using Newtonsoft.Json.Linq;
7 | using UniMasterLinker.Extensions;
8 | using UnityEngine;
9 | using UnityEngine.Networking;
10 |
11 | namespace UniMasterLinker.Util
12 | {
13 | ///
14 | /// GoogleSheet(GAS)のユーティリティ
15 | ///
16 | public static class GoogleSheetUtil
17 | {
18 | ///
19 | /// ゲーム情報をスプレッドシートから取得
20 | ///
21 | ///
22 | ///
23 | ///
24 | ///
25 | public static async Task GetGameInfo(string url, string sheetName, CancellationToken token)
26 | {
27 | var request = UnityWebRequest.Get($"{url}?sheetName={sheetName}");
28 | await request.SendWebRequest();
29 | if (token.IsCancellationRequested)
30 | {
31 | request.Abort();
32 | throw new OperationCanceledException(token);
33 | }
34 |
35 | if (request.result is UnityWebRequest.Result.ConnectionError or UnityWebRequest.Result.ProtocolError
36 | or UnityWebRequest.Result.DataProcessingError)
37 | {
38 | Debug.Log("Fail to get card info from Google Sheet");
39 | }
40 | else
41 | {
42 | var json = request.downloadHandler.text;
43 | return ConvertGameInfo(json);
44 | }
45 |
46 | return default;
47 | }
48 |
49 | ///
50 | /// ゲーム情報をスプレッドシートから取得してstringを返す
51 | ///
52 | ///
53 | ///
54 | ///
55 | ///
56 | public static async Task GetGameInfo(string url, string sheetName, CancellationToken token)
57 | {
58 | var request = UnityWebRequest.Get($"{url}?sheetName={sheetName}");
59 |
60 | await using var registration = token.Register(() => request.Abort(), useSynchronizationContext: false);
61 | await request.SendWebRequest();
62 |
63 | if (token.IsCancellationRequested)
64 | {
65 | // 操作がキャンセルされた場合
66 | token.ThrowIfCancellationRequested();
67 | }
68 |
69 | if (request.result == UnityWebRequest.Result.ConnectionError
70 | || request.result == UnityWebRequest.Result.ProtocolError
71 | || request.result == UnityWebRequest.Result.DataProcessingError)
72 | {
73 | if (request.result == UnityWebRequest.Result.ConnectionError && request.error == "Request aborted")
74 | {
75 | // リクエストがキャンセルされた場合
76 | token.ThrowIfCancellationRequested();
77 | }
78 |
79 | // その他のエラーを処理
80 | Debug.LogError($"Googleシートからカード情報の取得に失敗しました: {request.error}");
81 | return default;
82 | }
83 | else
84 | {
85 | var json = request.downloadHandler.text;
86 | Debug.Log($"データ取得成功: {json}");
87 | return json;
88 | }
89 | }
90 |
91 | ///
92 | /// マスターデータのキーの文字列を取得
93 | ///
94 | ///
95 | public static List GetParameterKeyList(string paramJsonStr)
96 | {
97 | var parseJson = JObject.Parse(paramJsonStr);
98 | var gameInfoArray = (JArray)parseJson["gameInfo"];
99 | var gameInfo = (JObject)gameInfoArray?[0];
100 |
101 | return gameInfo?.Properties().Select(key => key.Name).ToList();
102 | }
103 |
104 | ///
105 | /// マスターデータのパラメータのタイプの取得
106 | ///
107 | ///
108 | ///
109 | public static List GetParameterTypeList(string paramJsonStr)
110 | {
111 | var parseJson = JObject.Parse(paramJsonStr);
112 | var gameInfoArray = (JArray)parseJson["gameInfo"];
113 | var gameInfo = (JObject)gameInfoArray?[0];
114 |
115 | return gameInfo?.Properties().Select(prop => (string)prop.Value["type"]).ToList();
116 | }
117 |
118 | ///
119 | /// マスターデータのパラメータの説明の取得
120 | ///
121 | ///
122 | ///
123 | public static List GetParameterDescriptionList(string paramJsonStr)
124 | {
125 | var parseJson = JObject.Parse(paramJsonStr);
126 | var gameInfoArray = (JArray)parseJson["gameInfo"];
127 | var gameInfo = (JObject)gameInfoArray?[0];
128 |
129 | return gameInfo?.Properties().Select(prop => (string)prop.Value["description"]).ToList();
130 | }
131 |
132 | ///
133 | /// マスタデータのjsonをAPIをScriptableObjectに変換できる形に変換する
134 | ///
135 | ///
136 | ///
137 | ///
138 | private static T ConvertGameInfo(string paramJsonStr)
139 | {
140 | var parsedJson = JObject.Parse(paramJsonStr);
141 | var gameInfoArray = (JArray)parsedJson["gameInfo"];
142 |
143 | if (gameInfoArray == null)
144 | {
145 | throw new NullReferenceException("gameInfoArray is null");
146 | }
147 |
148 | // Create a new JSON array to hold the converted objects
149 | var finalArray = new JArray();
150 |
151 | foreach (var gameInfo in gameInfoArray)
152 | {
153 | var convertedJson = new JObject();
154 | foreach (var prop in ((JObject)gameInfo).Properties())
155 | {
156 | convertedJson[prop.Name] = prop.Value["value"];
157 | }
158 |
159 | // Add the converted object to the final array
160 | finalArray.Add(convertedJson);
161 | }
162 |
163 | var finalJson = new JObject
164 | {
165 | ["gameInfo"] = finalArray
166 | };
167 |
168 | // Convert the new JSON object to the desired type
169 | return JsonUtility.FromJson(finalJson.ToString());
170 | }
171 | }
172 | }
--------------------------------------------------------------------------------
/Assets/UniMasterLinker/Scripts/Util/GoogleSheetUtil.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: c5c436dc49a741bd93ec191a054273e6
3 | timeCreated: 1687067808
--------------------------------------------------------------------------------
/Assets/UniMasterLinker/Scripts/Util/UnityWebRequestAsyncOperationAwaiter.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Runtime.CompilerServices;
3 | using UnityEngine.Networking;
4 |
5 | namespace UniMasterLinker.Util
6 | {
7 | ///
8 | /// UnityWebRequestAsyncOperationのawaiter
9 | ///
10 | public class UnityWebRequestAsyncOperationAwaiter : INotifyCompletion
11 | {
12 | ///
13 | /// UnityWebRequestAsyncOperation
14 | ///
15 | private readonly UnityWebRequestAsyncOperation _asyncOperation;
16 |
17 | ///
18 | /// 完了したかどうか
19 | ///
20 | public bool IsCompleted => _asyncOperation.isDone;
21 |
22 | public UnityWebRequestAsyncOperationAwaiter(UnityWebRequestAsyncOperation asyncOperation)
23 | {
24 | _asyncOperation = asyncOperation;
25 | }
26 |
27 | public void GetResult()
28 | {
29 | // NOTE: 結果はUnityWebRequestからアクセスできるので、ここで返す必要性は無い
30 | }
31 |
32 | public void OnCompleted(Action continuation)
33 | {
34 | _asyncOperation.completed += _ => { continuation(); };
35 | }
36 | }
37 | }
--------------------------------------------------------------------------------
/Assets/UniMasterLinker/Scripts/Util/UnityWebRequestAsyncOperationAwaiter.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: d515b1176a504ec1b92b90d179407cf0
3 | timeCreated: 1735829221
--------------------------------------------------------------------------------
/Assets/UniMasterLinker/Scripts/Util/UpdateGameMasterAPIClass.cs:
--------------------------------------------------------------------------------
1 | #if UNITY_EDITOR
2 |
3 | using System.Collections.Generic;
4 | using System.Text;
5 |
6 | namespace UniMasterLinker.Util
7 | {
8 | ///
9 | /// ゲームマスターのAPIクラスを更新するエディタ拡張
10 | ///
11 | public class UpdateGameMasterAPIClass
12 | {
13 | ///
14 | /// APIクラスの作成パス
15 | ///
16 | private const string DataRootPath = "/UniMasterLinker/Scripts/API/";
17 |
18 |
19 | ///
20 | /// パラメータのAPIクラスの作成
21 | ///
22 | ///
23 | ///
24 | public static void CreateParamAPIClassFile(string paramJson, string fileName)
25 | {
26 | var paramString = CreateParameterContents(paramJson);
27 | var scriptContent = CreateScriptContent(fileName, paramString);
28 | GenerateClassUtil.CreateScript(fileName, scriptContent, DataRootPath);
29 | }
30 |
31 | ///
32 | /// スクリプトの内容を生成
33 | ///
34 | ///
35 | ///
36 | ///
37 | private static string CreateScriptContent(string className, string parameterContents)
38 | {
39 | return $@"//
40 | // このコードは自動生成されたものです。手動で編集しないでください。
41 | using System.Collections.Generic;
42 | using UnityEngine;
43 |
44 | namespace UniMasterLinker.API
45 | {{
46 | ///
47 | /// マスターデータから取得する際の{className}パラメータクラス
48 | ///
49 | [System.Serializable]
50 | public partial class {className}Data
51 | {{
52 | {parameterContents}
53 | }}
54 |
55 | ///
56 | /// マスターデータから取得する際にレスポンスクラス
57 | ///
58 | [System.Serializable]
59 | public class {className}Response : ResponseBase<{className}Data>
60 | {{
61 | }}
62 | }}";
63 | }
64 |
65 | ///
66 | /// パラメータの内容を生成
67 | ///
68 | ///
69 | private static string CreateParameterContents(string paramJson)
70 | {
71 | var parameterKeyList = GoogleSheetUtil.GetParameterKeyList(paramJson);
72 | var parameterTypeList = GoogleSheetUtil.GetParameterTypeList(paramJson);
73 | var parameterDescriptionList = GoogleSheetUtil.GetParameterDescriptionList(paramJson);
74 | return CreateParameterClassContents(parameterKeyList, parameterTypeList, parameterDescriptionList);
75 | }
76 |
77 | ///
78 | /// パラメータの内容を生成
79 | ///
80 | ///
81 | ///
82 | ///
83 | ///
84 | private static string CreateParameterClassContents(IReadOnlyList keys, IReadOnlyList types,
85 | IReadOnlyList descriptions)
86 | {
87 | var parameterString = new StringBuilder();
88 |
89 | for (var keyIndex = 0; keyIndex < keys.Count; keyIndex++)
90 | {
91 | var key = keys[keyIndex];
92 | // Summary文の作成
93 | var descriptionValue = string.IsNullOrEmpty(descriptions[keyIndex]) ? key : descriptions[keyIndex];
94 | var summaryString = $"/// \n /// {descriptionValue}\n /// \n";
95 | if (keyIndex == 0)
96 | {
97 | parameterString.Append(
98 | $"{summaryString} public {types[keyIndex]} " +
99 | key +
100 | ";\n\n");
101 | }
102 | else if (keyIndex == keys.Count - 1)
103 | {
104 | parameterString.Append(
105 | $"\t\t{summaryString} public {types[keyIndex]} " +
106 | key + ";");
107 | }
108 | else
109 | {
110 | parameterString.Append(
111 | $"\t\t{summaryString} public {types[keyIndex]} " +
112 | key + ";\n\n");
113 | }
114 | }
115 |
116 | return parameterString.ToString();
117 | }
118 | }
119 | }
120 | #endif
121 |
--------------------------------------------------------------------------------
/Assets/UniMasterLinker/Scripts/Util/UpdateGameMasterAPIClass.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 76bab1efdaa94220b1b623e5a27ccab2
3 | timeCreated: 1687075722
--------------------------------------------------------------------------------
/Assets/UniMasterLinker/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "com.midralab.uni-master-linker",
3 | "displayName": "UniMasterLinker",
4 | "version": "1.1.0",
5 | "unity": "6000.0.43",
6 | "description": "Sync and manage master data with Google Sheets and auto-generate Unity API classes.",
7 |
8 | "keywords": [
9 | "MasterData",
10 | "google sheet"
11 | ],
12 | "dependencies": {
13 | "com.unity.nuget.newtonsoft-json": "3.2.1"
14 | }
15 | }
--------------------------------------------------------------------------------
/Assets/UniMasterLinker/package.json.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 712b6d223e3343d5b1066cb5ade0a3ec
3 | timeCreated: 1692675557
--------------------------------------------------------------------------------
/LICENSE:
--------------------------------------------------------------------------------
1 | MIT License
2 |
3 | Copyright (c) 2023 MidraLab
4 |
5 | Permission is hereby granted, free of charge, to any person obtaining a copy
6 | of this software and associated documentation files (the "Software"), to deal
7 | in the Software without restriction, including without limitation the rights
8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | copies of the Software, and to permit persons to whom the Software is
10 | furnished to do so, subject to the following conditions:
11 |
12 | The above copyright notice and this permission notice shall be included in all
13 | copies or substantial portions of the Software.
14 |
15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21 | SOFTWARE.
22 |
--------------------------------------------------------------------------------
/Packages/manifest.json:
--------------------------------------------------------------------------------
1 | {
2 | "dependencies": {
3 | "com.cysharp.unitask": "2.5.10",
4 | "com.unity.collab-proxy": "2.7.1",
5 | "com.unity.feature.2d": "2.0.1",
6 | "com.unity.ide.rider": "3.0.31",
7 | "com.unity.ide.visualstudio": "2.0.22",
8 | "com.unity.multiplayer.center": "1.0.0",
9 | "com.unity.nuget.newtonsoft-json": "3.2.1",
10 | "com.unity.test-framework": "1.4.6",
11 | "com.unity.timeline": "1.8.7",
12 | "com.unity.ugui": "2.0.0",
13 | "com.unity.visualscripting": "1.9.5",
14 | "com.unity.modules.accessibility": "1.0.0",
15 | "com.unity.modules.ai": "1.0.0",
16 | "com.unity.modules.androidjni": "1.0.0",
17 | "com.unity.modules.animation": "1.0.0",
18 | "com.unity.modules.assetbundle": "1.0.0",
19 | "com.unity.modules.audio": "1.0.0",
20 | "com.unity.modules.cloth": "1.0.0",
21 | "com.unity.modules.director": "1.0.0",
22 | "com.unity.modules.imageconversion": "1.0.0",
23 | "com.unity.modules.imgui": "1.0.0",
24 | "com.unity.modules.jsonserialize": "1.0.0",
25 | "com.unity.modules.particlesystem": "1.0.0",
26 | "com.unity.modules.physics": "1.0.0",
27 | "com.unity.modules.physics2d": "1.0.0",
28 | "com.unity.modules.screencapture": "1.0.0",
29 | "com.unity.modules.terrain": "1.0.0",
30 | "com.unity.modules.terrainphysics": "1.0.0",
31 | "com.unity.modules.tilemap": "1.0.0",
32 | "com.unity.modules.ui": "1.0.0",
33 | "com.unity.modules.uielements": "1.0.0",
34 | "com.unity.modules.umbra": "1.0.0",
35 | "com.unity.modules.unityanalytics": "1.0.0",
36 | "com.unity.modules.unitywebrequest": "1.0.0",
37 | "com.unity.modules.unitywebrequestassetbundle": "1.0.0",
38 | "com.unity.modules.unitywebrequestaudio": "1.0.0",
39 | "com.unity.modules.unitywebrequesttexture": "1.0.0",
40 | "com.unity.modules.unitywebrequestwww": "1.0.0",
41 | "com.unity.modules.vehicles": "1.0.0",
42 | "com.unity.modules.video": "1.0.0",
43 | "com.unity.modules.vr": "1.0.0",
44 | "com.unity.modules.wind": "1.0.0",
45 | "com.unity.modules.xr": "1.0.0"
46 | },
47 | "scopedRegistries": [
48 | {
49 | "name": "OpenUPM",
50 | "url": "https://package.openupm.com",
51 | "scopes": [
52 | "com.neuecc",
53 | "com.cysharp",
54 | "com.cysharp.unitask"
55 | ]
56 | }
57 | ]
58 | }
59 |
--------------------------------------------------------------------------------
/Packages/packages-lock.json:
--------------------------------------------------------------------------------
1 | {
2 | "dependencies": {
3 | "com.cysharp.unitask": {
4 | "version": "2.5.10",
5 | "depth": 0,
6 | "source": "registry",
7 | "dependencies": {},
8 | "url": "https://package.openupm.com"
9 | },
10 | "com.unity.2d.animation": {
11 | "version": "10.1.4",
12 | "depth": 1,
13 | "source": "registry",
14 | "dependencies": {
15 | "com.unity.2d.common": "9.0.7",
16 | "com.unity.2d.sprite": "1.0.0",
17 | "com.unity.collections": "1.2.4",
18 | "com.unity.modules.animation": "1.0.0",
19 | "com.unity.modules.uielements": "1.0.0"
20 | },
21 | "url": "https://packages.unity.com"
22 | },
23 | "com.unity.2d.aseprite": {
24 | "version": "1.1.8",
25 | "depth": 1,
26 | "source": "registry",
27 | "dependencies": {
28 | "com.unity.2d.common": "6.0.6",
29 | "com.unity.2d.sprite": "1.0.0",
30 | "com.unity.mathematics": "1.2.6",
31 | "com.unity.modules.animation": "1.0.0"
32 | },
33 | "url": "https://packages.unity.com"
34 | },
35 | "com.unity.2d.common": {
36 | "version": "9.0.7",
37 | "depth": 2,
38 | "source": "registry",
39 | "dependencies": {
40 | "com.unity.burst": "1.8.4",
41 | "com.unity.2d.sprite": "1.0.0",
42 | "com.unity.mathematics": "1.1.0",
43 | "com.unity.modules.animation": "1.0.0",
44 | "com.unity.modules.uielements": "1.0.0"
45 | },
46 | "url": "https://packages.unity.com"
47 | },
48 | "com.unity.2d.pixel-perfect": {
49 | "version": "5.0.3",
50 | "depth": 1,
51 | "source": "registry",
52 | "dependencies": {},
53 | "url": "https://packages.unity.com"
54 | },
55 | "com.unity.2d.psdimporter": {
56 | "version": "9.0.3",
57 | "depth": 1,
58 | "source": "registry",
59 | "dependencies": {
60 | "com.unity.2d.common": "9.0.4",
61 | "com.unity.2d.sprite": "1.0.0"
62 | },
63 | "url": "https://packages.unity.com"
64 | },
65 | "com.unity.2d.sprite": {
66 | "version": "1.0.0",
67 | "depth": 1,
68 | "source": "builtin",
69 | "dependencies": {}
70 | },
71 | "com.unity.2d.spriteshape": {
72 | "version": "10.0.7",
73 | "depth": 1,
74 | "source": "registry",
75 | "dependencies": {
76 | "com.unity.2d.common": "9.0.7",
77 | "com.unity.mathematics": "1.1.0",
78 | "com.unity.modules.physics2d": "1.0.0"
79 | },
80 | "url": "https://packages.unity.com"
81 | },
82 | "com.unity.2d.tilemap": {
83 | "version": "1.0.0",
84 | "depth": 1,
85 | "source": "builtin",
86 | "dependencies": {
87 | "com.unity.modules.tilemap": "1.0.0",
88 | "com.unity.modules.uielements": "1.0.0"
89 | }
90 | },
91 | "com.unity.2d.tilemap.extras": {
92 | "version": "4.1.0",
93 | "depth": 1,
94 | "source": "registry",
95 | "dependencies": {
96 | "com.unity.2d.tilemap": "1.0.0",
97 | "com.unity.modules.tilemap": "1.0.0",
98 | "com.unity.modules.jsonserialize": "1.0.0"
99 | },
100 | "url": "https://packages.unity.com"
101 | },
102 | "com.unity.burst": {
103 | "version": "1.8.19",
104 | "depth": 3,
105 | "source": "registry",
106 | "dependencies": {
107 | "com.unity.mathematics": "1.2.1",
108 | "com.unity.modules.jsonserialize": "1.0.0"
109 | },
110 | "url": "https://packages.unity.com"
111 | },
112 | "com.unity.collab-proxy": {
113 | "version": "2.7.1",
114 | "depth": 0,
115 | "source": "registry",
116 | "dependencies": {},
117 | "url": "https://packages.unity.com"
118 | },
119 | "com.unity.collections": {
120 | "version": "2.5.1",
121 | "depth": 2,
122 | "source": "registry",
123 | "dependencies": {
124 | "com.unity.burst": "1.8.17",
125 | "com.unity.test-framework": "1.4.5",
126 | "com.unity.nuget.mono-cecil": "1.11.4",
127 | "com.unity.test-framework.performance": "3.0.3"
128 | },
129 | "url": "https://packages.unity.com"
130 | },
131 | "com.unity.ext.nunit": {
132 | "version": "2.0.5",
133 | "depth": 1,
134 | "source": "registry",
135 | "dependencies": {},
136 | "url": "https://packages.unity.com"
137 | },
138 | "com.unity.feature.2d": {
139 | "version": "2.0.1",
140 | "depth": 0,
141 | "source": "builtin",
142 | "dependencies": {
143 | "com.unity.2d.animation": "10.1.4",
144 | "com.unity.2d.pixel-perfect": "5.0.3",
145 | "com.unity.2d.psdimporter": "9.0.3",
146 | "com.unity.2d.sprite": "1.0.0",
147 | "com.unity.2d.spriteshape": "10.0.7",
148 | "com.unity.2d.tilemap": "1.0.0",
149 | "com.unity.2d.tilemap.extras": "4.1.0",
150 | "com.unity.2d.aseprite": "1.1.8"
151 | }
152 | },
153 | "com.unity.ide.rider": {
154 | "version": "3.0.31",
155 | "depth": 0,
156 | "source": "registry",
157 | "dependencies": {
158 | "com.unity.ext.nunit": "1.0.6"
159 | },
160 | "url": "https://packages.unity.com"
161 | },
162 | "com.unity.ide.visualstudio": {
163 | "version": "2.0.22",
164 | "depth": 0,
165 | "source": "registry",
166 | "dependencies": {
167 | "com.unity.test-framework": "1.1.9"
168 | },
169 | "url": "https://packages.unity.com"
170 | },
171 | "com.unity.mathematics": {
172 | "version": "1.3.2",
173 | "depth": 2,
174 | "source": "registry",
175 | "dependencies": {},
176 | "url": "https://packages.unity.com"
177 | },
178 | "com.unity.multiplayer.center": {
179 | "version": "1.0.0",
180 | "depth": 0,
181 | "source": "builtin",
182 | "dependencies": {
183 | "com.unity.modules.uielements": "1.0.0"
184 | }
185 | },
186 | "com.unity.nuget.mono-cecil": {
187 | "version": "1.11.4",
188 | "depth": 3,
189 | "source": "registry",
190 | "dependencies": {},
191 | "url": "https://packages.unity.com"
192 | },
193 | "com.unity.nuget.newtonsoft-json": {
194 | "version": "3.2.1",
195 | "depth": 0,
196 | "source": "registry",
197 | "dependencies": {},
198 | "url": "https://packages.unity.com"
199 | },
200 | "com.unity.test-framework": {
201 | "version": "1.4.6",
202 | "depth": 0,
203 | "source": "registry",
204 | "dependencies": {
205 | "com.unity.ext.nunit": "2.0.3",
206 | "com.unity.modules.imgui": "1.0.0",
207 | "com.unity.modules.jsonserialize": "1.0.0"
208 | },
209 | "url": "https://packages.unity.com"
210 | },
211 | "com.unity.test-framework.performance": {
212 | "version": "3.0.3",
213 | "depth": 3,
214 | "source": "registry",
215 | "dependencies": {
216 | "com.unity.test-framework": "1.1.31",
217 | "com.unity.modules.jsonserialize": "1.0.0"
218 | },
219 | "url": "https://packages.unity.com"
220 | },
221 | "com.unity.timeline": {
222 | "version": "1.8.7",
223 | "depth": 0,
224 | "source": "registry",
225 | "dependencies": {
226 | "com.unity.modules.audio": "1.0.0",
227 | "com.unity.modules.director": "1.0.0",
228 | "com.unity.modules.animation": "1.0.0",
229 | "com.unity.modules.particlesystem": "1.0.0"
230 | },
231 | "url": "https://packages.unity.com"
232 | },
233 | "com.unity.ugui": {
234 | "version": "2.0.0",
235 | "depth": 0,
236 | "source": "builtin",
237 | "dependencies": {
238 | "com.unity.modules.ui": "1.0.0",
239 | "com.unity.modules.imgui": "1.0.0"
240 | }
241 | },
242 | "com.unity.visualscripting": {
243 | "version": "1.9.5",
244 | "depth": 0,
245 | "source": "registry",
246 | "dependencies": {
247 | "com.unity.ugui": "1.0.0",
248 | "com.unity.modules.jsonserialize": "1.0.0"
249 | },
250 | "url": "https://packages.unity.com"
251 | },
252 | "com.unity.modules.accessibility": {
253 | "version": "1.0.0",
254 | "depth": 0,
255 | "source": "builtin",
256 | "dependencies": {}
257 | },
258 | "com.unity.modules.ai": {
259 | "version": "1.0.0",
260 | "depth": 0,
261 | "source": "builtin",
262 | "dependencies": {}
263 | },
264 | "com.unity.modules.androidjni": {
265 | "version": "1.0.0",
266 | "depth": 0,
267 | "source": "builtin",
268 | "dependencies": {}
269 | },
270 | "com.unity.modules.animation": {
271 | "version": "1.0.0",
272 | "depth": 0,
273 | "source": "builtin",
274 | "dependencies": {}
275 | },
276 | "com.unity.modules.assetbundle": {
277 | "version": "1.0.0",
278 | "depth": 0,
279 | "source": "builtin",
280 | "dependencies": {}
281 | },
282 | "com.unity.modules.audio": {
283 | "version": "1.0.0",
284 | "depth": 0,
285 | "source": "builtin",
286 | "dependencies": {}
287 | },
288 | "com.unity.modules.cloth": {
289 | "version": "1.0.0",
290 | "depth": 0,
291 | "source": "builtin",
292 | "dependencies": {
293 | "com.unity.modules.physics": "1.0.0"
294 | }
295 | },
296 | "com.unity.modules.director": {
297 | "version": "1.0.0",
298 | "depth": 0,
299 | "source": "builtin",
300 | "dependencies": {
301 | "com.unity.modules.audio": "1.0.0",
302 | "com.unity.modules.animation": "1.0.0"
303 | }
304 | },
305 | "com.unity.modules.hierarchycore": {
306 | "version": "1.0.0",
307 | "depth": 1,
308 | "source": "builtin",
309 | "dependencies": {}
310 | },
311 | "com.unity.modules.imageconversion": {
312 | "version": "1.0.0",
313 | "depth": 0,
314 | "source": "builtin",
315 | "dependencies": {}
316 | },
317 | "com.unity.modules.imgui": {
318 | "version": "1.0.0",
319 | "depth": 0,
320 | "source": "builtin",
321 | "dependencies": {}
322 | },
323 | "com.unity.modules.jsonserialize": {
324 | "version": "1.0.0",
325 | "depth": 0,
326 | "source": "builtin",
327 | "dependencies": {}
328 | },
329 | "com.unity.modules.particlesystem": {
330 | "version": "1.0.0",
331 | "depth": 0,
332 | "source": "builtin",
333 | "dependencies": {}
334 | },
335 | "com.unity.modules.physics": {
336 | "version": "1.0.0",
337 | "depth": 0,
338 | "source": "builtin",
339 | "dependencies": {}
340 | },
341 | "com.unity.modules.physics2d": {
342 | "version": "1.0.0",
343 | "depth": 0,
344 | "source": "builtin",
345 | "dependencies": {}
346 | },
347 | "com.unity.modules.screencapture": {
348 | "version": "1.0.0",
349 | "depth": 0,
350 | "source": "builtin",
351 | "dependencies": {
352 | "com.unity.modules.imageconversion": "1.0.0"
353 | }
354 | },
355 | "com.unity.modules.subsystems": {
356 | "version": "1.0.0",
357 | "depth": 1,
358 | "source": "builtin",
359 | "dependencies": {
360 | "com.unity.modules.jsonserialize": "1.0.0"
361 | }
362 | },
363 | "com.unity.modules.terrain": {
364 | "version": "1.0.0",
365 | "depth": 0,
366 | "source": "builtin",
367 | "dependencies": {}
368 | },
369 | "com.unity.modules.terrainphysics": {
370 | "version": "1.0.0",
371 | "depth": 0,
372 | "source": "builtin",
373 | "dependencies": {
374 | "com.unity.modules.physics": "1.0.0",
375 | "com.unity.modules.terrain": "1.0.0"
376 | }
377 | },
378 | "com.unity.modules.tilemap": {
379 | "version": "1.0.0",
380 | "depth": 0,
381 | "source": "builtin",
382 | "dependencies": {
383 | "com.unity.modules.physics2d": "1.0.0"
384 | }
385 | },
386 | "com.unity.modules.ui": {
387 | "version": "1.0.0",
388 | "depth": 0,
389 | "source": "builtin",
390 | "dependencies": {}
391 | },
392 | "com.unity.modules.uielements": {
393 | "version": "1.0.0",
394 | "depth": 0,
395 | "source": "builtin",
396 | "dependencies": {
397 | "com.unity.modules.ui": "1.0.0",
398 | "com.unity.modules.imgui": "1.0.0",
399 | "com.unity.modules.jsonserialize": "1.0.0",
400 | "com.unity.modules.hierarchycore": "1.0.0"
401 | }
402 | },
403 | "com.unity.modules.umbra": {
404 | "version": "1.0.0",
405 | "depth": 0,
406 | "source": "builtin",
407 | "dependencies": {}
408 | },
409 | "com.unity.modules.unityanalytics": {
410 | "version": "1.0.0",
411 | "depth": 0,
412 | "source": "builtin",
413 | "dependencies": {
414 | "com.unity.modules.unitywebrequest": "1.0.0",
415 | "com.unity.modules.jsonserialize": "1.0.0"
416 | }
417 | },
418 | "com.unity.modules.unitywebrequest": {
419 | "version": "1.0.0",
420 | "depth": 0,
421 | "source": "builtin",
422 | "dependencies": {}
423 | },
424 | "com.unity.modules.unitywebrequestassetbundle": {
425 | "version": "1.0.0",
426 | "depth": 0,
427 | "source": "builtin",
428 | "dependencies": {
429 | "com.unity.modules.assetbundle": "1.0.0",
430 | "com.unity.modules.unitywebrequest": "1.0.0"
431 | }
432 | },
433 | "com.unity.modules.unitywebrequestaudio": {
434 | "version": "1.0.0",
435 | "depth": 0,
436 | "source": "builtin",
437 | "dependencies": {
438 | "com.unity.modules.unitywebrequest": "1.0.0",
439 | "com.unity.modules.audio": "1.0.0"
440 | }
441 | },
442 | "com.unity.modules.unitywebrequesttexture": {
443 | "version": "1.0.0",
444 | "depth": 0,
445 | "source": "builtin",
446 | "dependencies": {
447 | "com.unity.modules.unitywebrequest": "1.0.0",
448 | "com.unity.modules.imageconversion": "1.0.0"
449 | }
450 | },
451 | "com.unity.modules.unitywebrequestwww": {
452 | "version": "1.0.0",
453 | "depth": 0,
454 | "source": "builtin",
455 | "dependencies": {
456 | "com.unity.modules.unitywebrequest": "1.0.0",
457 | "com.unity.modules.unitywebrequestassetbundle": "1.0.0",
458 | "com.unity.modules.unitywebrequestaudio": "1.0.0",
459 | "com.unity.modules.audio": "1.0.0",
460 | "com.unity.modules.assetbundle": "1.0.0",
461 | "com.unity.modules.imageconversion": "1.0.0"
462 | }
463 | },
464 | "com.unity.modules.vehicles": {
465 | "version": "1.0.0",
466 | "depth": 0,
467 | "source": "builtin",
468 | "dependencies": {
469 | "com.unity.modules.physics": "1.0.0"
470 | }
471 | },
472 | "com.unity.modules.video": {
473 | "version": "1.0.0",
474 | "depth": 0,
475 | "source": "builtin",
476 | "dependencies": {
477 | "com.unity.modules.audio": "1.0.0",
478 | "com.unity.modules.ui": "1.0.0",
479 | "com.unity.modules.unitywebrequest": "1.0.0"
480 | }
481 | },
482 | "com.unity.modules.vr": {
483 | "version": "1.0.0",
484 | "depth": 0,
485 | "source": "builtin",
486 | "dependencies": {
487 | "com.unity.modules.jsonserialize": "1.0.0",
488 | "com.unity.modules.physics": "1.0.0",
489 | "com.unity.modules.xr": "1.0.0"
490 | }
491 | },
492 | "com.unity.modules.wind": {
493 | "version": "1.0.0",
494 | "depth": 0,
495 | "source": "builtin",
496 | "dependencies": {}
497 | },
498 | "com.unity.modules.xr": {
499 | "version": "1.0.0",
500 | "depth": 0,
501 | "source": "builtin",
502 | "dependencies": {
503 | "com.unity.modules.physics": "1.0.0",
504 | "com.unity.modules.jsonserialize": "1.0.0",
505 | "com.unity.modules.subsystems": "1.0.0"
506 | }
507 | }
508 | }
509 | }
510 |
--------------------------------------------------------------------------------
/ProjectSettings/AudioManager.asset:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!11 &1
4 | AudioManager:
5 | m_ObjectHideFlags: 0
6 | serializedVersion: 2
7 | m_Volume: 1
8 | Rolloff Scale: 1
9 | Doppler Factor: 1
10 | Default Speaker Mode: 2
11 | m_SampleRate: 0
12 | m_DSPBufferSize: 1024
13 | m_VirtualVoiceCount: 512
14 | m_RealVoiceCount: 32
15 | m_SpatializerPlugin:
16 | m_AmbisonicDecoderPlugin:
17 | m_DisableAudio: 0
18 | m_VirtualizeEffects: 1
19 | m_RequestedDSPBufferSize: 0
20 |
--------------------------------------------------------------------------------
/ProjectSettings/ClusterInputManager.asset:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!236 &1
4 | ClusterInputManager:
5 | m_ObjectHideFlags: 0
6 | m_Inputs: []
7 |
--------------------------------------------------------------------------------
/ProjectSettings/DynamicsManager.asset:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!55 &1
4 | PhysicsManager:
5 | m_ObjectHideFlags: 0
6 | serializedVersion: 13
7 | m_Gravity: {x: 0, y: -9.81, z: 0}
8 | m_DefaultMaterial: {fileID: 0}
9 | m_BounceThreshold: 2
10 | m_DefaultMaxDepenetrationVelocity: 10
11 | m_SleepThreshold: 0.005
12 | m_DefaultContactOffset: 0.01
13 | m_DefaultSolverIterations: 6
14 | m_DefaultSolverVelocityIterations: 1
15 | m_QueriesHitBackfaces: 0
16 | m_QueriesHitTriggers: 1
17 | m_EnableAdaptiveForce: 0
18 | m_ClothInterCollisionDistance: 0.1
19 | m_ClothInterCollisionStiffness: 0.2
20 | m_ContactsGeneration: 1
21 | m_LayerCollisionMatrix: ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
22 | m_AutoSimulation: 1
23 | m_AutoSyncTransforms: 0
24 | m_ReuseCollisionCallbacks: 1
25 | m_ClothInterCollisionSettingsToggle: 0
26 | m_ClothGravity: {x: 0, y: -9.81, z: 0}
27 | m_ContactPairsMode: 0
28 | m_BroadphaseType: 0
29 | m_WorldBounds:
30 | m_Center: {x: 0, y: 0, z: 0}
31 | m_Extent: {x: 250, y: 250, z: 250}
32 | m_WorldSubdivisions: 8
33 | m_FrictionType: 0
34 | m_EnableEnhancedDeterminism: 0
35 | m_EnableUnifiedHeightmaps: 1
36 | m_SolverType: 0
37 | m_DefaultMaxAngularSpeed: 50
38 |
--------------------------------------------------------------------------------
/ProjectSettings/EditorBuildSettings.asset:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!1045 &1
4 | EditorBuildSettings:
5 | m_ObjectHideFlags: 0
6 | serializedVersion: 2
7 | m_Scenes:
8 | - enabled: 0
9 | path: Assets/Scenes/SampleScene.unity
10 | guid: 2cda990e2423bbf4892e6590ba056729
11 | m_configObjects: {}
12 |
--------------------------------------------------------------------------------
/ProjectSettings/EditorSettings.asset:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!159 &1
4 | EditorSettings:
5 | m_ObjectHideFlags: 0
6 | serializedVersion: 12
7 | m_SerializationMode: 2
8 | m_LineEndingsForNewScripts: 0
9 | m_DefaultBehaviorMode: 1
10 | m_PrefabRegularEnvironment: {fileID: 0}
11 | m_PrefabUIEnvironment: {fileID: 0}
12 | m_SpritePackerMode: 5
13 | m_SpritePackerCacheSize: 10
14 | m_SpritePackerPaddingPower: 1
15 | m_Bc7TextureCompressor: 0
16 | m_EtcTextureCompressorBehavior: 1
17 | m_EtcTextureFastCompressor: 1
18 | m_EtcTextureNormalCompressor: 2
19 | m_EtcTextureBestCompressor: 4
20 | m_ProjectGenerationIncludedExtensions: txt;xml;fnt;cd;asmdef;asmref;rsp
21 | m_ProjectGenerationRootNamespace:
22 | m_EnableTextureStreamingInEditMode: 1
23 | m_EnableTextureStreamingInPlayMode: 1
24 | m_EnableEditorAsyncCPUTextureLoading: 0
25 | m_AsyncShaderCompilation: 1
26 | m_PrefabModeAllowAutoSave: 1
27 | m_EnterPlayModeOptionsEnabled: 1
28 | m_EnterPlayModeOptions: 1
29 | m_GameObjectNamingDigits: 1
30 | m_GameObjectNamingScheme: 2
31 | m_AssetNamingUsesSpace: 1
32 | m_InspectorUseIMGUIDefaultInspector: 0
33 | m_UseLegacyProbeSampleCount: 0
34 | m_SerializeInlineMappingsOnOneLine: 1
35 | m_DisableCookiesInLightmapper: 1
36 | m_AssetPipelineMode: 1
37 | m_RefreshImportMode: 0
38 | m_CacheServerMode: 0
39 | m_CacheServerEndpoint:
40 | m_CacheServerNamespacePrefix: default
41 | m_CacheServerEnableDownload: 1
42 | m_CacheServerEnableUpload: 1
43 | m_CacheServerEnableAuth: 0
44 | m_CacheServerEnableTls: 0
45 | m_CacheServerValidationMode: 2
46 | m_CacheServerDownloadBatchSize: 128
47 | m_EnableEnlightenBakedGI: 0
48 |
--------------------------------------------------------------------------------
/ProjectSettings/GraphicsSettings.asset:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!30 &1
4 | GraphicsSettings:
5 | m_ObjectHideFlags: 0
6 | serializedVersion: 13
7 | m_Deferred:
8 | m_Mode: 1
9 | m_Shader: {fileID: 69, guid: 0000000000000000f000000000000000, type: 0}
10 | m_DeferredReflections:
11 | m_Mode: 1
12 | m_Shader: {fileID: 74, guid: 0000000000000000f000000000000000, type: 0}
13 | m_ScreenSpaceShadows:
14 | m_Mode: 1
15 | m_Shader: {fileID: 64, guid: 0000000000000000f000000000000000, type: 0}
16 | m_LegacyDeferred:
17 | m_Mode: 1
18 | m_Shader: {fileID: 63, guid: 0000000000000000f000000000000000, type: 0}
19 | m_DepthNormals:
20 | m_Mode: 1
21 | m_Shader: {fileID: 62, guid: 0000000000000000f000000000000000, type: 0}
22 | m_MotionVectors:
23 | m_Mode: 1
24 | m_Shader: {fileID: 75, guid: 0000000000000000f000000000000000, type: 0}
25 | m_LightHalo:
26 | m_Mode: 1
27 | m_Shader: {fileID: 105, guid: 0000000000000000f000000000000000, type: 0}
28 | m_LensFlare:
29 | m_Mode: 1
30 | m_Shader: {fileID: 102, guid: 0000000000000000f000000000000000, type: 0}
31 | m_VideoShadersIncludeMode: 2
32 | m_AlwaysIncludedShaders:
33 | - {fileID: 7, guid: 0000000000000000f000000000000000, type: 0}
34 | - {fileID: 15104, guid: 0000000000000000f000000000000000, type: 0}
35 | - {fileID: 15105, guid: 0000000000000000f000000000000000, type: 0}
36 | - {fileID: 15106, guid: 0000000000000000f000000000000000, type: 0}
37 | - {fileID: 10753, guid: 0000000000000000f000000000000000, type: 0}
38 | - {fileID: 10770, guid: 0000000000000000f000000000000000, type: 0}
39 | - {fileID: 10783, guid: 0000000000000000f000000000000000, type: 0}
40 | m_PreloadedShaders: []
41 | m_SpritesDefaultMaterial: {fileID: 10754, guid: 0000000000000000f000000000000000, type: 0}
42 | m_CustomRenderPipeline: {fileID: 0}
43 | m_TransparencySortMode: 0
44 | m_TransparencySortAxis: {x: 0, y: 0, z: 1}
45 | m_DefaultRenderingPath: 1
46 | m_DefaultMobileRenderingPath: 1
47 | m_TierSettings: []
48 | m_LightmapStripping: 0
49 | m_FogStripping: 0
50 | m_InstancingStripping: 0
51 | m_LightmapKeepPlain: 1
52 | m_LightmapKeepDirCombined: 1
53 | m_LightmapKeepDynamicPlain: 1
54 | m_LightmapKeepDynamicDirCombined: 1
55 | m_LightmapKeepShadowMask: 1
56 | m_LightmapKeepSubtractive: 1
57 | m_FogKeepLinear: 1
58 | m_FogKeepExp: 1
59 | m_FogKeepExp2: 1
60 | m_AlbedoSwatchInfos: []
61 | m_LightsUseLinearIntensity: 0
62 | m_LightsUseColorTemperature: 0
63 | m_DefaultRenderingLayerMask: 1
64 | m_LogWhenShaderIsCompiled: 0
65 |
--------------------------------------------------------------------------------
/ProjectSettings/InputManager.asset:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!13 &1
4 | InputManager:
5 | m_ObjectHideFlags: 0
6 | serializedVersion: 2
7 | m_Axes:
8 | - serializedVersion: 3
9 | m_Name: Horizontal
10 | descriptiveName:
11 | descriptiveNegativeName:
12 | negativeButton: left
13 | positiveButton: right
14 | altNegativeButton: a
15 | altPositiveButton: d
16 | gravity: 3
17 | dead: 0.001
18 | sensitivity: 3
19 | snap: 1
20 | invert: 0
21 | type: 0
22 | axis: 0
23 | joyNum: 0
24 | - serializedVersion: 3
25 | m_Name: Vertical
26 | descriptiveName:
27 | descriptiveNegativeName:
28 | negativeButton: down
29 | positiveButton: up
30 | altNegativeButton: s
31 | altPositiveButton: w
32 | gravity: 3
33 | dead: 0.001
34 | sensitivity: 3
35 | snap: 1
36 | invert: 0
37 | type: 0
38 | axis: 0
39 | joyNum: 0
40 | - serializedVersion: 3
41 | m_Name: Fire1
42 | descriptiveName:
43 | descriptiveNegativeName:
44 | negativeButton:
45 | positiveButton: left ctrl
46 | altNegativeButton:
47 | altPositiveButton: mouse 0
48 | gravity: 1000
49 | dead: 0.001
50 | sensitivity: 1000
51 | snap: 0
52 | invert: 0
53 | type: 0
54 | axis: 0
55 | joyNum: 0
56 | - serializedVersion: 3
57 | m_Name: Fire2
58 | descriptiveName:
59 | descriptiveNegativeName:
60 | negativeButton:
61 | positiveButton: left alt
62 | altNegativeButton:
63 | altPositiveButton: mouse 1
64 | gravity: 1000
65 | dead: 0.001
66 | sensitivity: 1000
67 | snap: 0
68 | invert: 0
69 | type: 0
70 | axis: 0
71 | joyNum: 0
72 | - serializedVersion: 3
73 | m_Name: Fire3
74 | descriptiveName:
75 | descriptiveNegativeName:
76 | negativeButton:
77 | positiveButton: left shift
78 | altNegativeButton:
79 | altPositiveButton: mouse 2
80 | gravity: 1000
81 | dead: 0.001
82 | sensitivity: 1000
83 | snap: 0
84 | invert: 0
85 | type: 0
86 | axis: 0
87 | joyNum: 0
88 | - serializedVersion: 3
89 | m_Name: Jump
90 | descriptiveName:
91 | descriptiveNegativeName:
92 | negativeButton:
93 | positiveButton: space
94 | altNegativeButton:
95 | altPositiveButton:
96 | gravity: 1000
97 | dead: 0.001
98 | sensitivity: 1000
99 | snap: 0
100 | invert: 0
101 | type: 0
102 | axis: 0
103 | joyNum: 0
104 | - serializedVersion: 3
105 | m_Name: Mouse X
106 | descriptiveName:
107 | descriptiveNegativeName:
108 | negativeButton:
109 | positiveButton:
110 | altNegativeButton:
111 | altPositiveButton:
112 | gravity: 0
113 | dead: 0
114 | sensitivity: 0.1
115 | snap: 0
116 | invert: 0
117 | type: 1
118 | axis: 0
119 | joyNum: 0
120 | - serializedVersion: 3
121 | m_Name: Mouse Y
122 | descriptiveName:
123 | descriptiveNegativeName:
124 | negativeButton:
125 | positiveButton:
126 | altNegativeButton:
127 | altPositiveButton:
128 | gravity: 0
129 | dead: 0
130 | sensitivity: 0.1
131 | snap: 0
132 | invert: 0
133 | type: 1
134 | axis: 1
135 | joyNum: 0
136 | - serializedVersion: 3
137 | m_Name: Mouse ScrollWheel
138 | descriptiveName:
139 | descriptiveNegativeName:
140 | negativeButton:
141 | positiveButton:
142 | altNegativeButton:
143 | altPositiveButton:
144 | gravity: 0
145 | dead: 0
146 | sensitivity: 0.1
147 | snap: 0
148 | invert: 0
149 | type: 1
150 | axis: 2
151 | joyNum: 0
152 | - serializedVersion: 3
153 | m_Name: Horizontal
154 | descriptiveName:
155 | descriptiveNegativeName:
156 | negativeButton:
157 | positiveButton:
158 | altNegativeButton:
159 | altPositiveButton:
160 | gravity: 0
161 | dead: 0.19
162 | sensitivity: 1
163 | snap: 0
164 | invert: 0
165 | type: 2
166 | axis: 0
167 | joyNum: 0
168 | - serializedVersion: 3
169 | m_Name: Vertical
170 | descriptiveName:
171 | descriptiveNegativeName:
172 | negativeButton:
173 | positiveButton:
174 | altNegativeButton:
175 | altPositiveButton:
176 | gravity: 0
177 | dead: 0.19
178 | sensitivity: 1
179 | snap: 0
180 | invert: 1
181 | type: 2
182 | axis: 1
183 | joyNum: 0
184 | - serializedVersion: 3
185 | m_Name: Fire1
186 | descriptiveName:
187 | descriptiveNegativeName:
188 | negativeButton:
189 | positiveButton: joystick button 0
190 | altNegativeButton:
191 | altPositiveButton:
192 | gravity: 1000
193 | dead: 0.001
194 | sensitivity: 1000
195 | snap: 0
196 | invert: 0
197 | type: 0
198 | axis: 0
199 | joyNum: 0
200 | - serializedVersion: 3
201 | m_Name: Fire2
202 | descriptiveName:
203 | descriptiveNegativeName:
204 | negativeButton:
205 | positiveButton: joystick button 1
206 | altNegativeButton:
207 | altPositiveButton:
208 | gravity: 1000
209 | dead: 0.001
210 | sensitivity: 1000
211 | snap: 0
212 | invert: 0
213 | type: 0
214 | axis: 0
215 | joyNum: 0
216 | - serializedVersion: 3
217 | m_Name: Fire3
218 | descriptiveName:
219 | descriptiveNegativeName:
220 | negativeButton:
221 | positiveButton: joystick button 2
222 | altNegativeButton:
223 | altPositiveButton:
224 | gravity: 1000
225 | dead: 0.001
226 | sensitivity: 1000
227 | snap: 0
228 | invert: 0
229 | type: 0
230 | axis: 0
231 | joyNum: 0
232 | - serializedVersion: 3
233 | m_Name: Jump
234 | descriptiveName:
235 | descriptiveNegativeName:
236 | negativeButton:
237 | positiveButton: joystick button 3
238 | altNegativeButton:
239 | altPositiveButton:
240 | gravity: 1000
241 | dead: 0.001
242 | sensitivity: 1000
243 | snap: 0
244 | invert: 0
245 | type: 0
246 | axis: 0
247 | joyNum: 0
248 | - serializedVersion: 3
249 | m_Name: Submit
250 | descriptiveName:
251 | descriptiveNegativeName:
252 | negativeButton:
253 | positiveButton: return
254 | altNegativeButton:
255 | altPositiveButton: joystick button 0
256 | gravity: 1000
257 | dead: 0.001
258 | sensitivity: 1000
259 | snap: 0
260 | invert: 0
261 | type: 0
262 | axis: 0
263 | joyNum: 0
264 | - serializedVersion: 3
265 | m_Name: Submit
266 | descriptiveName:
267 | descriptiveNegativeName:
268 | negativeButton:
269 | positiveButton: enter
270 | altNegativeButton:
271 | altPositiveButton: space
272 | gravity: 1000
273 | dead: 0.001
274 | sensitivity: 1000
275 | snap: 0
276 | invert: 0
277 | type: 0
278 | axis: 0
279 | joyNum: 0
280 | - serializedVersion: 3
281 | m_Name: Cancel
282 | descriptiveName:
283 | descriptiveNegativeName:
284 | negativeButton:
285 | positiveButton: escape
286 | altNegativeButton:
287 | altPositiveButton: joystick button 1
288 | gravity: 1000
289 | dead: 0.001
290 | sensitivity: 1000
291 | snap: 0
292 | invert: 0
293 | type: 0
294 | axis: 0
295 | joyNum: 0
296 | - serializedVersion: 3
297 | m_Name: Enable Debug Button 1
298 | descriptiveName:
299 | descriptiveNegativeName:
300 | negativeButton:
301 | positiveButton: left ctrl
302 | altNegativeButton:
303 | altPositiveButton: joystick button 8
304 | gravity: 0
305 | dead: 0
306 | sensitivity: 0
307 | snap: 0
308 | invert: 0
309 | type: 0
310 | axis: 0
311 | joyNum: 0
312 | - serializedVersion: 3
313 | m_Name: Enable Debug Button 2
314 | descriptiveName:
315 | descriptiveNegativeName:
316 | negativeButton:
317 | positiveButton: backspace
318 | altNegativeButton:
319 | altPositiveButton: joystick button 9
320 | gravity: 0
321 | dead: 0
322 | sensitivity: 0
323 | snap: 0
324 | invert: 0
325 | type: 0
326 | axis: 0
327 | joyNum: 0
328 | - serializedVersion: 3
329 | m_Name: Debug Reset
330 | descriptiveName:
331 | descriptiveNegativeName:
332 | negativeButton:
333 | positiveButton: left alt
334 | altNegativeButton:
335 | altPositiveButton: joystick button 1
336 | gravity: 0
337 | dead: 0
338 | sensitivity: 0
339 | snap: 0
340 | invert: 0
341 | type: 0
342 | axis: 0
343 | joyNum: 0
344 | - serializedVersion: 3
345 | m_Name: Debug Next
346 | descriptiveName:
347 | descriptiveNegativeName:
348 | negativeButton:
349 | positiveButton: page down
350 | altNegativeButton:
351 | altPositiveButton: joystick button 5
352 | gravity: 0
353 | dead: 0
354 | sensitivity: 0
355 | snap: 0
356 | invert: 0
357 | type: 0
358 | axis: 0
359 | joyNum: 0
360 | - serializedVersion: 3
361 | m_Name: Debug Previous
362 | descriptiveName:
363 | descriptiveNegativeName:
364 | negativeButton:
365 | positiveButton: page up
366 | altNegativeButton:
367 | altPositiveButton: joystick button 4
368 | gravity: 0
369 | dead: 0
370 | sensitivity: 0
371 | snap: 0
372 | invert: 0
373 | type: 0
374 | axis: 0
375 | joyNum: 0
376 | - serializedVersion: 3
377 | m_Name: Debug Validate
378 | descriptiveName:
379 | descriptiveNegativeName:
380 | negativeButton:
381 | positiveButton: return
382 | altNegativeButton:
383 | altPositiveButton: joystick button 0
384 | gravity: 0
385 | dead: 0
386 | sensitivity: 0
387 | snap: 0
388 | invert: 0
389 | type: 0
390 | axis: 0
391 | joyNum: 0
392 | - serializedVersion: 3
393 | m_Name: Debug Persistent
394 | descriptiveName:
395 | descriptiveNegativeName:
396 | negativeButton:
397 | positiveButton: right shift
398 | altNegativeButton:
399 | altPositiveButton: joystick button 2
400 | gravity: 0
401 | dead: 0
402 | sensitivity: 0
403 | snap: 0
404 | invert: 0
405 | type: 0
406 | axis: 0
407 | joyNum: 0
408 | - serializedVersion: 3
409 | m_Name: Debug Multiplier
410 | descriptiveName:
411 | descriptiveNegativeName:
412 | negativeButton:
413 | positiveButton: left shift
414 | altNegativeButton:
415 | altPositiveButton: joystick button 3
416 | gravity: 0
417 | dead: 0
418 | sensitivity: 0
419 | snap: 0
420 | invert: 0
421 | type: 0
422 | axis: 0
423 | joyNum: 0
424 | - serializedVersion: 3
425 | m_Name: Debug Horizontal
426 | descriptiveName:
427 | descriptiveNegativeName:
428 | negativeButton: left
429 | positiveButton: right
430 | altNegativeButton:
431 | altPositiveButton:
432 | gravity: 1000
433 | dead: 0.001
434 | sensitivity: 1000
435 | snap: 0
436 | invert: 0
437 | type: 0
438 | axis: 0
439 | joyNum: 0
440 | - serializedVersion: 3
441 | m_Name: Debug Vertical
442 | descriptiveName:
443 | descriptiveNegativeName:
444 | negativeButton: down
445 | positiveButton: up
446 | altNegativeButton:
447 | altPositiveButton:
448 | gravity: 1000
449 | dead: 0.001
450 | sensitivity: 1000
451 | snap: 0
452 | invert: 0
453 | type: 0
454 | axis: 0
455 | joyNum: 0
456 | - serializedVersion: 3
457 | m_Name: Debug Vertical
458 | descriptiveName:
459 | descriptiveNegativeName:
460 | negativeButton: down
461 | positiveButton: up
462 | altNegativeButton:
463 | altPositiveButton:
464 | gravity: 1000
465 | dead: 0.001
466 | sensitivity: 1000
467 | snap: 0
468 | invert: 0
469 | type: 2
470 | axis: 6
471 | joyNum: 0
472 | - serializedVersion: 3
473 | m_Name: Debug Horizontal
474 | descriptiveName:
475 | descriptiveNegativeName:
476 | negativeButton: left
477 | positiveButton: right
478 | altNegativeButton:
479 | altPositiveButton:
480 | gravity: 1000
481 | dead: 0.001
482 | sensitivity: 1000
483 | snap: 0
484 | invert: 0
485 | type: 2
486 | axis: 5
487 | joyNum: 0
488 |
--------------------------------------------------------------------------------
/ProjectSettings/MemorySettings.asset:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!387306366 &1
4 | MemorySettings:
5 | m_ObjectHideFlags: 0
6 | m_EditorMemorySettings:
7 | m_MainAllocatorBlockSize: -1
8 | m_ThreadAllocatorBlockSize: -1
9 | m_MainGfxBlockSize: -1
10 | m_ThreadGfxBlockSize: -1
11 | m_CacheBlockSize: -1
12 | m_TypetreeBlockSize: -1
13 | m_ProfilerBlockSize: -1
14 | m_ProfilerEditorBlockSize: -1
15 | m_BucketAllocatorGranularity: -1
16 | m_BucketAllocatorBucketsCount: -1
17 | m_BucketAllocatorBlockSize: -1
18 | m_BucketAllocatorBlockCount: -1
19 | m_ProfilerBucketAllocatorGranularity: -1
20 | m_ProfilerBucketAllocatorBucketsCount: -1
21 | m_ProfilerBucketAllocatorBlockSize: -1
22 | m_ProfilerBucketAllocatorBlockCount: -1
23 | m_TempAllocatorSizeMain: -1
24 | m_JobTempAllocatorBlockSize: -1
25 | m_BackgroundJobTempAllocatorBlockSize: -1
26 | m_JobTempAllocatorReducedBlockSize: -1
27 | m_TempAllocatorSizeGIBakingWorker: -1
28 | m_TempAllocatorSizeNavMeshWorker: -1
29 | m_TempAllocatorSizeAudioWorker: -1
30 | m_TempAllocatorSizeCloudWorker: -1
31 | m_TempAllocatorSizeGfx: -1
32 | m_TempAllocatorSizeJobWorker: -1
33 | m_TempAllocatorSizeBackgroundWorker: -1
34 | m_TempAllocatorSizePreloadManager: -1
35 | m_PlatformMemorySettings: {}
36 |
--------------------------------------------------------------------------------
/ProjectSettings/MultiplayerManager.asset:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!655991488 &1
4 | MultiplayerManager:
5 | m_ObjectHideFlags: 0
6 | m_EnableMultiplayerRoles: 0
7 | m_ActiveMultiplayerRole: 0
8 |
--------------------------------------------------------------------------------
/ProjectSettings/NavMeshAreas.asset:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!126 &1
4 | NavMeshProjectSettings:
5 | m_ObjectHideFlags: 0
6 | serializedVersion: 2
7 | areas:
8 | - name: Walkable
9 | cost: 1
10 | - name: Not Walkable
11 | cost: 1
12 | - name: Jump
13 | cost: 2
14 | - name:
15 | cost: 1
16 | - name:
17 | cost: 1
18 | - name:
19 | cost: 1
20 | - name:
21 | cost: 1
22 | - name:
23 | cost: 1
24 | - name:
25 | cost: 1
26 | - name:
27 | cost: 1
28 | - name:
29 | cost: 1
30 | - name:
31 | cost: 1
32 | - name:
33 | cost: 1
34 | - name:
35 | cost: 1
36 | - name:
37 | cost: 1
38 | - name:
39 | cost: 1
40 | - name:
41 | cost: 1
42 | - name:
43 | cost: 1
44 | - name:
45 | cost: 1
46 | - name:
47 | cost: 1
48 | - name:
49 | cost: 1
50 | - name:
51 | cost: 1
52 | - name:
53 | cost: 1
54 | - name:
55 | cost: 1
56 | - name:
57 | cost: 1
58 | - name:
59 | cost: 1
60 | - name:
61 | cost: 1
62 | - name:
63 | cost: 1
64 | - name:
65 | cost: 1
66 | - name:
67 | cost: 1
68 | - name:
69 | cost: 1
70 | - name:
71 | cost: 1
72 | m_LastAgentTypeID: -887442657
73 | m_Settings:
74 | - serializedVersion: 2
75 | agentTypeID: 0
76 | agentRadius: 0.5
77 | agentHeight: 2
78 | agentSlope: 45
79 | agentClimb: 0.75
80 | ledgeDropHeight: 0
81 | maxJumpAcrossDistance: 0
82 | minRegionArea: 2
83 | manualCellSize: 0
84 | cellSize: 0.16666667
85 | manualTileSize: 0
86 | tileSize: 256
87 | accuratePlacement: 0
88 | maxJobWorkers: 0
89 | preserveTilesOutsideBounds: 0
90 | debug:
91 | m_Flags: 0
92 | m_SettingNames:
93 | - Humanoid
94 |
--------------------------------------------------------------------------------
/ProjectSettings/NetworkManager.asset:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!149 &1
4 | NetworkManager:
5 | m_ObjectHideFlags: 0
6 | m_DebugLevel: 0
7 | m_Sendrate: 15
8 | m_AssetToPrefab: {}
9 |
--------------------------------------------------------------------------------
/ProjectSettings/PackageManagerSettings.asset:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!114 &1
4 | MonoBehaviour:
5 | m_ObjectHideFlags: 61
6 | m_CorrespondingSourceObject: {fileID: 0}
7 | m_PrefabInstance: {fileID: 0}
8 | m_PrefabAsset: {fileID: 0}
9 | m_GameObject: {fileID: 0}
10 | m_Enabled: 1
11 | m_EditorHideFlags: 0
12 | m_Script: {fileID: 13964, guid: 0000000000000000e000000000000000, type: 0}
13 | m_Name:
14 | m_EditorClassIdentifier:
15 | m_EnablePreReleasePackages: 0
16 | m_AdvancedSettingsExpanded: 1
17 | m_ScopedRegistriesSettingsExpanded: 1
18 | m_SeeAllPackageVersions: 0
19 | m_DismissPreviewPackagesInUse: 0
20 | oneTimeWarningShown: 0
21 | m_Registries:
22 | - m_Id: main
23 | m_Name:
24 | m_Url: https://packages.unity.com
25 | m_Scopes: []
26 | m_IsDefault: 1
27 | m_Capabilities: 7
28 | m_ConfigSource: 0
29 | - m_Id: scoped:project:OpenUPM
30 | m_Name: OpenUPM
31 | m_Url: https://package.openupm.com
32 | m_Scopes:
33 | - com.neuecc
34 | - com.cysharp
35 | - com.cysharp.unitask
36 | m_IsDefault: 0
37 | m_Capabilities: 0
38 | m_ConfigSource: 4
39 | m_UserSelectedRegistryName: OpenUPM
40 | m_UserAddingNewScopedRegistry: 0
41 | m_RegistryInfoDraft:
42 | m_Modified: 0
43 | m_ErrorMessage:
44 | m_UserModificationsInstanceId: -842
45 | m_OriginalInstanceId: -844
46 | m_LoadAssets: 0
47 |
--------------------------------------------------------------------------------
/ProjectSettings/Physics2DSettings.asset:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!19 &1
4 | Physics2DSettings:
5 | m_ObjectHideFlags: 0
6 | serializedVersion: 5
7 | m_Gravity: {x: 0, y: -9.81}
8 | m_DefaultMaterial: {fileID: 0}
9 | m_VelocityIterations: 8
10 | m_PositionIterations: 3
11 | m_VelocityThreshold: 1
12 | m_MaxLinearCorrection: 0.2
13 | m_MaxAngularCorrection: 8
14 | m_MaxTranslationSpeed: 100
15 | m_MaxRotationSpeed: 360
16 | m_BaumgarteScale: 0.2
17 | m_BaumgarteTimeOfImpactScale: 0.75
18 | m_TimeToSleep: 0.5
19 | m_LinearSleepTolerance: 0.01
20 | m_AngularSleepTolerance: 2
21 | m_DefaultContactOffset: 0.01
22 | m_JobOptions:
23 | serializedVersion: 2
24 | useMultithreading: 0
25 | useConsistencySorting: 0
26 | m_InterpolationPosesPerJob: 100
27 | m_NewContactsPerJob: 30
28 | m_CollideContactsPerJob: 100
29 | m_ClearFlagsPerJob: 200
30 | m_ClearBodyForcesPerJob: 200
31 | m_SyncDiscreteFixturesPerJob: 50
32 | m_SyncContinuousFixturesPerJob: 50
33 | m_FindNearestContactsPerJob: 100
34 | m_UpdateTriggerContactsPerJob: 100
35 | m_IslandSolverCostThreshold: 100
36 | m_IslandSolverBodyCostScale: 1
37 | m_IslandSolverContactCostScale: 10
38 | m_IslandSolverJointCostScale: 10
39 | m_IslandSolverBodiesPerJob: 50
40 | m_IslandSolverContactsPerJob: 50
41 | m_SimulationMode: 0
42 | m_QueriesHitTriggers: 1
43 | m_QueriesStartInColliders: 1
44 | m_CallbacksOnDisable: 1
45 | m_ReuseCollisionCallbacks: 1
46 | m_AutoSyncTransforms: 0
47 | m_AlwaysShowColliders: 0
48 | m_ShowColliderSleep: 1
49 | m_ShowColliderContacts: 0
50 | m_ShowColliderAABB: 0
51 | m_ContactArrowScale: 0.2
52 | m_ColliderAwakeColor: {r: 0.5686275, g: 0.95686275, b: 0.54509807, a: 0.7529412}
53 | m_ColliderAsleepColor: {r: 0.5686275, g: 0.95686275, b: 0.54509807, a: 0.36078432}
54 | m_ColliderContactColor: {r: 1, g: 0, b: 1, a: 0.6862745}
55 | m_ColliderAABBColor: {r: 1, g: 1, b: 0, a: 0.2509804}
56 | m_LayerCollisionMatrix: ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
57 |
--------------------------------------------------------------------------------
/ProjectSettings/PresetManager.asset:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!1386491679 &1
4 | PresetManager:
5 | m_ObjectHideFlags: 0
6 | serializedVersion: 2
7 | m_DefaultPresets: {}
8 |
--------------------------------------------------------------------------------
/ProjectSettings/ProjectSettings.asset:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!129 &1
4 | PlayerSettings:
5 | m_ObjectHideFlags: 0
6 | serializedVersion: 26
7 | productGUID: f4d4894cbab2e4c4db46c2169ebd4a0e
8 | AndroidProfiler: 0
9 | AndroidFilterTouchesWhenObscured: 0
10 | AndroidEnableSustainedPerformanceMode: 0
11 | defaultScreenOrientation: 4
12 | targetDevice: 2
13 | useOnDemandResources: 0
14 | accelerometerFrequency: 60
15 | companyName: com.midra_lab
16 | productName: UniMasterLinker
17 | defaultCursor: {fileID: 0}
18 | cursorHotspot: {x: 0, y: 0}
19 | m_SplashScreenBackgroundColor: {r: 0.13725491, g: 0.12156863, b: 0.1254902, a: 1}
20 | m_ShowUnitySplashScreen: 1
21 | m_ShowUnitySplashLogo: 1
22 | m_SplashScreenOverlayOpacity: 1
23 | m_SplashScreenAnimation: 1
24 | m_SplashScreenLogoStyle: 1
25 | m_SplashScreenDrawMode: 0
26 | m_SplashScreenBackgroundAnimationZoom: 1
27 | m_SplashScreenLogoAnimationZoom: 1
28 | m_SplashScreenBackgroundLandscapeAspect: 1
29 | m_SplashScreenBackgroundPortraitAspect: 1
30 | m_SplashScreenBackgroundLandscapeUvs:
31 | serializedVersion: 2
32 | x: 0
33 | y: 0
34 | width: 1
35 | height: 1
36 | m_SplashScreenBackgroundPortraitUvs:
37 | serializedVersion: 2
38 | x: 0
39 | y: 0
40 | width: 1
41 | height: 1
42 | m_SplashScreenLogos: []
43 | m_VirtualRealitySplashScreen: {fileID: 0}
44 | m_HolographicTrackingLossScreen: {fileID: 0}
45 | defaultScreenWidth: 1920
46 | defaultScreenHeight: 1080
47 | defaultScreenWidthWeb: 960
48 | defaultScreenHeightWeb: 600
49 | m_StereoRenderingPath: 0
50 | m_ActiveColorSpace: 1
51 | m_SpriteBatchVertexThreshold: 300
52 | m_MTRendering: 1
53 | mipStripping: 0
54 | numberOfMipsStripped: 0
55 | numberOfMipsStrippedPerMipmapLimitGroup: {}
56 | m_StackTraceTypes: 010000000100000001000000010000000100000001000000
57 | iosShowActivityIndicatorOnLoading: -1
58 | androidShowActivityIndicatorOnLoading: -1
59 | iosUseCustomAppBackgroundBehavior: 0
60 | allowedAutorotateToPortrait: 1
61 | allowedAutorotateToPortraitUpsideDown: 1
62 | allowedAutorotateToLandscapeRight: 1
63 | allowedAutorotateToLandscapeLeft: 1
64 | useOSAutorotation: 1
65 | use32BitDisplayBuffer: 1
66 | preserveFramebufferAlpha: 0
67 | disableDepthAndStencilBuffers: 0
68 | androidStartInFullscreen: 1
69 | androidRenderOutsideSafeArea: 1
70 | androidUseSwappy: 1
71 | androidBlitType: 0
72 | androidResizableWindow: 0
73 | androidDefaultWindowWidth: 1920
74 | androidDefaultWindowHeight: 1080
75 | androidMinimumWindowWidth: 400
76 | androidMinimumWindowHeight: 300
77 | androidFullscreenMode: 1
78 | defaultIsNativeResolution: 1
79 | macRetinaSupport: 1
80 | runInBackground: 0
81 | captureSingleScreen: 0
82 | muteOtherAudioSources: 0
83 | Prepare IOS For Recording: 0
84 | Force IOS Speakers When Recording: 0
85 | deferSystemGesturesMode: 0
86 | hideHomeButton: 0
87 | submitAnalytics: 1
88 | usePlayerLog: 1
89 | bakeCollisionMeshes: 0
90 | forceSingleInstance: 0
91 | useFlipModelSwapchain: 1
92 | resizableWindow: 0
93 | useMacAppStoreValidation: 0
94 | macAppStoreCategory: public.app-category.games
95 | gpuSkinning: 0
96 | xboxPIXTextureCapture: 0
97 | xboxEnableAvatar: 0
98 | xboxEnableKinect: 0
99 | xboxEnableKinectAutoTracking: 0
100 | xboxEnableFitness: 0
101 | visibleInBackground: 1
102 | allowFullscreenSwitch: 1
103 | fullscreenMode: 1
104 | xboxSpeechDB: 0
105 | xboxEnableHeadOrientation: 0
106 | xboxEnableGuest: 0
107 | xboxEnablePIXSampling: 0
108 | metalFramebufferOnly: 0
109 | xboxOneResolution: 0
110 | xboxOneSResolution: 0
111 | xboxOneXResolution: 3
112 | xboxOneMonoLoggingLevel: 0
113 | xboxOneLoggingLevel: 1
114 | xboxOneDisableEsram: 0
115 | xboxOneEnableTypeOptimization: 0
116 | xboxOnePresentImmediateThreshold: 0
117 | switchQueueCommandMemory: 1048576
118 | switchQueueControlMemory: 16384
119 | switchQueueComputeMemory: 262144
120 | switchNVNShaderPoolsGranularity: 33554432
121 | switchNVNDefaultPoolsGranularity: 16777216
122 | switchNVNOtherPoolsGranularity: 16777216
123 | switchGpuScratchPoolGranularity: 2097152
124 | switchAllowGpuScratchShrinking: 0
125 | switchNVNMaxPublicTextureIDCount: 0
126 | switchNVNMaxPublicSamplerIDCount: 0
127 | switchNVNGraphicsFirmwareMemory: 32
128 | stadiaPresentMode: 0
129 | stadiaTargetFramerate: 0
130 | vulkanNumSwapchainBuffers: 3
131 | vulkanEnableSetSRGBWrite: 0
132 | vulkanEnablePreTransform: 0
133 | vulkanEnableLateAcquireNextImage: 0
134 | vulkanEnableCommandBufferRecycling: 1
135 | loadStoreDebugModeEnabled: 0
136 | bundleVersion: 1.0
137 | preloadedAssets: []
138 | metroInputSource: 0
139 | wsaTransparentSwapchain: 0
140 | m_HolographicPauseOnTrackingLoss: 1
141 | xboxOneDisableKinectGpuReservation: 1
142 | xboxOneEnable7thCore: 1
143 | vrSettings:
144 | enable360StereoCapture: 0
145 | isWsaHolographicRemotingEnabled: 0
146 | enableFrameTimingStats: 0
147 | enableOpenGLProfilerGPURecorders: 1
148 | useHDRDisplay: 0
149 | hdrBitDepth: 0
150 | m_ColorGamuts: 00000000
151 | targetPixelDensity: 30
152 | resolutionScalingMode: 0
153 | resetResolutionOnWindowResize: 0
154 | androidSupportedAspectRatio: 1
155 | androidMaxAspectRatio: 2.1
156 | applicationIdentifier:
157 | Standalone: com.DefaultCompany.2DProject
158 | buildNumber:
159 | Bratwurst: 0
160 | Standalone: 0
161 | iPhone: 0
162 | tvOS: 0
163 | overrideDefaultApplicationIdentifier: 1
164 | AndroidBundleVersionCode: 1
165 | AndroidMinSdkVersion: 22
166 | AndroidTargetSdkVersion: 0
167 | AndroidPreferredInstallLocation: 1
168 | aotOptions:
169 | stripEngineCode: 1
170 | iPhoneStrippingLevel: 0
171 | iPhoneScriptCallOptimization: 0
172 | ForceInternetPermission: 0
173 | ForceSDCardPermission: 0
174 | CreateWallpaper: 0
175 | APKExpansionFiles: 0
176 | keepLoadedShadersAlive: 0
177 | StripUnusedMeshComponents: 0
178 | strictShaderVariantMatching: 0
179 | VertexChannelCompressionMask: 4054
180 | iPhoneSdkVersion: 988
181 | iOSTargetOSVersionString: 12.0
182 | tvOSSdkVersion: 0
183 | tvOSRequireExtendedGameController: 0
184 | tvOSTargetOSVersionString: 12.0
185 | bratwurstSdkVersion: 0
186 | bratwurstTargetOSVersionString: 16.4
187 | uIPrerenderedIcon: 0
188 | uIRequiresPersistentWiFi: 0
189 | uIRequiresFullScreen: 1
190 | uIStatusBarHidden: 1
191 | uIExitOnSuspend: 0
192 | uIStatusBarStyle: 0
193 | appleTVSplashScreen: {fileID: 0}
194 | appleTVSplashScreen2x: {fileID: 0}
195 | tvOSSmallIconLayers: []
196 | tvOSSmallIconLayers2x: []
197 | tvOSLargeIconLayers: []
198 | tvOSLargeIconLayers2x: []
199 | tvOSTopShelfImageLayers: []
200 | tvOSTopShelfImageLayers2x: []
201 | tvOSTopShelfImageWideLayers: []
202 | tvOSTopShelfImageWideLayers2x: []
203 | iOSLaunchScreenType: 0
204 | iOSLaunchScreenPortrait: {fileID: 0}
205 | iOSLaunchScreenLandscape: {fileID: 0}
206 | iOSLaunchScreenBackgroundColor:
207 | serializedVersion: 2
208 | rgba: 0
209 | iOSLaunchScreenFillPct: 100
210 | iOSLaunchScreenSize: 100
211 | iOSLaunchScreenCustomXibPath:
212 | iOSLaunchScreeniPadType: 0
213 | iOSLaunchScreeniPadImage: {fileID: 0}
214 | iOSLaunchScreeniPadBackgroundColor:
215 | serializedVersion: 2
216 | rgba: 0
217 | iOSLaunchScreeniPadFillPct: 100
218 | iOSLaunchScreeniPadSize: 100
219 | iOSLaunchScreeniPadCustomXibPath:
220 | iOSLaunchScreenCustomStoryboardPath:
221 | iOSLaunchScreeniPadCustomStoryboardPath:
222 | iOSDeviceRequirements: []
223 | iOSURLSchemes: []
224 | macOSURLSchemes: []
225 | iOSBackgroundModes: 0
226 | iOSMetalForceHardShadows: 0
227 | metalEditorSupport: 1
228 | metalAPIValidation: 1
229 | iOSRenderExtraFrameOnPause: 0
230 | iosCopyPluginsCodeInsteadOfSymlink: 0
231 | appleDeveloperTeamID:
232 | iOSManualSigningProvisioningProfileID:
233 | tvOSManualSigningProvisioningProfileID:
234 | bratwurstManualSigningProvisioningProfileID:
235 | iOSManualSigningProvisioningProfileType: 0
236 | tvOSManualSigningProvisioningProfileType: 0
237 | bratwurstManualSigningProvisioningProfileType: 0
238 | appleEnableAutomaticSigning: 0
239 | iOSRequireARKit: 0
240 | iOSAutomaticallyDetectAndAddCapabilities: 1
241 | appleEnableProMotion: 0
242 | shaderPrecisionModel: 0
243 | clonedFromGUID: 10ad67313f4034357812315f3c407484
244 | templatePackageId: com.unity.template.2d@7.0.3
245 | templateDefaultScene: Assets/Scenes/SampleScene.unity
246 | useCustomMainManifest: 0
247 | useCustomLauncherManifest: 0
248 | useCustomMainGradleTemplate: 0
249 | useCustomLauncherGradleManifest: 0
250 | useCustomBaseGradleTemplate: 0
251 | useCustomGradlePropertiesTemplate: 0
252 | useCustomGradleSettingsTemplate: 0
253 | useCustomProguardFile: 0
254 | AndroidTargetArchitectures: 1
255 | AndroidTargetDevices: 0
256 | AndroidSplashScreenScale: 0
257 | androidSplashScreen: {fileID: 0}
258 | AndroidKeystoreName:
259 | AndroidKeyaliasName:
260 | AndroidEnableArmv9SecurityFeatures: 0
261 | AndroidBuildApkPerCpuArchitecture: 0
262 | AndroidTVCompatibility: 0
263 | AndroidIsGame: 1
264 | AndroidEnableTango: 0
265 | androidEnableBanner: 1
266 | androidUseLowAccuracyLocation: 0
267 | androidUseCustomKeystore: 0
268 | m_AndroidBanners:
269 | - width: 320
270 | height: 180
271 | banner: {fileID: 0}
272 | androidGamepadSupportLevel: 0
273 | chromeosInputEmulation: 1
274 | AndroidMinifyRelease: 0
275 | AndroidMinifyDebug: 0
276 | AndroidValidateAppBundleSize: 1
277 | AndroidAppBundleSizeToValidate: 150
278 | m_BuildTargetIcons: []
279 | m_BuildTargetPlatformIcons:
280 | - m_BuildTarget: Android
281 | m_Icons:
282 | - m_Textures: []
283 | m_Width: 432
284 | m_Height: 432
285 | m_Kind: 2
286 | m_SubKind:
287 | - m_Textures: []
288 | m_Width: 324
289 | m_Height: 324
290 | m_Kind: 2
291 | m_SubKind:
292 | - m_Textures: []
293 | m_Width: 216
294 | m_Height: 216
295 | m_Kind: 2
296 | m_SubKind:
297 | - m_Textures: []
298 | m_Width: 162
299 | m_Height: 162
300 | m_Kind: 2
301 | m_SubKind:
302 | - m_Textures: []
303 | m_Width: 108
304 | m_Height: 108
305 | m_Kind: 2
306 | m_SubKind:
307 | - m_Textures: []
308 | m_Width: 81
309 | m_Height: 81
310 | m_Kind: 2
311 | m_SubKind:
312 | - m_Textures: []
313 | m_Width: 192
314 | m_Height: 192
315 | m_Kind: 1
316 | m_SubKind:
317 | - m_Textures: []
318 | m_Width: 144
319 | m_Height: 144
320 | m_Kind: 1
321 | m_SubKind:
322 | - m_Textures: []
323 | m_Width: 96
324 | m_Height: 96
325 | m_Kind: 1
326 | m_SubKind:
327 | - m_Textures: []
328 | m_Width: 72
329 | m_Height: 72
330 | m_Kind: 1
331 | m_SubKind:
332 | - m_Textures: []
333 | m_Width: 48
334 | m_Height: 48
335 | m_Kind: 1
336 | m_SubKind:
337 | - m_Textures: []
338 | m_Width: 36
339 | m_Height: 36
340 | m_Kind: 1
341 | m_SubKind:
342 | - m_Textures: []
343 | m_Width: 192
344 | m_Height: 192
345 | m_Kind: 0
346 | m_SubKind:
347 | - m_Textures: []
348 | m_Width: 144
349 | m_Height: 144
350 | m_Kind: 0
351 | m_SubKind:
352 | - m_Textures: []
353 | m_Width: 96
354 | m_Height: 96
355 | m_Kind: 0
356 | m_SubKind:
357 | - m_Textures: []
358 | m_Width: 72
359 | m_Height: 72
360 | m_Kind: 0
361 | m_SubKind:
362 | - m_Textures: []
363 | m_Width: 48
364 | m_Height: 48
365 | m_Kind: 0
366 | m_SubKind:
367 | - m_Textures: []
368 | m_Width: 36
369 | m_Height: 36
370 | m_Kind: 0
371 | m_SubKind:
372 | m_BuildTargetBatching: []
373 | m_BuildTargetShaderSettings: []
374 | m_BuildTargetGraphicsJobs:
375 | - m_BuildTarget: MacStandaloneSupport
376 | m_GraphicsJobs: 0
377 | - m_BuildTarget: Switch
378 | m_GraphicsJobs: 0
379 | - m_BuildTarget: MetroSupport
380 | m_GraphicsJobs: 0
381 | - m_BuildTarget: AppleTVSupport
382 | m_GraphicsJobs: 0
383 | - m_BuildTarget: BJMSupport
384 | m_GraphicsJobs: 0
385 | - m_BuildTarget: LinuxStandaloneSupport
386 | m_GraphicsJobs: 0
387 | - m_BuildTarget: PS4Player
388 | m_GraphicsJobs: 0
389 | - m_BuildTarget: iOSSupport
390 | m_GraphicsJobs: 0
391 | - m_BuildTarget: WindowsStandaloneSupport
392 | m_GraphicsJobs: 0
393 | - m_BuildTarget: XboxOnePlayer
394 | m_GraphicsJobs: 0
395 | - m_BuildTarget: LuminSupport
396 | m_GraphicsJobs: 0
397 | - m_BuildTarget: AndroidPlayer
398 | m_GraphicsJobs: 0
399 | - m_BuildTarget: WebGLSupport
400 | m_GraphicsJobs: 0
401 | m_BuildTargetGraphicsJobMode: []
402 | m_BuildTargetGraphicsAPIs:
403 | - m_BuildTarget: AndroidPlayer
404 | m_APIs: 150000000b000000
405 | m_Automatic: 1
406 | - m_BuildTarget: iOSSupport
407 | m_APIs: 10000000
408 | m_Automatic: 1
409 | m_BuildTargetVRSettings: []
410 | m_DefaultShaderChunkSizeInMB: 16
411 | m_DefaultShaderChunkCount: 0
412 | openGLRequireES31: 0
413 | openGLRequireES31AEP: 0
414 | openGLRequireES32: 0
415 | m_TemplateCustomTags: {}
416 | mobileMTRendering:
417 | Android: 1
418 | iPhone: 1
419 | tvOS: 1
420 | m_BuildTargetGroupLightmapEncodingQuality: []
421 | m_BuildTargetGroupHDRCubemapEncodingQuality: []
422 | m_BuildTargetGroupLightmapSettings: []
423 | m_BuildTargetGroupLoadStoreDebugModeSettings: []
424 | m_BuildTargetNormalMapEncoding: []
425 | m_BuildTargetDefaultTextureCompressionFormat:
426 | - m_BuildTarget: Android
427 | m_Format: 3
428 | playModeTestRunnerEnabled: 0
429 | runPlayModeTestAsEditModeTest: 0
430 | actionOnDotNetUnhandledException: 1
431 | enableInternalProfiler: 0
432 | logObjCUncaughtExceptions: 1
433 | enableCrashReportAPI: 0
434 | cameraUsageDescription:
435 | locationUsageDescription:
436 | microphoneUsageDescription:
437 | bluetoothUsageDescription:
438 | macOSTargetOSVersion: 10.13.0
439 | switchNMETAOverride:
440 | switchNetLibKey:
441 | switchSocketMemoryPoolSize: 6144
442 | switchSocketAllocatorPoolSize: 128
443 | switchSocketConcurrencyLimit: 14
444 | switchScreenResolutionBehavior: 2
445 | switchUseCPUProfiler: 0
446 | switchUseGOLDLinker: 0
447 | switchLTOSetting: 0
448 | switchApplicationID: 0x01004b9000490000
449 | switchNSODependencies:
450 | switchCompilerFlags:
451 | switchTitleNames_0:
452 | switchTitleNames_1:
453 | switchTitleNames_2:
454 | switchTitleNames_3:
455 | switchTitleNames_4:
456 | switchTitleNames_5:
457 | switchTitleNames_6:
458 | switchTitleNames_7:
459 | switchTitleNames_8:
460 | switchTitleNames_9:
461 | switchTitleNames_10:
462 | switchTitleNames_11:
463 | switchTitleNames_12:
464 | switchTitleNames_13:
465 | switchTitleNames_14:
466 | switchTitleNames_15:
467 | switchPublisherNames_0:
468 | switchPublisherNames_1:
469 | switchPublisherNames_2:
470 | switchPublisherNames_3:
471 | switchPublisherNames_4:
472 | switchPublisherNames_5:
473 | switchPublisherNames_6:
474 | switchPublisherNames_7:
475 | switchPublisherNames_8:
476 | switchPublisherNames_9:
477 | switchPublisherNames_10:
478 | switchPublisherNames_11:
479 | switchPublisherNames_12:
480 | switchPublisherNames_13:
481 | switchPublisherNames_14:
482 | switchPublisherNames_15:
483 | switchIcons_0: {fileID: 0}
484 | switchIcons_1: {fileID: 0}
485 | switchIcons_2: {fileID: 0}
486 | switchIcons_3: {fileID: 0}
487 | switchIcons_4: {fileID: 0}
488 | switchIcons_5: {fileID: 0}
489 | switchIcons_6: {fileID: 0}
490 | switchIcons_7: {fileID: 0}
491 | switchIcons_8: {fileID: 0}
492 | switchIcons_9: {fileID: 0}
493 | switchIcons_10: {fileID: 0}
494 | switchIcons_11: {fileID: 0}
495 | switchIcons_12: {fileID: 0}
496 | switchIcons_13: {fileID: 0}
497 | switchIcons_14: {fileID: 0}
498 | switchIcons_15: {fileID: 0}
499 | switchSmallIcons_0: {fileID: 0}
500 | switchSmallIcons_1: {fileID: 0}
501 | switchSmallIcons_2: {fileID: 0}
502 | switchSmallIcons_3: {fileID: 0}
503 | switchSmallIcons_4: {fileID: 0}
504 | switchSmallIcons_5: {fileID: 0}
505 | switchSmallIcons_6: {fileID: 0}
506 | switchSmallIcons_7: {fileID: 0}
507 | switchSmallIcons_8: {fileID: 0}
508 | switchSmallIcons_9: {fileID: 0}
509 | switchSmallIcons_10: {fileID: 0}
510 | switchSmallIcons_11: {fileID: 0}
511 | switchSmallIcons_12: {fileID: 0}
512 | switchSmallIcons_13: {fileID: 0}
513 | switchSmallIcons_14: {fileID: 0}
514 | switchSmallIcons_15: {fileID: 0}
515 | switchManualHTML:
516 | switchAccessibleURLs:
517 | switchLegalInformation:
518 | switchMainThreadStackSize: 1048576
519 | switchPresenceGroupId:
520 | switchLogoHandling: 0
521 | switchReleaseVersion: 0
522 | switchDisplayVersion: 1.0.0
523 | switchStartupUserAccount: 0
524 | switchSupportedLanguagesMask: 0
525 | switchLogoType: 0
526 | switchApplicationErrorCodeCategory:
527 | switchUserAccountSaveDataSize: 0
528 | switchUserAccountSaveDataJournalSize: 0
529 | switchApplicationAttribute: 0
530 | switchCardSpecSize: -1
531 | switchCardSpecClock: -1
532 | switchRatingsMask: 0
533 | switchRatingsInt_0: 0
534 | switchRatingsInt_1: 0
535 | switchRatingsInt_2: 0
536 | switchRatingsInt_3: 0
537 | switchRatingsInt_4: 0
538 | switchRatingsInt_5: 0
539 | switchRatingsInt_6: 0
540 | switchRatingsInt_7: 0
541 | switchRatingsInt_8: 0
542 | switchRatingsInt_9: 0
543 | switchRatingsInt_10: 0
544 | switchRatingsInt_11: 0
545 | switchRatingsInt_12: 0
546 | switchLocalCommunicationIds_0:
547 | switchLocalCommunicationIds_1:
548 | switchLocalCommunicationIds_2:
549 | switchLocalCommunicationIds_3:
550 | switchLocalCommunicationIds_4:
551 | switchLocalCommunicationIds_5:
552 | switchLocalCommunicationIds_6:
553 | switchLocalCommunicationIds_7:
554 | switchParentalControl: 0
555 | switchAllowsScreenshot: 1
556 | switchAllowsVideoCapturing: 1
557 | switchAllowsRuntimeAddOnContentInstall: 0
558 | switchDataLossConfirmation: 0
559 | switchUserAccountLockEnabled: 0
560 | switchSystemResourceMemory: 16777216
561 | switchSupportedNpadStyles: 22
562 | switchNativeFsCacheSize: 32
563 | switchIsHoldTypeHorizontal: 0
564 | switchSupportedNpadCount: 8
565 | switchEnableTouchScreen: 1
566 | switchSocketConfigEnabled: 0
567 | switchTcpInitialSendBufferSize: 32
568 | switchTcpInitialReceiveBufferSize: 64
569 | switchTcpAutoSendBufferSizeMax: 256
570 | switchTcpAutoReceiveBufferSizeMax: 256
571 | switchUdpSendBufferSize: 9
572 | switchUdpReceiveBufferSize: 42
573 | switchSocketBufferEfficiency: 4
574 | switchSocketInitializeEnabled: 1
575 | switchNetworkInterfaceManagerInitializeEnabled: 1
576 | switchPlayerConnectionEnabled: 1
577 | switchUseNewStyleFilepaths: 0
578 | switchUseLegacyFmodPriorities: 0
579 | switchUseMicroSleepForYield: 1
580 | switchEnableRamDiskSupport: 0
581 | switchMicroSleepForYieldTime: 25
582 | switchRamDiskSpaceSize: 12
583 | ps4NPAgeRating: 12
584 | ps4NPTitleSecret:
585 | ps4NPTrophyPackPath:
586 | ps4ParentalLevel: 11
587 | ps4ContentID: ED1633-NPXX51362_00-0000000000000000
588 | ps4Category: 0
589 | ps4MasterVersion: 01.00
590 | ps4AppVersion: 01.00
591 | ps4AppType: 0
592 | ps4ParamSfxPath:
593 | ps4VideoOutPixelFormat: 0
594 | ps4VideoOutInitialWidth: 1920
595 | ps4VideoOutBaseModeInitialWidth: 1920
596 | ps4VideoOutReprojectionRate: 60
597 | ps4PronunciationXMLPath:
598 | ps4PronunciationSIGPath:
599 | ps4BackgroundImagePath:
600 | ps4StartupImagePath:
601 | ps4StartupImagesFolder:
602 | ps4IconImagesFolder:
603 | ps4SaveDataImagePath:
604 | ps4SdkOverride:
605 | ps4BGMPath:
606 | ps4ShareFilePath:
607 | ps4ShareOverlayImagePath:
608 | ps4PrivacyGuardImagePath:
609 | ps4ExtraSceSysFile:
610 | ps4NPtitleDatPath:
611 | ps4RemotePlayKeyAssignment: -1
612 | ps4RemotePlayKeyMappingDir:
613 | ps4PlayTogetherPlayerCount: 0
614 | ps4EnterButtonAssignment: 2
615 | ps4ApplicationParam1: 0
616 | ps4ApplicationParam2: 0
617 | ps4ApplicationParam3: 0
618 | ps4ApplicationParam4: 0
619 | ps4DownloadDataSize: 0
620 | ps4GarlicHeapSize: 2048
621 | ps4ProGarlicHeapSize: 2560
622 | playerPrefsMaxSize: 32768
623 | ps4Passcode: bi9UOuSpM2Tlh01vOzwvSikHFswuzleh
624 | ps4pnSessions: 1
625 | ps4pnPresence: 1
626 | ps4pnFriends: 1
627 | ps4pnGameCustomData: 1
628 | playerPrefsSupport: 0
629 | enableApplicationExit: 0
630 | resetTempFolder: 1
631 | restrictedAudioUsageRights: 0
632 | ps4UseResolutionFallback: 0
633 | ps4ReprojectionSupport: 0
634 | ps4UseAudio3dBackend: 0
635 | ps4UseLowGarlicFragmentationMode: 1
636 | ps4SocialScreenEnabled: 0
637 | ps4ScriptOptimizationLevel: 2
638 | ps4Audio3dVirtualSpeakerCount: 14
639 | ps4attribCpuUsage: 0
640 | ps4PatchPkgPath:
641 | ps4PatchLatestPkgPath:
642 | ps4PatchChangeinfoPath:
643 | ps4PatchDayOne: 0
644 | ps4attribUserManagement: 0
645 | ps4attribMoveSupport: 0
646 | ps4attrib3DSupport: 0
647 | ps4attribShareSupport: 0
648 | ps4attribExclusiveVR: 0
649 | ps4disableAutoHideSplash: 0
650 | ps4videoRecordingFeaturesUsed: 0
651 | ps4contentSearchFeaturesUsed: 0
652 | ps4CompatibilityPS5: 0
653 | ps4AllowPS5Detection: 0
654 | ps4GPU800MHz: 1
655 | ps4attribEyeToEyeDistanceSettingVR: 0
656 | ps4IncludedModules: []
657 | ps4attribVROutputEnabled: 0
658 | monoEnv:
659 | splashScreenBackgroundSourceLandscape: {fileID: 0}
660 | splashScreenBackgroundSourcePortrait: {fileID: 0}
661 | blurSplashScreenBackground: 1
662 | spritePackerPolicy:
663 | webGLMemorySize: 32
664 | webGLExceptionSupport: 1
665 | webGLNameFilesAsHashes: 0
666 | webGLShowDiagnostics: 0
667 | webGLDataCaching: 1
668 | webGLDebugSymbols: 0
669 | webGLEmscriptenArgs:
670 | webGLModulesDirectory:
671 | webGLTemplate: APPLICATION:Default
672 | webGLAnalyzeBuildSize: 0
673 | webGLUseEmbeddedResources: 0
674 | webGLCompressionFormat: 0
675 | webGLWasmArithmeticExceptions: 0
676 | webGLLinkerTarget: 1
677 | webGLThreadsSupport: 0
678 | webGLDecompressionFallback: 0
679 | webGLInitialMemorySize: 32
680 | webGLMaximumMemorySize: 2048
681 | webGLMemoryGrowthMode: 2
682 | webGLMemoryLinearGrowthStep: 16
683 | webGLMemoryGeometricGrowthStep: 0.2
684 | webGLMemoryGeometricGrowthCap: 96
685 | webGLPowerPreference: 2
686 | scriptingDefineSymbols: {}
687 | additionalCompilerArguments: {}
688 | platformArchitecture: {}
689 | scriptingBackend: {}
690 | il2cppCompilerConfiguration: {}
691 | il2cppCodeGeneration: {}
692 | managedStrippingLevel:
693 | Bratwurst: 1
694 | EmbeddedLinux: 1
695 | GameCoreScarlett: 1
696 | GameCoreXboxOne: 1
697 | Nintendo Switch: 1
698 | PS4: 1
699 | PS5: 1
700 | QNX: 1
701 | Stadia: 1
702 | WebGL: 1
703 | Windows Store Apps: 1
704 | XboxOne: 1
705 | iPhone: 1
706 | tvOS: 1
707 | incrementalIl2cppBuild: {}
708 | suppressCommonWarnings: 1
709 | allowUnsafeCode: 0
710 | useDeterministicCompilation: 1
711 | additionalIl2CppArgs:
712 | scriptingRuntimeVersion: 1
713 | gcIncremental: 1
714 | gcWBarrierValidation: 0
715 | apiCompatibilityLevelPerPlatform: {}
716 | m_RenderingPath: 1
717 | m_MobileRenderingPath: 1
718 | metroPackageName: UniMasterLinker
719 | metroPackageVersion:
720 | metroCertificatePath:
721 | metroCertificatePassword:
722 | metroCertificateSubject:
723 | metroCertificateIssuer:
724 | metroCertificateNotAfter: 0000000000000000
725 | metroApplicationDescription: UniMasterLinker
726 | wsaImages: {}
727 | metroTileShortName:
728 | metroTileShowName: 0
729 | metroMediumTileShowName: 0
730 | metroLargeTileShowName: 0
731 | metroWideTileShowName: 0
732 | metroSupportStreamingInstall: 0
733 | metroLastRequiredScene: 0
734 | metroDefaultTileSize: 1
735 | metroTileForegroundText: 2
736 | metroTileBackgroundColor: {r: 0.13333334, g: 0.17254902, b: 0.21568628, a: 0}
737 | metroSplashScreenBackgroundColor: {r: 0.12941177, g: 0.17254902, b: 0.21568628, a: 1}
738 | metroSplashScreenUseBackgroundColor: 0
739 | platformCapabilities: {}
740 | metroTargetDeviceFamilies: {}
741 | metroFTAName:
742 | metroFTAFileTypes: []
743 | metroProtocolName:
744 | vcxProjDefaultLanguage:
745 | XboxOneProductId:
746 | XboxOneUpdateKey:
747 | XboxOneSandboxId:
748 | XboxOneContentId:
749 | XboxOneTitleId:
750 | XboxOneSCId:
751 | XboxOneGameOsOverridePath:
752 | XboxOnePackagingOverridePath:
753 | XboxOneAppManifestOverridePath:
754 | XboxOneVersion: 1.0.0.0
755 | XboxOnePackageEncryption: 0
756 | XboxOnePackageUpdateGranularity: 2
757 | XboxOneDescription:
758 | XboxOneLanguage:
759 | - enus
760 | XboxOneCapability: []
761 | XboxOneGameRating: {}
762 | XboxOneIsContentPackage: 0
763 | XboxOneEnhancedXboxCompatibilityMode: 0
764 | XboxOneEnableGPUVariability: 1
765 | XboxOneSockets: {}
766 | XboxOneSplashScreen: {fileID: 0}
767 | XboxOneAllowedProductIds: []
768 | XboxOnePersistentLocalStorageSize: 0
769 | XboxOneXTitleMemory: 8
770 | XboxOneOverrideIdentityName:
771 | XboxOneOverrideIdentityPublisher:
772 | vrEditorSettings: {}
773 | cloudServicesEnabled: {}
774 | luminIcon:
775 | m_Name:
776 | m_ModelFolderPath:
777 | m_PortalFolderPath:
778 | luminCert:
779 | m_CertPath:
780 | m_SignPackage: 1
781 | luminIsChannelApp: 0
782 | luminVersion:
783 | m_VersionCode: 1
784 | m_VersionName:
785 | hmiPlayerDataPath:
786 | hmiForceSRGBBlit: 1
787 | embeddedLinuxEnableGamepadInput: 1
788 | hmiLogStartupTiming: 0
789 | hmiCpuConfiguration:
790 | apiCompatibilityLevel: 6
791 | activeInputHandler: 0
792 | windowsGamepadBackendHint: 0
793 | cloudProjectId:
794 | framebufferDepthMemorylessMode: 0
795 | qualitySettingsNames: []
796 | projectName:
797 | organizationId:
798 | cloudEnabled: 0
799 | legacyClampBlendShapeWeights: 0
800 | hmiLoadingImage: {fileID: 0}
801 | platformRequiresReadableAssets: 0
802 | virtualTexturingSupportEnabled: 0
803 | insecureHttpOption: 0
804 |
--------------------------------------------------------------------------------
/ProjectSettings/ProjectVersion.txt:
--------------------------------------------------------------------------------
1 | m_EditorVersion: 6000.0.43f1
2 | m_EditorVersionWithRevision: 6000.0.43f1 (97272b72f107)
3 |
--------------------------------------------------------------------------------
/ProjectSettings/QualitySettings.asset:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!47 &1
4 | QualitySettings:
5 | m_ObjectHideFlags: 0
6 | serializedVersion: 5
7 | m_CurrentQuality: 5
8 | m_QualitySettings:
9 | - serializedVersion: 2
10 | name: Very Low
11 | pixelLightCount: 0
12 | shadows: 0
13 | shadowResolution: 0
14 | shadowProjection: 1
15 | shadowCascades: 1
16 | shadowDistance: 15
17 | shadowNearPlaneOffset: 3
18 | shadowCascade2Split: 0.33333334
19 | shadowCascade4Split: {x: 0.06666667, y: 0.2, z: 0.46666667}
20 | shadowmaskMode: 0
21 | skinWeights: 1
22 | textureQuality: 1
23 | anisotropicTextures: 0
24 | antiAliasing: 0
25 | softParticles: 0
26 | softVegetation: 0
27 | realtimeReflectionProbes: 0
28 | billboardsFaceCameraPosition: 0
29 | vSyncCount: 0
30 | lodBias: 0.3
31 | maximumLODLevel: 0
32 | streamingMipmapsActive: 0
33 | streamingMipmapsAddAllCameras: 1
34 | streamingMipmapsMemoryBudget: 512
35 | streamingMipmapsRenderersPerFrame: 512
36 | streamingMipmapsMaxLevelReduction: 2
37 | streamingMipmapsMaxFileIORequests: 1024
38 | particleRaycastBudget: 4
39 | asyncUploadTimeSlice: 2
40 | asyncUploadBufferSize: 16
41 | asyncUploadPersistentBuffer: 1
42 | resolutionScalingFixedDPIFactor: 1
43 | customRenderPipeline: {fileID: 0}
44 | excludedTargetPlatforms: []
45 | - serializedVersion: 2
46 | name: Low
47 | pixelLightCount: 0
48 | shadows: 0
49 | shadowResolution: 0
50 | shadowProjection: 1
51 | shadowCascades: 1
52 | shadowDistance: 20
53 | shadowNearPlaneOffset: 3
54 | shadowCascade2Split: 0.33333334
55 | shadowCascade4Split: {x: 0.06666667, y: 0.2, z: 0.46666667}
56 | shadowmaskMode: 0
57 | skinWeights: 2
58 | textureQuality: 0
59 | anisotropicTextures: 0
60 | antiAliasing: 0
61 | softParticles: 0
62 | softVegetation: 0
63 | realtimeReflectionProbes: 0
64 | billboardsFaceCameraPosition: 0
65 | vSyncCount: 0
66 | lodBias: 0.4
67 | maximumLODLevel: 0
68 | streamingMipmapsActive: 0
69 | streamingMipmapsAddAllCameras: 1
70 | streamingMipmapsMemoryBudget: 512
71 | streamingMipmapsRenderersPerFrame: 512
72 | streamingMipmapsMaxLevelReduction: 2
73 | streamingMipmapsMaxFileIORequests: 1024
74 | particleRaycastBudget: 16
75 | asyncUploadTimeSlice: 2
76 | asyncUploadBufferSize: 16
77 | asyncUploadPersistentBuffer: 1
78 | resolutionScalingFixedDPIFactor: 1
79 | customRenderPipeline: {fileID: 0}
80 | excludedTargetPlatforms: []
81 | - serializedVersion: 2
82 | name: Medium
83 | pixelLightCount: 1
84 | shadows: 1
85 | shadowResolution: 0
86 | shadowProjection: 1
87 | shadowCascades: 1
88 | shadowDistance: 20
89 | shadowNearPlaneOffset: 3
90 | shadowCascade2Split: 0.33333334
91 | shadowCascade4Split: {x: 0.06666667, y: 0.2, z: 0.46666667}
92 | shadowmaskMode: 0
93 | skinWeights: 2
94 | textureQuality: 0
95 | anisotropicTextures: 1
96 | antiAliasing: 0
97 | softParticles: 0
98 | softVegetation: 0
99 | realtimeReflectionProbes: 0
100 | billboardsFaceCameraPosition: 0
101 | vSyncCount: 1
102 | lodBias: 0.7
103 | maximumLODLevel: 0
104 | streamingMipmapsActive: 0
105 | streamingMipmapsAddAllCameras: 1
106 | streamingMipmapsMemoryBudget: 512
107 | streamingMipmapsRenderersPerFrame: 512
108 | streamingMipmapsMaxLevelReduction: 2
109 | streamingMipmapsMaxFileIORequests: 1024
110 | particleRaycastBudget: 64
111 | asyncUploadTimeSlice: 2
112 | asyncUploadBufferSize: 16
113 | asyncUploadPersistentBuffer: 1
114 | resolutionScalingFixedDPIFactor: 1
115 | customRenderPipeline: {fileID: 0}
116 | excludedTargetPlatforms: []
117 | - serializedVersion: 2
118 | name: High
119 | pixelLightCount: 2
120 | shadows: 2
121 | shadowResolution: 1
122 | shadowProjection: 1
123 | shadowCascades: 2
124 | shadowDistance: 40
125 | shadowNearPlaneOffset: 3
126 | shadowCascade2Split: 0.33333334
127 | shadowCascade4Split: {x: 0.06666667, y: 0.2, z: 0.46666667}
128 | shadowmaskMode: 1
129 | skinWeights: 2
130 | textureQuality: 0
131 | anisotropicTextures: 1
132 | antiAliasing: 0
133 | softParticles: 0
134 | softVegetation: 1
135 | realtimeReflectionProbes: 1
136 | billboardsFaceCameraPosition: 1
137 | vSyncCount: 1
138 | lodBias: 1
139 | maximumLODLevel: 0
140 | streamingMipmapsActive: 0
141 | streamingMipmapsAddAllCameras: 1
142 | streamingMipmapsMemoryBudget: 512
143 | streamingMipmapsRenderersPerFrame: 512
144 | streamingMipmapsMaxLevelReduction: 2
145 | streamingMipmapsMaxFileIORequests: 1024
146 | particleRaycastBudget: 256
147 | asyncUploadTimeSlice: 2
148 | asyncUploadBufferSize: 16
149 | asyncUploadPersistentBuffer: 1
150 | resolutionScalingFixedDPIFactor: 1
151 | customRenderPipeline: {fileID: 0}
152 | excludedTargetPlatforms: []
153 | - serializedVersion: 2
154 | name: Very High
155 | pixelLightCount: 3
156 | shadows: 2
157 | shadowResolution: 2
158 | shadowProjection: 1
159 | shadowCascades: 2
160 | shadowDistance: 70
161 | shadowNearPlaneOffset: 3
162 | shadowCascade2Split: 0.33333334
163 | shadowCascade4Split: {x: 0.06666667, y: 0.2, z: 0.46666667}
164 | shadowmaskMode: 1
165 | skinWeights: 4
166 | textureQuality: 0
167 | anisotropicTextures: 2
168 | antiAliasing: 2
169 | softParticles: 1
170 | softVegetation: 1
171 | realtimeReflectionProbes: 1
172 | billboardsFaceCameraPosition: 1
173 | vSyncCount: 1
174 | lodBias: 1.5
175 | maximumLODLevel: 0
176 | streamingMipmapsActive: 0
177 | streamingMipmapsAddAllCameras: 1
178 | streamingMipmapsMemoryBudget: 512
179 | streamingMipmapsRenderersPerFrame: 512
180 | streamingMipmapsMaxLevelReduction: 2
181 | streamingMipmapsMaxFileIORequests: 1024
182 | particleRaycastBudget: 1024
183 | asyncUploadTimeSlice: 2
184 | asyncUploadBufferSize: 16
185 | asyncUploadPersistentBuffer: 1
186 | resolutionScalingFixedDPIFactor: 1
187 | customRenderPipeline: {fileID: 0}
188 | excludedTargetPlatforms: []
189 | - serializedVersion: 2
190 | name: Ultra
191 | pixelLightCount: 4
192 | shadows: 2
193 | shadowResolution: 2
194 | shadowProjection: 1
195 | shadowCascades: 4
196 | shadowDistance: 150
197 | shadowNearPlaneOffset: 3
198 | shadowCascade2Split: 0.33333334
199 | shadowCascade4Split: {x: 0.06666667, y: 0.2, z: 0.46666667}
200 | shadowmaskMode: 1
201 | skinWeights: 255
202 | textureQuality: 0
203 | anisotropicTextures: 2
204 | antiAliasing: 2
205 | softParticles: 1
206 | softVegetation: 1
207 | realtimeReflectionProbes: 1
208 | billboardsFaceCameraPosition: 1
209 | vSyncCount: 1
210 | lodBias: 2
211 | maximumLODLevel: 0
212 | streamingMipmapsActive: 0
213 | streamingMipmapsAddAllCameras: 1
214 | streamingMipmapsMemoryBudget: 512
215 | streamingMipmapsRenderersPerFrame: 512
216 | streamingMipmapsMaxLevelReduction: 2
217 | streamingMipmapsMaxFileIORequests: 1024
218 | particleRaycastBudget: 4096
219 | asyncUploadTimeSlice: 2
220 | asyncUploadBufferSize: 16
221 | asyncUploadPersistentBuffer: 1
222 | resolutionScalingFixedDPIFactor: 1
223 | customRenderPipeline: {fileID: 0}
224 | excludedTargetPlatforms: []
225 | m_PerPlatformDefaultQuality:
226 | Android: 2
227 | Lumin: 5
228 | GameCoreScarlett: 5
229 | GameCoreXboxOne: 5
230 | Nintendo Switch: 5
231 | PS4: 5
232 | PS5: 5
233 | Stadia: 5
234 | Standalone: 5
235 | WebGL: 3
236 | Windows Store Apps: 5
237 | XboxOne: 5
238 | iPhone: 2
239 | tvOS: 2
240 |
--------------------------------------------------------------------------------
/ProjectSettings/SceneTemplateSettings.json:
--------------------------------------------------------------------------------
1 | {
2 | "templatePinStates": [],
3 | "dependencyTypeInfos": [
4 | {
5 | "userAdded": false,
6 | "type": "UnityEngine.AnimationClip",
7 | "defaultInstantiationMode": 0
8 | },
9 | {
10 | "userAdded": false,
11 | "type": "UnityEditor.Animations.AnimatorController",
12 | "defaultInstantiationMode": 0
13 | },
14 | {
15 | "userAdded": false,
16 | "type": "UnityEngine.AnimatorOverrideController",
17 | "defaultInstantiationMode": 0
18 | },
19 | {
20 | "userAdded": false,
21 | "type": "UnityEditor.Audio.AudioMixerController",
22 | "defaultInstantiationMode": 0
23 | },
24 | {
25 | "userAdded": false,
26 | "type": "UnityEngine.ComputeShader",
27 | "defaultInstantiationMode": 1
28 | },
29 | {
30 | "userAdded": false,
31 | "type": "UnityEngine.Cubemap",
32 | "defaultInstantiationMode": 0
33 | },
34 | {
35 | "userAdded": false,
36 | "type": "UnityEngine.GameObject",
37 | "defaultInstantiationMode": 0
38 | },
39 | {
40 | "userAdded": false,
41 | "type": "UnityEditor.LightingDataAsset",
42 | "defaultInstantiationMode": 0
43 | },
44 | {
45 | "userAdded": false,
46 | "type": "UnityEngine.LightingSettings",
47 | "defaultInstantiationMode": 0
48 | },
49 | {
50 | "userAdded": false,
51 | "type": "UnityEngine.Material",
52 | "defaultInstantiationMode": 0
53 | },
54 | {
55 | "userAdded": false,
56 | "type": "UnityEditor.MonoScript",
57 | "defaultInstantiationMode": 1
58 | },
59 | {
60 | "userAdded": false,
61 | "type": "UnityEngine.PhysicMaterial",
62 | "defaultInstantiationMode": 0
63 | },
64 | {
65 | "userAdded": false,
66 | "type": "UnityEngine.PhysicsMaterial2D",
67 | "defaultInstantiationMode": 0
68 | },
69 | {
70 | "userAdded": false,
71 | "type": "UnityEngine.Rendering.PostProcessing.PostProcessProfile",
72 | "defaultInstantiationMode": 0
73 | },
74 | {
75 | "userAdded": false,
76 | "type": "UnityEngine.Rendering.PostProcessing.PostProcessResources",
77 | "defaultInstantiationMode": 0
78 | },
79 | {
80 | "userAdded": false,
81 | "type": "UnityEngine.Rendering.VolumeProfile",
82 | "defaultInstantiationMode": 0
83 | },
84 | {
85 | "userAdded": false,
86 | "type": "UnityEditor.SceneAsset",
87 | "defaultInstantiationMode": 1
88 | },
89 | {
90 | "userAdded": false,
91 | "type": "UnityEngine.Shader",
92 | "defaultInstantiationMode": 1
93 | },
94 | {
95 | "userAdded": false,
96 | "type": "UnityEngine.ShaderVariantCollection",
97 | "defaultInstantiationMode": 1
98 | },
99 | {
100 | "userAdded": false,
101 | "type": "UnityEngine.Texture",
102 | "defaultInstantiationMode": 0
103 | },
104 | {
105 | "userAdded": false,
106 | "type": "UnityEngine.Texture2D",
107 | "defaultInstantiationMode": 0
108 | },
109 | {
110 | "userAdded": false,
111 | "type": "UnityEngine.Timeline.TimelineAsset",
112 | "defaultInstantiationMode": 0
113 | }
114 | ],
115 | "defaultDependencyTypeInfo": {
116 | "userAdded": false,
117 | "type": "",
118 | "defaultInstantiationMode": 1
119 | },
120 | "newSceneOverride": 0
121 | }
--------------------------------------------------------------------------------
/ProjectSettings/TagManager.asset:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!78 &1
4 | TagManager:
5 | serializedVersion: 2
6 | tags: []
7 | layers:
8 | - Default
9 | - TransparentFX
10 | - Ignore Raycast
11 | -
12 | - Water
13 | - UI
14 | -
15 | -
16 | -
17 | -
18 | -
19 | -
20 | -
21 | -
22 | -
23 | -
24 | -
25 | -
26 | -
27 | -
28 | -
29 | -
30 | -
31 | -
32 | -
33 | -
34 | -
35 | -
36 | -
37 | -
38 | -
39 | -
40 | m_SortingLayers:
41 | - name: Default
42 | uniqueID: 0
43 | locked: 0
44 |
--------------------------------------------------------------------------------
/ProjectSettings/TimeManager.asset:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!5 &1
4 | TimeManager:
5 | m_ObjectHideFlags: 0
6 | Fixed Timestep: 0.02
7 | Maximum Allowed Timestep: 0.33333334
8 | m_TimeScale: 1
9 | Maximum Particle Timestep: 0.03
10 |
--------------------------------------------------------------------------------
/ProjectSettings/UnityConnectSettings.asset:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!310 &1
4 | UnityConnectSettings:
5 | m_ObjectHideFlags: 0
6 | serializedVersion: 1
7 | m_Enabled: 0
8 | m_TestMode: 0
9 | m_EventOldUrl: https://api.uca.cloud.unity3d.com/v1/events
10 | m_EventUrl: https://cdp.cloud.unity3d.com/v1/events
11 | m_ConfigUrl: https://config.uca.cloud.unity3d.com
12 | m_DashboardUrl: https://dashboard.unity3d.com
13 | m_TestInitMode: 0
14 | CrashReportingSettings:
15 | m_EventUrl: https://perf-events.cloud.unity3d.com
16 | m_Enabled: 0
17 | m_LogBufferSize: 10
18 | m_CaptureEditorExceptions: 1
19 | UnityPurchasingSettings:
20 | m_Enabled: 0
21 | m_TestMode: 0
22 | UnityAnalyticsSettings:
23 | m_Enabled: 0
24 | m_TestMode: 0
25 | m_InitializeOnStartup: 1
26 | m_PackageRequiringCoreStatsPresent: 0
27 | UnityAdsSettings:
28 | m_Enabled: 0
29 | m_InitializeOnStartup: 1
30 | m_TestMode: 0
31 | m_IosGameId:
32 | m_AndroidGameId:
33 | m_GameIds: {}
34 | m_GameId:
35 | PerformanceReportingSettings:
36 | m_Enabled: 0
37 |
--------------------------------------------------------------------------------
/ProjectSettings/VFXManager.asset:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!937362698 &1
4 | VFXManager:
5 | m_ObjectHideFlags: 0
6 | m_IndirectShader: {fileID: 0}
7 | m_CopyBufferShader: {fileID: 0}
8 | m_SortShader: {fileID: 0}
9 | m_StripUpdateShader: {fileID: 0}
10 | m_RenderPipeSettingsPath:
11 | m_FixedTimeStep: 0.016666668
12 | m_MaxDeltaTime: 0.05
13 | m_CompiledVersion: 0
14 | m_RuntimeVersion: 0
15 |
--------------------------------------------------------------------------------
/ProjectSettings/VersionControlSettings.asset:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!890905787 &1
4 | VersionControlSettings:
5 | m_ObjectHideFlags: 0
6 | m_Mode: Visible Meta Files
7 | m_CollabEditorSettings:
8 | inProgressEnabled: 1
9 |
--------------------------------------------------------------------------------
/ProjectSettings/XRSettings.asset:
--------------------------------------------------------------------------------
1 | {
2 | "m_SettingKeys": [
3 | "VR Device Disabled",
4 | "VR Device User Alert"
5 | ],
6 | "m_SettingValues": [
7 | "False",
8 | "False"
9 | ]
10 | }
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 |
2 | * [UniMasterLinker](#unimasterlinker)
3 | * [Import Method](#import-method)
4 | * [How to Use](#how-to-use)
5 | * [Supported Platforms](#supported-platforms)
6 | * [License](#license)
7 |
8 |
9 | # UniMasterLinker
10 | UniMasterLinker is a Unity editor extension that synchronizes master data between Google Sheets and Unity and automatically generates API classes.
11 |
12 | Designed for game development in Unity, it offers management of master data and generation of API classes using pure C#.
13 |
14 | [日本語版ReadMeはこちら](README_JP.md)
15 |
16 | ## Import Method
17 | This library is provided as a UnityPackage. Download the latest `.unitypackage` file from [the release page](https://github.com/MidraLab/uni-master-liker/releases) and import it into your project.
18 |
19 | ## How to Use
20 | 1. Copy Master Data for Google Sheet from [MasterSheet](https://docs.google.com/spreadsheets/d/1KezPMdD_5XwFlmQP_AXGpJaX7qSl1HaiPVhfu0qiP48/edit?usp=sharing) to your Google Drive.
21 |
22 | 2. Use the editor window to retrieve data from Google Sheets and dynamically generate API classes. A sample usage is as follows:
23 |
24 | ```csharp
25 | [MenuItem("UniMasterLinker/Update API Classes")]
26 | private static async void UpdateAPIClassFile()
27 | {
28 | // Add implementation here
29 | }
30 | ```
31 |
32 | ## Supported Platforms
33 | All platforms supported by Unity are supported, as UniMasterLinker is written in pure C#.
34 |
35 | ## License
36 | [MIT License](https://github.com/MidraLab/uni-master-liker/blob/main/LICENSE)
--------------------------------------------------------------------------------
/README_JP.md:
--------------------------------------------------------------------------------
1 |
2 | * [UniMasterLinker](#unimasterlinker)
3 | * [インポート方法](#インポート方法)
4 | * [使い方](#使い方)
5 | * [サポートされるプラットフォーム](#サポートされるプラットフォーム)
6 | * [ライセンス](#ライセンス)
7 |
8 |
9 | # UniMasterLinker
10 | UniMasterLinkerは、Google SheetsとUnity間でマスターデータを同期し、自動的にAPIクラスを生成するUnityエディタ拡張機能です。
11 |
12 | Unityでのゲーム開発用に設計されており、純粋なC#を使用してマスターデータの管理とAPIクラスの生成を行います。
13 |
14 | ## インポート方法
15 | このライブラリはUnityPackageとして提供されています。[the release page](https://github.com/MidraLab/uni-master-liker/releases) から最新の.unitypackageファイルをダウンロードし、プロジェクトにインポートしてください。
16 |
17 | ## 使い方
18 | Google Driveに[MasterSheet](https://docs.google.com/spreadsheets/d/1KezPMdD_5XwFlmQP_AXGpJaX7qSl1HaiPVhfu0qiP48/edit?usp=sharing)からGoogle Sheetのマスターデータをコピーします。
19 |
20 | エディタウィンドウを使用してGoogle Sheetsからデータを取得し、動的にAPIクラスを生成します。使用例は以下の通りです:
21 |
22 | ```csharp
23 | [MenuItem("UniMasterLinker/Update API Classes")]
24 | private static async void UpdateAPIClassFile()
25 | {
26 | // 実装をここに追加
27 | }
28 | ```
29 |
30 | ## サポートされるプラットフォーム
31 | UniMasterLinkerは純粋なC#で書かれているため、Unityがサポートするすべてのプラットフォームがサポートされています。
32 |
33 | ## ライセンス
34 | [MIT License](https://github.com/MidraLab/uni-master-liker/blob/main/LICENSE)
--------------------------------------------------------------------------------