├── Assets
├── HotUpdateDlls
│ ├── MetaDataDllToLoad.txt
│ ├── HotUpdateDll
│ │ ├── GamePlay.dll.bytes
│ │ └── GamePlay.dll.bytes.meta
│ ├── MetaDataDll
│ │ ├── mscorlib.dll.bytes
│ │ └── mscorlib.dll.bytes.meta
│ ├── MetaDataDllToLoad.txt.meta
│ ├── HotUpdateDll.meta
│ ├── MetaDataDll.meta
│ ├── RuntimeInitializeOnLoadMethodCollection.txt.meta
│ └── RuntimeInitializeOnLoadMethodCollection.txt
├── TextMesh Pro
│ ├── Resources
│ │ ├── LineBreaking Leading Characters.txt
│ │ ├── LineBreaking Following Characters.txt
│ │ ├── TMP Settings.asset.meta
│ │ ├── Sprite Assets
│ │ │ └── EmojiOne.asset.meta
│ │ ├── LineBreaking Following Characters.txt.meta
│ │ ├── LineBreaking Leading Characters.txt.meta
│ │ ├── Fonts & Materials
│ │ │ ├── LiberationSans SDF.asset.meta
│ │ │ ├── LiberationSans SDF - Outline.mat.meta
│ │ │ ├── LiberationSans SDF - Drop Shadow.mat.meta
│ │ │ ├── LiberationSans SDF - Fallback.asset.meta
│ │ │ ├── LiberationSans SDF - Outline.mat
│ │ │ └── LiberationSans SDF - Drop Shadow.mat
│ │ ├── Sprite Assets.meta
│ │ ├── Style Sheets.meta
│ │ ├── Style Sheets
│ │ │ ├── Default Style Sheet.asset.meta
│ │ │ └── Default Style Sheet.asset
│ │ ├── Fonts & Materials.meta
│ │ └── TMP Settings.asset
│ ├── Sprites
│ │ ├── EmojiOne.png
│ │ ├── EmojiOne Attribution.txt.meta
│ │ ├── EmojiOne Attribution.txt
│ │ ├── EmojiOne.json.meta
│ │ └── EmojiOne.json
│ ├── Fonts
│ │ ├── LiberationSans.ttf
│ │ ├── LiberationSans - OFL.txt.meta
│ │ ├── LiberationSans.ttf.meta
│ │ └── LiberationSans - OFL.txt
│ ├── Documentation
│ │ ├── TextMesh Pro User Guide 2016.pdf
│ │ └── TextMesh Pro User Guide 2016.pdf.meta
│ ├── Fonts.meta
│ ├── Resources.meta
│ ├── Shaders.meta
│ ├── Sprites.meta
│ ├── Documentation.meta
│ └── Shaders
│ │ ├── TMP_SDF.shader.meta
│ │ ├── TMPro.cginc.meta
│ │ ├── TMP_Bitmap.shader.meta
│ │ ├── TMP_SDF SSD.shader.meta
│ │ ├── TMP_Sprite.shader.meta
│ │ ├── TMPro_Mobile.cginc.meta
│ │ ├── TMPro_Surface.cginc.meta
│ │ ├── TMP_Bitmap-Mobile.shader.meta
│ │ ├── TMP_SDF Overlay.shader.meta
│ │ ├── TMP_SDF-Mobile SSD.shader.meta
│ │ ├── TMP_SDF-Mobile.shader.meta
│ │ ├── TMP_SDF-Surface.shader.meta
│ │ ├── TMPro_Properties.cginc.meta
│ │ ├── TMP_Bitmap-Custom-Atlas.shader.meta
│ │ ├── TMP_SDF-Mobile Masking.shader.meta
│ │ ├── TMP_SDF-Mobile Overlay.shader.meta
│ │ ├── TMP_SDF-Surface-Mobile.shader.meta
│ │ ├── TMPro.cginc
│ │ ├── TMPro_Properties.cginc
│ │ ├── TMP_Sprite.shader
│ │ ├── TMP_SDF-Mobile SSD.shader
│ │ ├── TMPro_Surface.cginc
│ │ ├── TMP_Bitmap.shader
│ │ ├── TMP_SDF-Surface-Mobile.shader
│ │ ├── TMP_Bitmap-Custom-Atlas.shader
│ │ ├── TMP_Bitmap-Mobile.shader
│ │ ├── TMP_SDF-Surface.shader
│ │ ├── TMPro_Mobile.cginc
│ │ └── TMP_SDF-Mobile Overlay.shader
├── Prefabs.meta
├── Prefabs
│ ├── TestPrefab.prefab.meta
│ └── TestPrefab.prefab
├── Scenes.meta
├── Scenes
│ ├── GameLauncher.unity.meta
│ ├── GameScenes.meta
│ └── GameScenes
│ │ └── StartScene.unity.meta
├── Scripts.meta
├── AddressableAssetsData
│ ├── link.xml.meta
│ ├── Android.meta
│ ├── Windows.meta
│ ├── AssetGroups.meta
│ ├── DataBuilders.meta
│ ├── AssetGroupTemplates.meta
│ ├── AssetGroups
│ │ ├── Schemas.meta
│ │ ├── Prefabs.asset.meta
│ │ ├── Scenes.asset.meta
│ │ ├── Built In Data.asset.meta
│ │ ├── HotUpdateDlls.asset.meta
│ │ ├── Default Local Group.asset.meta
│ │ ├── ScriptableObjects.asset.meta
│ │ ├── Schemas
│ │ │ ├── Prefabs_BundledAssetGroupSchema.asset.meta
│ │ │ ├── Prefabs_ContentUpdateGroupSchema.asset.meta
│ │ │ ├── Scenes_BundledAssetGroupSchema.asset.meta
│ │ │ ├── Scenes_ContentUpdateGroupSchema.asset.meta
│ │ │ ├── Built In Data_PlayerDataGroupSchema.asset.meta
│ │ │ ├── HotUpdateDlls_BundledAssetGroupSchema.asset.meta
│ │ │ ├── HotUpdateDlls_ContentUpdateGroupSchema.asset.meta
│ │ │ ├── ScriptableObjects_BundledAssetGroupSchema.asset.meta
│ │ │ ├── ScriptableObjects_ContentUpdateGroupSchema.asset.meta
│ │ │ ├── Default Local Group_BundledAssetGroupSchema.asset.meta
│ │ │ ├── Default Local Group_ContentUpdateGroupSchema.asset.meta
│ │ │ ├── Scenes_ContentUpdateGroupSchema.asset
│ │ │ ├── Prefabs_ContentUpdateGroupSchema.asset
│ │ │ ├── HotUpdateDlls_ContentUpdateGroupSchema.asset
│ │ │ ├── Default Local Group_ContentUpdateGroupSchema.asset
│ │ │ ├── ScriptableObjects_ContentUpdateGroupSchema.asset
│ │ │ ├── Built In Data_PlayerDataGroupSchema.asset
│ │ │ ├── Prefabs_BundledAssetGroupSchema.asset
│ │ │ ├── Scenes_BundledAssetGroupSchema.asset
│ │ │ ├── HotUpdateDlls_BundledAssetGroupSchema.asset
│ │ │ ├── ScriptableObjects_BundledAssetGroupSchema.asset
│ │ │ └── Default Local Group_BundledAssetGroupSchema.asset
│ │ ├── Default Local Group.asset
│ │ ├── Prefabs.asset
│ │ ├── Scenes.asset
│ │ ├── HotUpdateDlls.asset
│ │ ├── ScriptableObjects.asset
│ │ └── Built In Data.asset
│ ├── DefaultObject.asset.meta
│ ├── AddressableAssetSettings.asset.meta
│ ├── ProfileDataSourceSettings.asset.meta
│ ├── DataBuilders
│ │ ├── BuildScriptFastMode.asset.meta
│ │ ├── BuildScriptPackedMode.asset.meta
│ │ ├── BuildScriptVirtualMode.asset.meta
│ │ ├── BuildScriptPackedPlayMode.asset.meta
│ │ ├── BuildScriptFastMode.asset
│ │ ├── BuildScriptPackedMode.asset
│ │ ├── BuildScriptVirtualMode.asset
│ │ └── BuildScriptPackedPlayMode.asset
│ ├── AssetGroupTemplates
│ │ ├── Packed Assets.asset.meta
│ │ └── Packed Assets.asset
│ ├── DefaultObject.asset
│ ├── ProfileDataSourceSettings.asset
│ ├── link.xml
│ └── AddressableAssetSettings.asset
├── Scripts
│ ├── AOT.meta
│ ├── Editor.meta
│ ├── GamePlay.meta
│ ├── GamePlay
│ │ ├── GamePlay.asmdef.meta
│ │ ├── GameMain.cs
│ │ ├── GameMain.cs.meta
│ │ ├── GameTest.cs.meta
│ │ ├── PrefabTest.cs.meta
│ │ ├── ConsoleToScreen.cs.meta
│ │ ├── ScriptableObjectTest.cs.meta
│ │ ├── PrefabTest.cs
│ │ ├── GamePlay.asmdef
│ │ ├── ScriptableObjectTest.cs
│ │ ├── ConsoleToScreen.cs
│ │ └── GameTest.cs
│ ├── Editor
│ │ ├── BuildTool.meta
│ │ └── BuildTool
│ │ │ ├── AddressablePlayerBuilder.cs.meta
│ │ │ ├── HybridHotUpdateEditorHelper.cs.meta
│ │ │ └── AddressablePlayerBuilder.cs
│ └── AOT
│ │ ├── GameLauncher.cs.meta
│ │ ├── IAssetManager.cs.meta
│ │ ├── UIVersionUpdate.cs.meta
│ │ ├── HybridCLROptimizer.cs.meta
│ │ ├── AddressableAssetManager.cs.meta
│ │ ├── HybridCLROptimizer.cs
│ │ ├── IAssetManager.cs
│ │ ├── UIVersionUpdate.cs
│ │ └── AddressableAssetManager.cs
├── TextMesh Pro.meta
├── HotUpdateDlls.meta
├── ScriptableObjects.meta
├── AddressableAssetsData.meta
└── ScriptableObjects
│ ├── ScriptableObjectTest.asset.meta
│ └── ScriptableObjectTest.asset
├── ProjectSettings
├── ProjectVersion.txt
├── Packages
│ └── com.unity.testtools.codecoverage
│ │ └── Settings.json
├── ClusterInputManager.asset
├── PresetManager.asset
├── XRSettings.asset
├── VersionControlSettings.asset
├── TimeManager.asset
├── VFXManager.asset
├── ScriptableBuildPipeline.json
├── EditorBuildSettings.asset
├── AudioManager.asset
├── TagManager.asset
├── EditorSettings.asset
├── PackageManagerSettings.asset
├── UnityConnectSettings.asset
├── HybridCLRSettings.asset
├── DynamicsManager.asset
├── MemorySettings.asset
├── NavMeshAreas.asset
├── Physics2DSettings.asset
├── GraphicsSettings.asset
├── SceneTemplateSettings.json
└── InputManager.asset
├── LICENSE
├── README.md
├── .gitignore
└── Packages
└── manifest.json
/Assets/HotUpdateDlls/MetaDataDllToLoad.txt:
--------------------------------------------------------------------------------
1 | mscorlib.dll
--------------------------------------------------------------------------------
/Assets/TextMesh Pro/Resources/LineBreaking Leading Characters.txt:
--------------------------------------------------------------------------------
1 | ([{〔〈《「『【〘〖〝‘“⦅«$—…‥〳〴〵\[({£¥"々〇$¥₩ #
--------------------------------------------------------------------------------
/ProjectSettings/ProjectVersion.txt:
--------------------------------------------------------------------------------
1 | m_EditorVersion: 2022.3.17f1c1
2 | m_EditorVersionWithRevision: 2022.3.17f1c1 (a01dafa986ec)
3 |
--------------------------------------------------------------------------------
/Assets/TextMesh Pro/Sprites/EmojiOne.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/H2ojunjun/HybridCLR_Addressables_Demo/HEAD/Assets/TextMesh Pro/Sprites/EmojiOne.png
--------------------------------------------------------------------------------
/ProjectSettings/Packages/com.unity.testtools.codecoverage/Settings.json:
--------------------------------------------------------------------------------
1 | {
2 | "m_Dictionary": {
3 | "m_DictionaryValues": []
4 | }
5 | }
--------------------------------------------------------------------------------
/Assets/TextMesh Pro/Fonts/LiberationSans.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/H2ojunjun/HybridCLR_Addressables_Demo/HEAD/Assets/TextMesh Pro/Fonts/LiberationSans.ttf
--------------------------------------------------------------------------------
/Assets/TextMesh Pro/Resources/LineBreaking Following Characters.txt:
--------------------------------------------------------------------------------
1 | )]}〕〉》」』】〙〗〟’”⦆»ヽヾーァィゥェォッャュョヮヵヶぁぃぅぇぉっゃゅょゎゕゖㇰㇱㇲㇳㇴㇵㇶㇷㇸㇹㇺㇻㇼㇽㇾㇿ々〻‐゠–〜?!‼⁇⁈⁉・、%,.:;。!?]):;=}¢°"†‡℃〆%,.
--------------------------------------------------------------------------------
/Assets/HotUpdateDlls/HotUpdateDll/GamePlay.dll.bytes:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/H2ojunjun/HybridCLR_Addressables_Demo/HEAD/Assets/HotUpdateDlls/HotUpdateDll/GamePlay.dll.bytes
--------------------------------------------------------------------------------
/Assets/HotUpdateDlls/MetaDataDll/mscorlib.dll.bytes:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/H2ojunjun/HybridCLR_Addressables_Demo/HEAD/Assets/HotUpdateDlls/MetaDataDll/mscorlib.dll.bytes
--------------------------------------------------------------------------------
/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 |
--------------------------------------------------------------------------------
/Assets/TextMesh Pro/Documentation/TextMesh Pro User Guide 2016.pdf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/H2ojunjun/HybridCLR_Addressables_Demo/HEAD/Assets/TextMesh Pro/Documentation/TextMesh Pro User Guide 2016.pdf
--------------------------------------------------------------------------------
/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 |
--------------------------------------------------------------------------------
/Assets/Prefabs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 57d413224f85865409159aabcab87912
3 | folderAsset: yes
4 | DefaultImporter:
5 | externalObjects: {}
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/Assets/Prefabs/TestPrefab.prefab.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 22e2978c367efdf40a344fe2275aeeff
3 | PrefabImporter:
4 | externalObjects: {}
5 | userData:
6 | assetBundleName:
7 | assetBundleVariant:
8 |
--------------------------------------------------------------------------------
/Assets/Scenes.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: d51e47b7844d9fc4a86d9f56d2cb7b1e
3 | folderAsset: yes
4 | DefaultImporter:
5 | externalObjects: {}
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/Assets/Scenes/GameLauncher.unity.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 6f13775b1f080e74bb2cfb10632a0f9a
3 | DefaultImporter:
4 | externalObjects: {}
5 | userData:
6 | assetBundleName:
7 | assetBundleVariant:
8 |
--------------------------------------------------------------------------------
/Assets/Scripts.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: c54c7f4eae3a52646804b2d914f3d816
3 | folderAsset: yes
4 | DefaultImporter:
5 | externalObjects: {}
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/Assets/AddressableAssetsData/link.xml.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 474789a0e67f51e458c7cf2070434554
3 | TextScriptImporter:
4 | externalObjects: {}
5 | userData:
6 | assetBundleName:
7 | assetBundleVariant:
8 |
--------------------------------------------------------------------------------
/Assets/Scripts/AOT.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 942f59b351136b040ac6b22ea6b9066b
3 | folderAsset: yes
4 | DefaultImporter:
5 | externalObjects: {}
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/Assets/TextMesh Pro.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: f54d1bd14bd3ca042bd867b519fee8cc
3 | folderAsset: yes
4 | DefaultImporter:
5 | externalObjects: {}
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/Assets/HotUpdateDlls.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: a8e08f896b07a42458ed8624ab7e48f5
3 | folderAsset: yes
4 | DefaultImporter:
5 | externalObjects: {}
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/Assets/HotUpdateDlls/MetaDataDllToLoad.txt.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: ce1f60ee128fbf646aae196d86974fdc
3 | TextScriptImporter:
4 | externalObjects: {}
5 | userData:
6 | assetBundleName:
7 | assetBundleVariant:
8 |
--------------------------------------------------------------------------------
/Assets/Scenes/GameScenes.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: af70d7437d91893478ae1c508c23f9b5
3 | folderAsset: yes
4 | DefaultImporter:
5 | externalObjects: {}
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/Assets/Scenes/GameScenes/StartScene.unity.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 0b83412aa313fe943bfa77d72827e0bd
3 | DefaultImporter:
4 | externalObjects: {}
5 | userData:
6 | assetBundleName:
7 | assetBundleVariant:
8 |
--------------------------------------------------------------------------------
/Assets/ScriptableObjects.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 1f2d68d71c7a00a4cb006befb7e2f1ad
3 | folderAsset: yes
4 | DefaultImporter:
5 | externalObjects: {}
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/Assets/Scripts/Editor.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 76b1a51ea032ab04a80f0c060edb4d1a
3 | folderAsset: yes
4 | DefaultImporter:
5 | externalObjects: {}
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/Assets/Scripts/GamePlay.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: f69599439db5c3e4e8f3f26b31e168d1
3 | folderAsset: yes
4 | DefaultImporter:
5 | externalObjects: {}
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/Assets/AddressableAssetsData.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: f6be6fb63bacb3e4ab5aeecf02eb2ce0
3 | folderAsset: yes
4 | DefaultImporter:
5 | externalObjects: {}
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/Assets/Scripts/GamePlay/GamePlay.asmdef.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 0f1e7d1a8cfacac45bae537439f74db5
3 | AssemblyDefinitionImporter:
4 | externalObjects: {}
5 | userData:
6 | assetBundleName:
7 | assetBundleVariant:
8 |
--------------------------------------------------------------------------------
/Assets/TextMesh Pro/Fonts.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 6ab70aee4d56447429c680537fbf93ed
3 | folderAsset: yes
4 | DefaultImporter:
5 | externalObjects: {}
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/Assets/TextMesh Pro/Resources.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 243e06394e614e5d99fab26083b707fa
3 | folderAsset: yes
4 | DefaultImporter:
5 | externalObjects: {}
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/Assets/TextMesh Pro/Shaders.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: e9f693669af91aa45ad615fc681ed29f
3 | folderAsset: yes
4 | DefaultImporter:
5 | externalObjects: {}
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/Assets/TextMesh Pro/Sprites.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: d0603b6d5186471b96c778c3949c7ce2
3 | folderAsset: yes
4 | DefaultImporter:
5 | externalObjects: {}
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
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 | }
--------------------------------------------------------------------------------
/Assets/HotUpdateDlls/HotUpdateDll.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: f1212fb6467423e40bb5401576e14a6e
3 | folderAsset: yes
4 | DefaultImporter:
5 | externalObjects: {}
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/Assets/HotUpdateDlls/HotUpdateDll/GamePlay.dll.bytes.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 5f3497b173d101c4eb08a0f4b065979c
3 | TextScriptImporter:
4 | externalObjects: {}
5 | userData:
6 | assetBundleName:
7 | assetBundleVariant:
8 |
--------------------------------------------------------------------------------
/Assets/HotUpdateDlls/MetaDataDll.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 3fac8cd5d58adb34f82e3b54da87d0ed
3 | folderAsset: yes
4 | DefaultImporter:
5 | externalObjects: {}
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/Assets/HotUpdateDlls/MetaDataDll/mscorlib.dll.bytes.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: c0c1f7c3dfdb2ba4393f0f3c81c983f7
3 | TextScriptImporter:
4 | externalObjects: {}
5 | userData:
6 | assetBundleName:
7 | assetBundleVariant:
8 |
--------------------------------------------------------------------------------
/Assets/Scripts/Editor/BuildTool.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 2f3d83f7fd46b8147b99f6a362e0c9f2
3 | folderAsset: yes
4 | DefaultImporter:
5 | externalObjects: {}
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/Assets/TextMesh Pro/Documentation.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 8e7e8f5a82a3a134e91c54efd2274ea9
3 | folderAsset: yes
4 | DefaultImporter:
5 | externalObjects: {}
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/Assets/TextMesh Pro/Sprites/EmojiOne Attribution.txt.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 381dcb09d5029d14897e55f98031fca5
3 | TextScriptImporter:
4 | externalObjects: {}
5 | userData:
6 | assetBundleName:
7 | assetBundleVariant:
8 |
--------------------------------------------------------------------------------
/Assets/AddressableAssetsData/Android.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 9ddffe1df6d9b10489b6d20e57166cb6
3 | folderAsset: yes
4 | DefaultImporter:
5 | externalObjects: {}
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/Assets/AddressableAssetsData/Windows.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 3c049bea26de82842a11c69e49189c05
3 | folderAsset: yes
4 | DefaultImporter:
5 | externalObjects: {}
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/Assets/TextMesh Pro/Sprites/EmojiOne Attribution.txt:
--------------------------------------------------------------------------------
1 | This sample of beautiful emojis are provided by EmojiOne https://www.emojione.com/
2 |
3 | Please visit their website to view the complete set of their emojis and review their licensing terms.
--------------------------------------------------------------------------------
/Assets/AddressableAssetsData/AssetGroups.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 4cb4bc0cf7176d643afe645d090467c0
3 | folderAsset: yes
4 | DefaultImporter:
5 | externalObjects: {}
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/Assets/AddressableAssetsData/DataBuilders.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 0bbe9c6265ced274c83c893b46b90820
3 | folderAsset: yes
4 | DefaultImporter:
5 | externalObjects: {}
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/Assets/AddressableAssetsData/AssetGroupTemplates.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: deb20a3b5fbc11548961e172cb8e7c5a
3 | folderAsset: yes
4 | DefaultImporter:
5 | externalObjects: {}
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/Assets/AddressableAssetsData/AssetGroups/Schemas.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 0d19ff4f8861c84418774f531b89e25e
3 | folderAsset: yes
4 | DefaultImporter:
5 | externalObjects: {}
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/Assets/HotUpdateDlls/RuntimeInitializeOnLoadMethodCollection.txt.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: bfb2625f555e4e347befcb46b751c300
3 | TextScriptImporter:
4 | externalObjects: {}
5 | userData:
6 | assetBundleName:
7 | assetBundleVariant:
8 |
--------------------------------------------------------------------------------
/Assets/TextMesh Pro/Documentation/TextMesh Pro User Guide 2016.pdf.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 1b8d251f9af63b746bf2f7ffe00ebb9b
3 | DefaultImporter:
4 | externalObjects: {}
5 | userData:
6 | assetBundleName:
7 | assetBundleVariant:
8 |
--------------------------------------------------------------------------------
/Assets/TextMesh Pro/Sprites/EmojiOne.json.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 8f05276190cf498a8153f6cbe761d4e6
3 | timeCreated: 1480316860
4 | licenseType: Pro
5 | TextScriptImporter:
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/Assets/TextMesh Pro/Fonts/LiberationSans - OFL.txt.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 6e59c59b81ab47f9b6ec5781fa725d2c
3 | timeCreated: 1484171296
4 | licenseType: Pro
5 | TextScriptImporter:
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/Assets/TextMesh Pro/Resources/TMP Settings.asset.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 3f5b5dff67a942289a9defa416b206f3
3 | timeCreated: 1436653997
4 | licenseType: Pro
5 | NativeFormatImporter:
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/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 |
--------------------------------------------------------------------------------
/Assets/AddressableAssetsData/DefaultObject.asset.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 913ff6f873b7d114ba8b9cbb5cd6cf1d
3 | NativeFormatImporter:
4 | externalObjects: {}
5 | mainObjectFileID: 11400000
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/Assets/ScriptableObjects/ScriptableObjectTest.asset.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: ff485794c6f1f4a4aa995d31b4a958e3
3 | NativeFormatImporter:
4 | externalObjects: {}
5 | mainObjectFileID: 11400000
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/Assets/TextMesh Pro/Resources/Sprite Assets/EmojiOne.asset.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: c41005c129ba4d66911b75229fd70b45
3 | timeCreated: 1480316912
4 | licenseType: Pro
5 | NativeFormatImporter:
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/Assets/AddressableAssetsData/AssetGroups/Prefabs.asset.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: ad4d7e6a96510c443b8b11df2a272bc7
3 | NativeFormatImporter:
4 | externalObjects: {}
5 | mainObjectFileID: 11400000
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/Assets/AddressableAssetsData/AssetGroups/Scenes.asset.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 716876498c20bc64d8056094d016ad6c
3 | NativeFormatImporter:
4 | externalObjects: {}
5 | mainObjectFileID: 11400000
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/Assets/TextMesh Pro/Resources/LineBreaking Following Characters.txt.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: fade42e8bc714b018fac513c043d323b
3 | timeCreated: 1425440388
4 | licenseType: Store
5 | TextScriptImporter:
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/Assets/TextMesh Pro/Resources/LineBreaking Leading Characters.txt.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: d82c1b31c7e74239bff1220585707d2b
3 | timeCreated: 1425440388
4 | licenseType: Store
5 | TextScriptImporter:
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/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 |
--------------------------------------------------------------------------------
/Assets/AddressableAssetsData/AddressableAssetSettings.asset.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: bd8c88330daf27744b9edd695f056cc7
3 | NativeFormatImporter:
4 | externalObjects: {}
5 | mainObjectFileID: 11400000
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/Assets/AddressableAssetsData/AssetGroups/Built In Data.asset.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 9d78453da8e12664fba55cf35ee5bda0
3 | NativeFormatImporter:
4 | externalObjects: {}
5 | mainObjectFileID: 11400000
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/Assets/AddressableAssetsData/AssetGroups/HotUpdateDlls.asset.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 17d50e87eb4fe154c94acbcd26497abf
3 | NativeFormatImporter:
4 | externalObjects: {}
5 | mainObjectFileID: 11400000
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/Assets/AddressableAssetsData/ProfileDataSourceSettings.asset.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 9fb08d061f239654ab429163831387d0
3 | NativeFormatImporter:
4 | externalObjects: {}
5 | mainObjectFileID: 11400000
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/Assets/TextMesh Pro/Resources/Fonts & Materials/LiberationSans SDF.asset.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 8f586378b4e144a9851e7b34d9b748ee
3 | timeCreated: 1484171803
4 | licenseType: Pro
5 | NativeFormatImporter:
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/Assets/TextMesh Pro/Resources/Sprite Assets.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 512a49d95c0c4332bdd98131869c23c9
3 | folderAsset: yes
4 | timeCreated: 1441876896
5 | licenseType: Pro
6 | DefaultImporter:
7 | userData:
8 | assetBundleName:
9 | assetBundleVariant:
10 |
--------------------------------------------------------------------------------
/Assets/TextMesh Pro/Resources/Style Sheets.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 4aecb92fff08436c8303b10eab8da368
3 | folderAsset: yes
4 | timeCreated: 1441876950
5 | licenseType: Pro
6 | DefaultImporter:
7 | userData:
8 | assetBundleName:
9 | assetBundleVariant:
10 |
--------------------------------------------------------------------------------
/Assets/TextMesh Pro/Resources/Style Sheets/Default Style Sheet.asset.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: f952c082cb03451daed3ee968ac6c63e
3 | timeCreated: 1432805430
4 | licenseType: Store
5 | NativeFormatImporter:
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/Assets/AddressableAssetsData/AssetGroups/Default Local Group.asset.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: ae8e521b851919941b4d4b1d21790a4d
3 | NativeFormatImporter:
4 | externalObjects: {}
5 | mainObjectFileID: 11400000
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/Assets/AddressableAssetsData/AssetGroups/ScriptableObjects.asset.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: ecd41f4ea64cb2247ab9f5e62251a173
3 | NativeFormatImporter:
4 | externalObjects: {}
5 | mainObjectFileID: 11400000
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/Assets/AddressableAssetsData/DataBuilders/BuildScriptFastMode.asset.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 2c248dd9f822e1d46a7b3029d85f2298
3 | NativeFormatImporter:
4 | externalObjects: {}
5 | mainObjectFileID: 11400000
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/Assets/TextMesh Pro/Resources/Fonts & Materials.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 731f1baa9d144a9897cb1d341c2092b8
3 | folderAsset: yes
4 | timeCreated: 1442040525
5 | licenseType: Pro
6 | DefaultImporter:
7 | userData:
8 | assetBundleName:
9 | assetBundleVariant:
10 |
--------------------------------------------------------------------------------
/Assets/AddressableAssetsData/AssetGroupTemplates/Packed Assets.asset.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: aef5faedacab3b249b82b3b31767cf61
3 | NativeFormatImporter:
4 | externalObjects: {}
5 | mainObjectFileID: 11400000
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/Assets/AddressableAssetsData/DataBuilders/BuildScriptPackedMode.asset.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 1a8ad183ec4cc1f4a8a3c5de367d86d0
3 | NativeFormatImporter:
4 | externalObjects: {}
5 | mainObjectFileID: 11400000
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/Assets/AddressableAssetsData/DataBuilders/BuildScriptVirtualMode.asset.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 037f4625ad13ec04ab97024d4aa009b1
3 | NativeFormatImporter:
4 | externalObjects: {}
5 | mainObjectFileID: 11400000
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/Assets/TextMesh Pro/Resources/Fonts & Materials/LiberationSans SDF - Outline.mat.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 79459efec17a4d00a321bdcc27bbc385
3 | timeCreated: 1484172856
4 | licenseType: Pro
5 | NativeFormatImporter:
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/Assets/TextMesh Pro/Shaders/TMP_SDF.shader.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 68e6db2ebdc24f95958faec2be5558d6
3 | ShaderImporter:
4 | externalObjects: {}
5 | defaultTextures: []
6 | nonModifiableTextures: []
7 | userData:
8 | assetBundleName:
9 | assetBundleVariant:
10 |
--------------------------------------------------------------------------------
/Assets/TextMesh Pro/Shaders/TMPro.cginc.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 407bc68d299748449bbf7f48ee690f8d
3 | ShaderImporter:
4 | externalObjects: {}
5 | defaultTextures: []
6 | nonModifiableTextures: []
7 | userData:
8 | assetBundleName:
9 | assetBundleVariant:
10 |
--------------------------------------------------------------------------------
/Assets/AddressableAssetsData/DataBuilders/BuildScriptPackedPlayMode.asset.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: e78dcc1ad3fa7994db61473c2057cf50
3 | NativeFormatImporter:
4 | externalObjects: {}
5 | mainObjectFileID: 11400000
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/Assets/TextMesh Pro/Resources/Fonts & Materials/LiberationSans SDF - Drop Shadow.mat.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: e73a58f6e2794ae7b1b7e50b7fb811b0
3 | timeCreated: 1484172806
4 | licenseType: Pro
5 | NativeFormatImporter:
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/Assets/TextMesh Pro/Resources/Fonts & Materials/LiberationSans SDF - Fallback.asset.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 2e498d1c8094910479dc3e1b768306a4
3 | timeCreated: 1484171803
4 | licenseType: Pro
5 | NativeFormatImporter:
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/Assets/TextMesh Pro/Shaders/TMP_Bitmap.shader.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 128e987d567d4e2c824d754223b3f3b0
3 | ShaderImporter:
4 | externalObjects: {}
5 | defaultTextures: []
6 | nonModifiableTextures: []
7 | userData:
8 | assetBundleName:
9 | assetBundleVariant:
10 |
--------------------------------------------------------------------------------
/Assets/TextMesh Pro/Shaders/TMP_SDF SSD.shader.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 14eb328de4b8eb245bb7cea29e4ac00b
3 | ShaderImporter:
4 | externalObjects: {}
5 | defaultTextures: []
6 | nonModifiableTextures: []
7 | userData:
8 | assetBundleName:
9 | assetBundleVariant:
10 |
--------------------------------------------------------------------------------
/Assets/TextMesh Pro/Shaders/TMP_Sprite.shader.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: cf81c85f95fe47e1a27f6ae460cf182c
3 | ShaderImporter:
4 | externalObjects: {}
5 | defaultTextures: []
6 | nonModifiableTextures: []
7 | userData:
8 | assetBundleName:
9 | assetBundleVariant:
10 |
--------------------------------------------------------------------------------
/Assets/TextMesh Pro/Shaders/TMPro_Mobile.cginc.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: c334973cef89a9840b0b0c507e0377ab
3 | ShaderImporter:
4 | externalObjects: {}
5 | defaultTextures: []
6 | nonModifiableTextures: []
7 | userData:
8 | assetBundleName:
9 | assetBundleVariant:
10 |
--------------------------------------------------------------------------------
/Assets/TextMesh Pro/Shaders/TMPro_Surface.cginc.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: d930090c0cd643c7b55f19a38538c162
3 | ShaderImporter:
4 | externalObjects: {}
5 | defaultTextures: []
6 | nonModifiableTextures: []
7 | userData:
8 | assetBundleName:
9 | assetBundleVariant:
10 |
--------------------------------------------------------------------------------
/Assets/TextMesh Pro/Shaders/TMP_Bitmap-Mobile.shader.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 1e3b057af24249748ff873be7fafee47
3 | ShaderImporter:
4 | externalObjects: {}
5 | defaultTextures: []
6 | nonModifiableTextures: []
7 | userData:
8 | assetBundleName:
9 | assetBundleVariant:
10 |
--------------------------------------------------------------------------------
/Assets/TextMesh Pro/Shaders/TMP_SDF Overlay.shader.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: dd89cf5b9246416f84610a006f916af7
3 | ShaderImporter:
4 | externalObjects: {}
5 | defaultTextures: []
6 | nonModifiableTextures: []
7 | userData:
8 | assetBundleName:
9 | assetBundleVariant:
10 |
--------------------------------------------------------------------------------
/Assets/TextMesh Pro/Shaders/TMP_SDF-Mobile SSD.shader.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: c8d12adcee749c344b8117cf7c7eb912
3 | ShaderImporter:
4 | externalObjects: {}
5 | defaultTextures: []
6 | nonModifiableTextures: []
7 | userData:
8 | assetBundleName:
9 | assetBundleVariant:
10 |
--------------------------------------------------------------------------------
/Assets/TextMesh Pro/Shaders/TMP_SDF-Mobile.shader.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: fe393ace9b354375a9cb14cdbbc28be4
3 | ShaderImporter:
4 | externalObjects: {}
5 | defaultTextures: []
6 | nonModifiableTextures: []
7 | userData:
8 | assetBundleName:
9 | assetBundleVariant:
10 |
--------------------------------------------------------------------------------
/Assets/TextMesh Pro/Shaders/TMP_SDF-Surface.shader.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: f7ada0af4f174f0694ca6a487b8f543d
3 | ShaderImporter:
4 | externalObjects: {}
5 | defaultTextures: []
6 | nonModifiableTextures: []
7 | userData:
8 | assetBundleName:
9 | assetBundleVariant:
10 |
--------------------------------------------------------------------------------
/Assets/TextMesh Pro/Shaders/TMPro_Properties.cginc.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 3997e2241185407d80309a82f9148466
3 | ShaderImporter:
4 | externalObjects: {}
5 | defaultTextures: []
6 | nonModifiableTextures: []
7 | userData:
8 | assetBundleName:
9 | assetBundleVariant:
10 |
--------------------------------------------------------------------------------
/Assets/AddressableAssetsData/AssetGroups/Schemas/Prefabs_BundledAssetGroupSchema.asset.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 517feec065186b74e92277791762fa33
3 | NativeFormatImporter:
4 | externalObjects: {}
5 | mainObjectFileID: 11400000
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/Assets/AddressableAssetsData/AssetGroups/Schemas/Prefabs_ContentUpdateGroupSchema.asset.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 0627b0443e66ed84884e7019269beaf0
3 | NativeFormatImporter:
4 | externalObjects: {}
5 | mainObjectFileID: 11400000
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/Assets/AddressableAssetsData/AssetGroups/Schemas/Scenes_BundledAssetGroupSchema.asset.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 889d280582d9be84190be7d462adac07
3 | NativeFormatImporter:
4 | externalObjects: {}
5 | mainObjectFileID: 11400000
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/Assets/AddressableAssetsData/AssetGroups/Schemas/Scenes_ContentUpdateGroupSchema.asset.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: c1b9c66792c882241bf35c622553ea3c
3 | NativeFormatImporter:
4 | externalObjects: {}
5 | mainObjectFileID: 11400000
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/Assets/TextMesh Pro/Shaders/TMP_Bitmap-Custom-Atlas.shader.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 48bb5f55d8670e349b6e614913f9d910
3 | ShaderImporter:
4 | externalObjects: {}
5 | defaultTextures: []
6 | nonModifiableTextures: []
7 | userData:
8 | assetBundleName:
9 | assetBundleVariant:
10 |
--------------------------------------------------------------------------------
/Assets/TextMesh Pro/Shaders/TMP_SDF-Mobile Masking.shader.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: bc1ede39bf3643ee8e493720e4259791
3 | ShaderImporter:
4 | externalObjects: {}
5 | defaultTextures: []
6 | nonModifiableTextures: []
7 | userData:
8 | assetBundleName:
9 | assetBundleVariant:
10 |
--------------------------------------------------------------------------------
/Assets/TextMesh Pro/Shaders/TMP_SDF-Mobile Overlay.shader.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: a02a7d8c237544f1962732b55a9aebf1
3 | ShaderImporter:
4 | externalObjects: {}
5 | defaultTextures: []
6 | nonModifiableTextures: []
7 | userData:
8 | assetBundleName:
9 | assetBundleVariant:
10 |
--------------------------------------------------------------------------------
/Assets/TextMesh Pro/Shaders/TMP_SDF-Surface-Mobile.shader.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 85187c2149c549c5b33f0cdb02836b17
3 | ShaderImporter:
4 | externalObjects: {}
5 | defaultTextures: []
6 | nonModifiableTextures: []
7 | userData:
8 | assetBundleName:
9 | assetBundleVariant:
10 |
--------------------------------------------------------------------------------
/Assets/AddressableAssetsData/AssetGroups/Schemas/Built In Data_PlayerDataGroupSchema.asset.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 904a150c69ea09a46b3ffd9a43f10486
3 | NativeFormatImporter:
4 | externalObjects: {}
5 | mainObjectFileID: 11400000
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/Assets/AddressableAssetsData/AssetGroups/Schemas/HotUpdateDlls_BundledAssetGroupSchema.asset.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 3555b04f4133e8044ae8dd75f02ede26
3 | NativeFormatImporter:
4 | externalObjects: {}
5 | mainObjectFileID: 11400000
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/Assets/AddressableAssetsData/AssetGroups/Schemas/HotUpdateDlls_ContentUpdateGroupSchema.asset.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: c9bc7e2b70f487b41bb2ee4878d8769a
3 | NativeFormatImporter:
4 | externalObjects: {}
5 | mainObjectFileID: 11400000
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/Assets/AddressableAssetsData/AssetGroups/Schemas/ScriptableObjects_BundledAssetGroupSchema.asset.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 96e50c0c2919a7744ae5792801c199e4
3 | NativeFormatImporter:
4 | externalObjects: {}
5 | mainObjectFileID: 11400000
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/Assets/AddressableAssetsData/AssetGroups/Schemas/ScriptableObjects_ContentUpdateGroupSchema.asset.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: da3b06dbfaef24c42b49c2dc48b19129
3 | NativeFormatImporter:
4 | externalObjects: {}
5 | mainObjectFileID: 11400000
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/Assets/AddressableAssetsData/AssetGroups/Schemas/Default Local Group_BundledAssetGroupSchema.asset.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: f3d5d5fb29d105d45b061735678d76c1
3 | NativeFormatImporter:
4 | externalObjects: {}
5 | mainObjectFileID: 11400000
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/Assets/AddressableAssetsData/AssetGroups/Schemas/Default Local Group_ContentUpdateGroupSchema.asset.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 014cf63a435c9bd4cb39965b40757657
3 | NativeFormatImporter:
4 | externalObjects: {}
5 | mainObjectFileID: 11400000
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/Assets/Scripts/AOT/GameLauncher.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: b950f2f9b028b284e9a0d951b1553d0d
3 | MonoImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | defaultReferences: []
7 | executionOrder: 0
8 | icon: {instanceID: 0}
9 | userData:
10 | assetBundleName:
11 | assetBundleVariant:
12 |
--------------------------------------------------------------------------------
/Assets/Scripts/GamePlay/GameMain.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using UnityEngine;
3 |
4 | namespace GamePlay
5 | {
6 | public class GameMain : MonoBehaviour
7 | {
8 | private void Start()
9 | {
10 | Debug.Log("Hello World");
11 | GameTest.Instance.Test();
12 | }
13 | }
14 | }
--------------------------------------------------------------------------------
/Assets/Scripts/AOT/IAssetManager.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 44e2cdec5d3e3434995b89b6ac667df0
3 | MonoImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | defaultReferences: []
7 | executionOrder: 0
8 | icon: {instanceID: 0}
9 | userData:
10 | assetBundleName:
11 | assetBundleVariant:
12 |
--------------------------------------------------------------------------------
/Assets/Scripts/AOT/UIVersionUpdate.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 1936b83bef7ffe944bf1c43cd1a4d8fc
3 | MonoImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | defaultReferences: []
7 | executionOrder: 0
8 | icon: {instanceID: 0}
9 | userData:
10 | assetBundleName:
11 | assetBundleVariant:
12 |
--------------------------------------------------------------------------------
/Assets/Scripts/GamePlay/GameMain.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: aad7fba654e04c94bbfdf12206563b89
3 | MonoImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | defaultReferences: []
7 | executionOrder: 0
8 | icon: {instanceID: 0}
9 | userData:
10 | assetBundleName:
11 | assetBundleVariant:
12 |
--------------------------------------------------------------------------------
/Assets/Scripts/GamePlay/GameTest.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: ff7783798fa4b1a40ab686b5bd59d9b8
3 | MonoImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | defaultReferences: []
7 | executionOrder: 0
8 | icon: {instanceID: 0}
9 | userData:
10 | assetBundleName:
11 | assetBundleVariant:
12 |
--------------------------------------------------------------------------------
/Assets/Scripts/GamePlay/PrefabTest.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: f2598c63419cf9a4b86f608e37e59e24
3 | MonoImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | defaultReferences: []
7 | executionOrder: 0
8 | icon: {instanceID: 0}
9 | userData:
10 | assetBundleName:
11 | assetBundleVariant:
12 |
--------------------------------------------------------------------------------
/Assets/Scripts/AOT/HybridCLROptimizer.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 380b0b7225c2cb24fa0f3557aefc082f
3 | MonoImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | defaultReferences: []
7 | executionOrder: 0
8 | icon: {instanceID: 0}
9 | userData:
10 | assetBundleName:
11 | assetBundleVariant:
12 |
--------------------------------------------------------------------------------
/Assets/Scripts/GamePlay/ConsoleToScreen.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 1c93c900a59845c43bd9f72e5cb2a171
3 | MonoImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | defaultReferences: []
7 | executionOrder: 0
8 | icon: {instanceID: 0}
9 | userData:
10 | assetBundleName:
11 | assetBundleVariant:
12 |
--------------------------------------------------------------------------------
/Assets/Scripts/AOT/AddressableAssetManager.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: faff37003c3eda84090bea383c22135a
3 | MonoImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | defaultReferences: []
7 | executionOrder: 0
8 | icon: {instanceID: 0}
9 | userData:
10 | assetBundleName:
11 | assetBundleVariant:
12 |
--------------------------------------------------------------------------------
/Assets/Scripts/GamePlay/ScriptableObjectTest.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 69a25b413ecbebd448a80e2f8386e0a9
3 | MonoImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | defaultReferences: []
7 | executionOrder: 0
8 | icon: {instanceID: 0}
9 | userData:
10 | assetBundleName:
11 | assetBundleVariant:
12 |
--------------------------------------------------------------------------------
/Assets/Scripts/Editor/BuildTool/AddressablePlayerBuilder.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 3a827e0e9ab9b0448aec8886a53a43ea
3 | MonoImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | defaultReferences: []
7 | executionOrder: 0
8 | icon: {instanceID: 0}
9 | userData:
10 | assetBundleName:
11 | assetBundleVariant:
12 |
--------------------------------------------------------------------------------
/Assets/Scripts/Editor/BuildTool/HybridHotUpdateEditorHelper.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: d0fcbbb38699b6348a8cdaa44a52a774
3 | MonoImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | defaultReferences: []
7 | executionOrder: 0
8 | icon: {instanceID: 0}
9 | userData:
10 | assetBundleName:
11 | assetBundleVariant:
12 |
--------------------------------------------------------------------------------
/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 |
--------------------------------------------------------------------------------
/Assets/Scripts/GamePlay/PrefabTest.cs:
--------------------------------------------------------------------------------
1 | using System.Collections;
2 | using System.Collections.Generic;
3 | using UnityEngine;
4 |
5 | namespace GamePlay
6 | {
7 | public class PrefabTest : MonoBehaviour
8 | {
9 | void Start()
10 | {
11 | Debug.LogError("PrefabTest");
12 | }
13 |
14 | void Update()
15 | {
16 | }
17 | }
18 | }
--------------------------------------------------------------------------------
/ProjectSettings/ScriptableBuildPipeline.json:
--------------------------------------------------------------------------------
1 | {
2 | "useBuildCacheServer": false,
3 | "cacheServerHost": "",
4 | "cacheServerPort": 8126,
5 | "threadedArchiving": true,
6 | "logCacheMiss": false,
7 | "slimWriteResults": true,
8 | "maximumCacheSize": 20,
9 | "useDetailedBuildLog": false,
10 | "useV2Hasher": true,
11 | "fileIDHashSeed": 0,
12 | "prefabPackedHeaderSize": 2
13 | }
--------------------------------------------------------------------------------
/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: 1
9 | path: Assets/Scenes/GameLauncher.unity
10 | guid: 6f13775b1f080e74bb2cfb10632a0f9a
11 | m_configObjects:
12 | com.unity.addressableassets: {fileID: 11400000, guid: 913ff6f873b7d114ba8b9cbb5cd6cf1d, type: 2}
13 |
--------------------------------------------------------------------------------
/Assets/HotUpdateDlls/RuntimeInitializeOnLoadMethodCollection.txt:
--------------------------------------------------------------------------------
1 | {
2 | "methodExecutionInfos": [
3 | {
4 | "assemblyName": "GamePlay",
5 | "typeName": "GamePlay.GameTest",
6 | "methodName": "TestRuntimeInitialize2",
7 | "sequence": 2
8 | },
9 | {
10 | "assemblyName": "GamePlay",
11 | "typeName": "GamePlay.GameTest",
12 | "methodName": "TestRuntimeInitialize1",
13 | "sequence": 1
14 | }
15 | ]
16 | }
--------------------------------------------------------------------------------
/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: 1024
20 |
--------------------------------------------------------------------------------
/Assets/ScriptableObjects/ScriptableObjectTest.asset:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!114 &11400000
4 | MonoBehaviour:
5 | m_ObjectHideFlags: 0
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: 11500000, guid: 69a25b413ecbebd448a80e2f8386e0a9, type: 3}
13 | m_Name: ScriptableObjectTest
14 | m_EditorClassIdentifier:
15 | intValue: 6
16 |
--------------------------------------------------------------------------------
/Assets/Scripts/GamePlay/GamePlay.asmdef:
--------------------------------------------------------------------------------
1 | {
2 | "name": "GamePlay",
3 | "rootNamespace": "",
4 | "references": [
5 | "GUID:9e24947de15b9834991c9d8411ea37cf",
6 | "GUID:84651a3751eca9349aac36a66bba901b"
7 | ],
8 | "includePlatforms": [],
9 | "excludePlatforms": [],
10 | "allowUnsafeCode": false,
11 | "overrideReferences": false,
12 | "precompiledReferences": [],
13 | "autoReferenced": true,
14 | "defineConstraints": [],
15 | "versionDefines": [],
16 | "noEngineReferences": false
17 | }
--------------------------------------------------------------------------------
/Assets/TextMesh Pro/Fonts/LiberationSans.ttf.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: e3265ab4bf004d28a9537516768c1c75
3 | timeCreated: 1484171297
4 | licenseType: Pro
5 | TrueTypeFontImporter:
6 | serializedVersion: 2
7 | fontSize: 16
8 | forceTextureCase: -2
9 | characterSpacing: 1
10 | characterPadding: 0
11 | includeFontData: 1
12 | use2xBehaviour: 0
13 | fontNames: []
14 | fallbackFontReferences: []
15 | customCharacters:
16 | fontRenderingMode: 0
17 | userData:
18 | assetBundleName:
19 | assetBundleVariant:
20 |
--------------------------------------------------------------------------------
/Assets/AddressableAssetsData/DefaultObject.asset:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!114 &11400000
4 | MonoBehaviour:
5 | m_ObjectHideFlags: 0
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: 11500000, guid: 3a189bb168d8d90478a09ea08c2f3d72, type: 3}
13 | m_Name: DefaultObject
14 | m_EditorClassIdentifier:
15 | m_AddressableAssetSettingsGuid: bd8c88330daf27744b9edd695f056cc7
16 |
--------------------------------------------------------------------------------
/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 |
--------------------------------------------------------------------------------
/Assets/AddressableAssetsData/AssetGroups/Schemas/Scenes_ContentUpdateGroupSchema.asset:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!114 &11400000
4 | MonoBehaviour:
5 | m_ObjectHideFlags: 0
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: 11500000, guid: 5834b5087d578d24c926ce20cd31e6d6, type: 3}
13 | m_Name: Scenes_ContentUpdateGroupSchema
14 | m_EditorClassIdentifier:
15 | m_Group: {fileID: 11400000, guid: 716876498c20bc64d8056094d016ad6c, type: 2}
16 | m_StaticContent: 1
17 |
--------------------------------------------------------------------------------
/Assets/AddressableAssetsData/AssetGroups/Schemas/Prefabs_ContentUpdateGroupSchema.asset:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!114 &11400000
4 | MonoBehaviour:
5 | m_ObjectHideFlags: 0
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: 11500000, guid: 5834b5087d578d24c926ce20cd31e6d6, type: 3}
13 | m_Name: Prefabs_ContentUpdateGroupSchema
14 | m_EditorClassIdentifier:
15 | m_Group: {fileID: 11400000, guid: ad4d7e6a96510c443b8b11df2a272bc7, type: 2}
16 | m_StaticContent: 1
17 |
--------------------------------------------------------------------------------
/Assets/AddressableAssetsData/AssetGroups/Schemas/HotUpdateDlls_ContentUpdateGroupSchema.asset:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!114 &11400000
4 | MonoBehaviour:
5 | m_ObjectHideFlags: 0
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: 11500000, guid: 5834b5087d578d24c926ce20cd31e6d6, type: 3}
13 | m_Name: HotUpdateDlls_ContentUpdateGroupSchema
14 | m_EditorClassIdentifier:
15 | m_Group: {fileID: 11400000, guid: 17d50e87eb4fe154c94acbcd26497abf, type: 2}
16 | m_StaticContent: 1
17 |
--------------------------------------------------------------------------------
/Assets/AddressableAssetsData/AssetGroups/Schemas/Default Local Group_ContentUpdateGroupSchema.asset:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!114 &11400000
4 | MonoBehaviour:
5 | m_ObjectHideFlags: 0
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: 11500000, guid: 5834b5087d578d24c926ce20cd31e6d6, type: 3}
13 | m_Name: Default Local Group_ContentUpdateGroupSchema
14 | m_EditorClassIdentifier:
15 | m_Group: {fileID: 11400000, guid: ae8e521b851919941b4d4b1d21790a4d, type: 2}
16 | m_StaticContent: 1
17 |
--------------------------------------------------------------------------------
/Assets/AddressableAssetsData/AssetGroups/Schemas/ScriptableObjects_ContentUpdateGroupSchema.asset:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!114 &11400000
4 | MonoBehaviour:
5 | m_ObjectHideFlags: 0
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: 11500000, guid: 5834b5087d578d24c926ce20cd31e6d6, type: 3}
13 | m_Name: ScriptableObjects_ContentUpdateGroupSchema
14 | m_EditorClassIdentifier:
15 | m_Group: {fileID: 11400000, guid: ecd41f4ea64cb2247ab9f5e62251a173, type: 2}
16 | m_StaticContent: 0
17 |
--------------------------------------------------------------------------------
/Assets/AddressableAssetsData/AssetGroups/Schemas/Built In Data_PlayerDataGroupSchema.asset:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!114 &11400000
4 | MonoBehaviour:
5 | m_ObjectHideFlags: 0
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: 11500000, guid: b1487f5d688e4f94f828f879d599dbdc, type: 3}
13 | m_Name: Built In Data_PlayerDataGroupSchema
14 | m_EditorClassIdentifier:
15 | m_Group: {fileID: 11400000, guid: 9d78453da8e12664fba55cf35ee5bda0, type: 2}
16 | m_IncludeResourcesFolders: 1
17 | m_IncludeBuildSettingsScenes: 1
18 |
--------------------------------------------------------------------------------
/Assets/Scripts/AOT/HybridCLROptimizer.cs:
--------------------------------------------------------------------------------
1 | using UnityEngine;
2 |
3 | namespace AOT
4 | {
5 | ///
6 | /// 优化HybridCLR相关
7 | /// 频繁使用的泛型在此类中显示调用,然后走IL2CPP泛型共享机制,不走HybridCLR解释执行,性能更优
8 | /// 如果managed strip level开得高,可能会导致有的程序集即使在link文件中保留依然被裁掉,我们需要在代码中显示调用这些程序集中的某个函数
9 | ///
10 | public static class HybridCLROptimizer
11 | {
12 | public static void OptimizeHybridCLR()
13 | {
14 | OptimizeGenericType();
15 | CallMethodInAssemblyExplicitly();
16 | }
17 |
18 | //显式访问频繁使用的泛型
19 | private static void OptimizeGenericType()
20 | {
21 |
22 | }
23 |
24 | //显式调用其他程序集防止裁剪(目前还未发现在不访问某程序集任何代码,link.xml中有保留,程序集被裁剪的情况)
25 | private static void CallMethodInAssemblyExplicitly()
26 | {
27 |
28 | }
29 | }
30 | }
--------------------------------------------------------------------------------
/Assets/Scripts/GamePlay/ScriptableObjectTest.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using UnityEngine;
3 | using UnityEngine.AddressableAssets;
4 | using UnityEngine.Serialization;
5 | #if UNITY_EDITOR
6 | using UnityEditor;
7 | #endif
8 |
9 | namespace GamePlay
10 | {
11 | public class ScriptableObjectTest : ScriptableObject
12 | {
13 | public const string TEST_OBJ_PATH = "Assets/ScriptableObjects/ScriptableObjectTest.asset";
14 |
15 | public int intValue;
16 |
17 | #if UNITY_EDITOR
18 | [MenuItem("Test/CreateScriptableObjectTest")]
19 | private static void CreateAsset()
20 | {
21 | ScriptableObjectTest asset = CreateInstance();
22 | AssetDatabase.CreateAsset(asset, TEST_OBJ_PATH);
23 | AssetDatabase.SaveAssets();
24 | AssetDatabase.Refresh();
25 | }
26 |
27 | #endif
28 | }
29 | }
30 |
--------------------------------------------------------------------------------
/Assets/AddressableAssetsData/DataBuilders/BuildScriptFastMode.asset:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!114 &11400000
4 | MonoBehaviour:
5 | m_ObjectHideFlags: 0
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: 11500000, guid: 88d21199f5d473f4db36845f2318f180, type: 3}
13 | m_Name: BuildScriptFastMode
14 | m_EditorClassIdentifier:
15 | instanceProviderType:
16 | m_AssemblyName: Unity.ResourceManager, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null
17 | m_ClassName: UnityEngine.ResourceManagement.ResourceProviders.InstanceProvider
18 | sceneProviderType:
19 | m_AssemblyName: Unity.ResourceManager, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null
20 | m_ClassName: UnityEngine.ResourceManagement.ResourceProviders.SceneProvider
21 |
--------------------------------------------------------------------------------
/Assets/AddressableAssetsData/DataBuilders/BuildScriptPackedMode.asset:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!114 &11400000
4 | MonoBehaviour:
5 | m_ObjectHideFlags: 0
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: 11500000, guid: 3e2e0ffa088c91d41a086d0b8cb16bdc, type: 3}
13 | m_Name: BuildScriptPackedMode
14 | m_EditorClassIdentifier:
15 | instanceProviderType:
16 | m_AssemblyName: Unity.ResourceManager, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null
17 | m_ClassName: UnityEngine.ResourceManagement.ResourceProviders.InstanceProvider
18 | sceneProviderType:
19 | m_AssemblyName: Unity.ResourceManager, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null
20 | m_ClassName: UnityEngine.ResourceManagement.ResourceProviders.SceneProvider
21 |
--------------------------------------------------------------------------------
/Assets/AddressableAssetsData/DataBuilders/BuildScriptVirtualMode.asset:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!114 &11400000
4 | MonoBehaviour:
5 | m_ObjectHideFlags: 0
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: 11500000, guid: bb0e4994b34add1409fd8ccaf4a82de5, type: 3}
13 | m_Name: BuildScriptVirtualMode
14 | m_EditorClassIdentifier:
15 | instanceProviderType:
16 | m_AssemblyName: Unity.ResourceManager, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null
17 | m_ClassName: UnityEngine.ResourceManagement.ResourceProviders.InstanceProvider
18 | sceneProviderType:
19 | m_AssemblyName: Unity.ResourceManager, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null
20 | m_ClassName: UnityEngine.ResourceManagement.ResourceProviders.SceneProvider
21 |
--------------------------------------------------------------------------------
/Assets/AddressableAssetsData/DataBuilders/BuildScriptPackedPlayMode.asset:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!114 &11400000
4 | MonoBehaviour:
5 | m_ObjectHideFlags: 0
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: 11500000, guid: ad8c280d42ee0ed41a27db23b43dd2bf, type: 3}
13 | m_Name: BuildScriptPackedPlayMode
14 | m_EditorClassIdentifier:
15 | instanceProviderType:
16 | m_AssemblyName: Unity.ResourceManager, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null
17 | m_ClassName: UnityEngine.ResourceManagement.ResourceProviders.InstanceProvider
18 | sceneProviderType:
19 | m_AssemblyName: Unity.ResourceManager, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null
20 | m_ClassName: UnityEngine.ResourceManagement.ResourceProviders.SceneProvider
21 |
--------------------------------------------------------------------------------
/Assets/AddressableAssetsData/AssetGroups/Default Local Group.asset:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!114 &11400000
4 | MonoBehaviour:
5 | m_ObjectHideFlags: 0
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: 11500000, guid: bbb281ee3bf0b054c82ac2347e9e782c, type: 3}
13 | m_Name: Default Local Group
14 | m_EditorClassIdentifier:
15 | m_GroupName: Default Local Group
16 | m_Data:
17 | m_SerializedData: []
18 | m_GUID: 5473932cdf88acc4784c880de9aee665
19 | m_SerializeEntries: []
20 | m_ReadOnly: 0
21 | m_Settings: {fileID: 11400000, guid: bd8c88330daf27744b9edd695f056cc7, type: 2}
22 | m_SchemaSet:
23 | m_Schemas:
24 | - {fileID: 11400000, guid: 014cf63a435c9bd4cb39965b40757657, type: 2}
25 | - {fileID: 11400000, guid: f3d5d5fb29d105d45b061735678d76c1, type: 2}
26 |
--------------------------------------------------------------------------------
/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: 11
7 | m_ExternalVersionControlSupport: Visible Meta Files
8 | m_SerializationMode: 2
9 | m_LineEndingsForNewScripts: 0
10 | m_DefaultBehaviorMode: 0
11 | m_PrefabRegularEnvironment: {fileID: 0}
12 | m_PrefabUIEnvironment: {fileID: 0}
13 | m_SpritePackerMode: 0
14 | m_SpritePackerPaddingPower: 1
15 | m_EtcTextureCompressorBehavior: 1
16 | m_EtcTextureFastCompressor: 1
17 | m_EtcTextureNormalCompressor: 2
18 | m_EtcTextureBestCompressor: 4
19 | m_ProjectGenerationIncludedExtensions: txt;xml;fnt;cd;asmdef;rsp;asmref
20 | m_ProjectGenerationRootNamespace:
21 | m_CollabEditorSettings:
22 | inProgressEnabled: 1
23 | m_EnableTextureStreamingInEditMode: 1
24 | m_EnableTextureStreamingInPlayMode: 1
25 | m_AsyncShaderCompilation: 1
26 | m_EnterPlayModeOptionsEnabled: 0
27 | m_EnterPlayModeOptions: 3
28 | m_ShowLightmapResolutionOverlay: 1
29 | m_UseLegacyProbeSampleCount: 0
30 | m_SerializeInlineMappingsOnOneLine: 1
31 |
--------------------------------------------------------------------------------
/Assets/AddressableAssetsData/AssetGroups/Prefabs.asset:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!114 &11400000
4 | MonoBehaviour:
5 | m_ObjectHideFlags: 0
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: 11500000, guid: bbb281ee3bf0b054c82ac2347e9e782c, type: 3}
13 | m_Name: Prefabs
14 | m_EditorClassIdentifier:
15 | m_GroupName: Prefabs
16 | m_Data:
17 | m_SerializedData: []
18 | m_GUID: 0e5feb0d9e1d6e74a8d6e97bab8a470e
19 | m_SerializeEntries:
20 | - m_GUID: 57d413224f85865409159aabcab87912
21 | m_Address: Assets/Prefabs
22 | m_ReadOnly: 0
23 | m_SerializedLabels: []
24 | FlaggedDuringContentUpdateRestriction: 0
25 | m_ReadOnly: 0
26 | m_Settings: {fileID: 11400000, guid: bd8c88330daf27744b9edd695f056cc7, type: 2}
27 | m_SchemaSet:
28 | m_Schemas:
29 | - {fileID: 11400000, guid: 517feec065186b74e92277791762fa33, type: 2}
30 | - {fileID: 11400000, guid: 0627b0443e66ed84884e7019269beaf0, type: 2}
31 |
--------------------------------------------------------------------------------
/Assets/AddressableAssetsData/AssetGroups/Scenes.asset:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!114 &11400000
4 | MonoBehaviour:
5 | m_ObjectHideFlags: 0
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: 11500000, guid: bbb281ee3bf0b054c82ac2347e9e782c, type: 3}
13 | m_Name: Scenes
14 | m_EditorClassIdentifier:
15 | m_GroupName: Scenes
16 | m_Data:
17 | m_SerializedData: []
18 | m_GUID: 0762e3e0989ddd44ba9514c7abd5e999
19 | m_SerializeEntries:
20 | - m_GUID: af70d7437d91893478ae1c508c23f9b5
21 | m_Address: Assets/Scenes/GameScenes
22 | m_ReadOnly: 0
23 | m_SerializedLabels: []
24 | FlaggedDuringContentUpdateRestriction: 0
25 | m_ReadOnly: 0
26 | m_Settings: {fileID: 11400000, guid: bd8c88330daf27744b9edd695f056cc7, type: 2}
27 | m_SchemaSet:
28 | m_Schemas:
29 | - {fileID: 11400000, guid: 889d280582d9be84190be7d462adac07, type: 2}
30 | - {fileID: 11400000, guid: c1b9c66792c882241bf35c622553ea3c, type: 2}
31 |
--------------------------------------------------------------------------------
/LICENSE:
--------------------------------------------------------------------------------
1 | MIT License
2 |
3 | Copyright (c) 2024 langziwu
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 |
--------------------------------------------------------------------------------
/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.cn
25 | m_Scopes: []
26 | m_IsDefault: 1
27 | m_Capabilities: 7
28 | m_ConfigSource: 0
29 | m_UserSelectedRegistryName:
30 | m_UserAddingNewScopedRegistry: 0
31 | m_RegistryInfoDraft:
32 | m_Modified: 0
33 | m_ErrorMessage:
34 | m_UserModificationsInstanceId: -840
35 | m_OriginalInstanceId: -842
36 | m_LoadAssets: 0
37 |
--------------------------------------------------------------------------------
/Assets/AddressableAssetsData/AssetGroups/HotUpdateDlls.asset:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!114 &11400000
4 | MonoBehaviour:
5 | m_ObjectHideFlags: 0
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: 11500000, guid: bbb281ee3bf0b054c82ac2347e9e782c, type: 3}
13 | m_Name: HotUpdateDlls
14 | m_EditorClassIdentifier:
15 | m_GroupName: HotUpdateDlls
16 | m_Data:
17 | m_SerializedData: []
18 | m_GUID: 5540736018c335a4bb6dd1768fbb1b42
19 | m_SerializeEntries:
20 | - m_GUID: a8e08f896b07a42458ed8624ab7e48f5
21 | m_Address: Assets/HotUpdateDlls
22 | m_ReadOnly: 0
23 | m_SerializedLabels: []
24 | FlaggedDuringContentUpdateRestriction: 0
25 | m_ReadOnly: 0
26 | m_Settings: {fileID: 11400000, guid: bd8c88330daf27744b9edd695f056cc7, type: 2}
27 | m_SchemaSet:
28 | m_Schemas:
29 | - {fileID: 11400000, guid: 3555b04f4133e8044ae8dd75f02ede26, type: 2}
30 | - {fileID: 11400000, guid: c9bc7e2b70f487b41bb2ee4878d8769a, type: 2}
31 |
--------------------------------------------------------------------------------
/Assets/AddressableAssetsData/AssetGroups/ScriptableObjects.asset:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!114 &11400000
4 | MonoBehaviour:
5 | m_ObjectHideFlags: 0
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: 11500000, guid: bbb281ee3bf0b054c82ac2347e9e782c, type: 3}
13 | m_Name: ScriptableObjects
14 | m_EditorClassIdentifier:
15 | m_GroupName: ScriptableObjects
16 | m_Data:
17 | m_SerializedData: []
18 | m_GUID: 9ec1f5732abc6bd4b97bd3c3cb61b02b
19 | m_SerializeEntries:
20 | - m_GUID: 1f2d68d71c7a00a4cb006befb7e2f1ad
21 | m_Address: Assets/ScriptableObjects
22 | m_ReadOnly: 0
23 | m_SerializedLabels: []
24 | FlaggedDuringContentUpdateRestriction: 0
25 | m_ReadOnly: 0
26 | m_Settings: {fileID: 11400000, guid: bd8c88330daf27744b9edd695f056cc7, type: 2}
27 | m_SchemaSet:
28 | m_Schemas:
29 | - {fileID: 11400000, guid: 96e50c0c2919a7744ae5792801c199e4, type: 2}
30 | - {fileID: 11400000, guid: da3b06dbfaef24c42b49c2dc48b19129, type: 2}
31 |
--------------------------------------------------------------------------------
/Assets/Scripts/AOT/IAssetManager.cs:
--------------------------------------------------------------------------------
1 | using System.Collections;
2 |
3 | namespace AOT
4 | {
5 | //用于热更阶段的资源管理,游戏逻辑使用的资源加载不要使用这个接口
6 | public interface IAssetManager
7 | {
8 | public T LoadAsset(string path);
9 |
10 | public void UnloadAsset(UnityEngine.Object asset);
11 |
12 | public IEnumerator CheckUpdate();
13 |
14 | public bool HasContentToDownload { get; }
15 |
16 | public IEnumerator DownloadAssets();
17 |
18 | public DownloadInfo GetDownloadProgress();
19 |
20 | public IEnumerator AfterAllDllLoaded();
21 |
22 | public IEnumerator ChangeScene(string sceneName);
23 | }
24 |
25 | public struct DownloadInfo
26 | {
27 | //progress range:[0-1]
28 | public float progress;
29 | public float downloadedBytes;
30 | public float totalBytes;
31 |
32 | public DownloadInfo(float progress, float downloadedBytes, float totalBytes)
33 | {
34 | this.progress = progress;
35 | this.downloadedBytes = downloadedBytes;
36 | this.totalBytes = totalBytes;
37 | }
38 | }
39 | }
40 |
--------------------------------------------------------------------------------
/Assets/AddressableAssetsData/AssetGroups/Built In Data.asset:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!114 &11400000
4 | MonoBehaviour:
5 | m_ObjectHideFlags: 0
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: 11500000, guid: bbb281ee3bf0b054c82ac2347e9e782c, type: 3}
13 | m_Name: Built In Data
14 | m_EditorClassIdentifier:
15 | m_GroupName: Built In Data
16 | m_Data:
17 | m_SerializedData: []
18 | m_GUID: a4b4e4f4baf39834b8207df34fd2ccc5
19 | m_SerializeEntries:
20 | - m_GUID: Resources
21 | m_Address: Resources
22 | m_ReadOnly: 1
23 | m_SerializedLabels: []
24 | FlaggedDuringContentUpdateRestriction: 0
25 | - m_GUID: EditorSceneList
26 | m_Address: EditorSceneList
27 | m_ReadOnly: 1
28 | m_SerializedLabels: []
29 | FlaggedDuringContentUpdateRestriction: 0
30 | m_ReadOnly: 1
31 | m_Settings: {fileID: 11400000, guid: bd8c88330daf27744b9edd695f056cc7, type: 2}
32 | m_SchemaSet:
33 | m_Schemas:
34 | - {fileID: 11400000, guid: 904a150c69ea09a46b3ffd9a43f10486, type: 2}
35 |
--------------------------------------------------------------------------------
/Assets/AddressableAssetsData/ProfileDataSourceSettings.asset:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!114 &11400000
4 | MonoBehaviour:
5 | m_ObjectHideFlags: 0
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: 11500000, guid: 7e3976da977cb49238499ea3b4c237ae, type: 3}
13 | m_Name: ProfileDataSourceSettings
14 | m_EditorClassIdentifier:
15 | profileGroupTypes:
16 | - m_GroupTypePrefix: Built-In
17 | m_Variables:
18 | - m_Suffix: BuildPath
19 | m_Value: '[UnityEngine.AddressableAssets.Addressables.BuildPath]/[BuildTarget]'
20 | - m_Suffix: LoadPath
21 | m_Value: '{UnityEngine.AddressableAssets.Addressables.RuntimePath}/[BuildTarget]'
22 | - m_GroupTypePrefix: Editor Hosted
23 | m_Variables:
24 | - m_Suffix: BuildPath
25 | m_Value: ServerData/[BuildTarget]
26 | - m_Suffix: LoadPath
27 | m_Value: http://[PrivateIpAddress]:[HostingServicePort]
28 | environments: []
29 | currentEnvironment:
30 | id:
31 | projectId:
32 | projectGenesisId:
33 | name:
34 | isDefault: 0
35 |
--------------------------------------------------------------------------------
/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: 1
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_CNEventUrl: https://cdp.cloud.unity.cn/v1/events
14 | m_CNConfigUrl: https://cdp.cloud.unity.cn/config
15 | m_TestInitMode: 0
16 | CrashReportingSettings:
17 | m_EventUrl: https://perf-events.cloud.unity.cn
18 | m_Enabled: 0
19 | m_LogBufferSize: 10
20 | m_CaptureEditorExceptions: 1
21 | UnityPurchasingSettings:
22 | m_Enabled: 0
23 | m_TestMode: 0
24 | UnityAnalyticsSettings:
25 | m_Enabled: 1
26 | m_TestMode: 0
27 | m_InitializeOnStartup: 1
28 | m_PackageRequiringCoreStatsPresent: 0
29 | UnityAdsSettings:
30 | m_Enabled: 0
31 | m_InitializeOnStartup: 1
32 | m_TestMode: 0
33 | m_IosGameId:
34 | m_AndroidGameId:
35 | m_GameIds: {}
36 | m_GameId:
37 | PerformanceReportingSettings:
38 | m_Enabled: 0
39 |
--------------------------------------------------------------------------------
/ProjectSettings/HybridCLRSettings.asset:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!114 &1
4 | MonoBehaviour:
5 | m_ObjectHideFlags: 0
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: 11500000, guid: e189374413a3f00468e49d51d8b27a09, type: 3}
13 | m_Name:
14 | m_EditorClassIdentifier:
15 | enable: 1
16 | useGlobalIl2cpp: 0
17 | hybridclrRepoURL: https://gitee.com/focus-creative-games/hybridclr
18 | il2cppPlusRepoURL: https://gitee.com/focus-creative-games/il2cpp_plus
19 | hotUpdateAssemblyDefinitions:
20 | - {fileID: 5897886265953266890, guid: 0f1e7d1a8cfacac45bae537439f74db5, type: 3}
21 | hotUpdateAssemblies: []
22 | preserveHotUpdateAssemblies: []
23 | hotUpdateDllCompileOutputRootDir: HybridCLRData/HotUpdateDlls
24 | externalHotUpdateAssembliyDirs: []
25 | strippedAOTDllOutputRootDir: HybridCLRData/AssembliesPostIl2CppStrip
26 | patchAOTAssemblies: []
27 | outputLinkFile: HybridCLRGenerate/link.xml
28 | outputAOTGenericReferenceFile: HybridCLRGenerate/AOTGenericReferences.cs
29 | maxGenericReferenceIteration: 10
30 | maxMethodBridgeGenericIteration: 10
31 |
--------------------------------------------------------------------------------
/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: 11
7 | m_Gravity: {x: 0, y: -9.81, z: 0}
8 | m_DefaultMaterial: {fileID: 0}
9 | m_BounceThreshold: 2
10 | m_SleepThreshold: 0.005
11 | m_DefaultContactOffset: 0.01
12 | m_DefaultSolverIterations: 6
13 | m_DefaultSolverVelocityIterations: 1
14 | m_QueriesHitBackfaces: 0
15 | m_QueriesHitTriggers: 1
16 | m_EnableAdaptiveForce: 0
17 | m_ClothInterCollisionDistance: 0
18 | m_ClothInterCollisionStiffness: 0
19 | m_ContactsGeneration: 1
20 | m_LayerCollisionMatrix: ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
21 | m_AutoSimulation: 1
22 | m_AutoSyncTransforms: 0
23 | m_ReuseCollisionCallbacks: 1
24 | m_ClothInterCollisionSettingsToggle: 0
25 | m_ContactPairsMode: 0
26 | m_BroadphaseType: 0
27 | m_WorldBounds:
28 | m_Center: {x: 0, y: 0, z: 0}
29 | m_Extent: {x: 250, y: 250, z: 250}
30 | m_WorldSubdivisions: 8
31 | m_FrictionType: 0
32 | m_EnableEnhancedDeterminism: 0
33 | m_EnableUnifiedHeightmaps: 1
34 | m_DefaultMaxAngluarSpeed: 7
35 |
--------------------------------------------------------------------------------
/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 |
--------------------------------------------------------------------------------
/Assets/Prefabs/TestPrefab.prefab:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!1 &8446287320666538032
4 | GameObject:
5 | m_ObjectHideFlags: 0
6 | m_CorrespondingSourceObject: {fileID: 0}
7 | m_PrefabInstance: {fileID: 0}
8 | m_PrefabAsset: {fileID: 0}
9 | serializedVersion: 6
10 | m_Component:
11 | - component: {fileID: 6257284521276005702}
12 | - component: {fileID: 78910535914274664}
13 | m_Layer: 0
14 | m_Name: TestPrefab
15 | m_TagString: Untagged
16 | m_Icon: {fileID: 0}
17 | m_NavMeshLayer: 0
18 | m_StaticEditorFlags: 0
19 | m_IsActive: 1
20 | --- !u!4 &6257284521276005702
21 | Transform:
22 | m_ObjectHideFlags: 0
23 | m_CorrespondingSourceObject: {fileID: 0}
24 | m_PrefabInstance: {fileID: 0}
25 | m_PrefabAsset: {fileID: 0}
26 | m_GameObject: {fileID: 8446287320666538032}
27 | serializedVersion: 2
28 | m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
29 | m_LocalPosition: {x: 478.11328, y: 243.38252, z: -12.072998}
30 | m_LocalScale: {x: 1, y: 1, z: 1}
31 | m_ConstrainProportionsScale: 0
32 | m_Children: []
33 | m_Father: {fileID: 0}
34 | m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
35 | --- !u!114 &78910535914274664
36 | MonoBehaviour:
37 | m_ObjectHideFlags: 0
38 | m_CorrespondingSourceObject: {fileID: 0}
39 | m_PrefabInstance: {fileID: 0}
40 | m_PrefabAsset: {fileID: 0}
41 | m_GameObject: {fileID: 8446287320666538032}
42 | m_Enabled: 1
43 | m_EditorHideFlags: 0
44 | m_Script: {fileID: 11500000, guid: f2598c63419cf9a4b86f608e37e59e24, type: 3}
45 | m_Name:
46 | m_EditorClassIdentifier:
47 |
--------------------------------------------------------------------------------
/Assets/Scripts/AOT/UIVersionUpdate.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections;
3 | using System.Collections.Generic;
4 | using TMPro;
5 | using UnityEngine;
6 | using UnityEngine.UI;
7 |
8 | namespace AOT
9 | {
10 | public class UIVersionUpdate : MonoBehaviour
11 | {
12 | const string DOWNLOAD_FORMAT = "Progress:{0} {1}MB/{2}MB";
13 |
14 | private Slider _sliderProgress;
15 | private TMP_Text _textProgress;
16 |
17 | public Func GetDownloadProgress;
18 |
19 | private void Awake()
20 | {
21 | _sliderProgress = transform.Find("slider_progress").GetComponent();
22 | _textProgress = transform.Find("text_progress").GetComponent();
23 | }
24 |
25 | private void Update()
26 | {
27 | if (GetDownloadProgress != null)
28 | {
29 | var downloadInfo = GetDownloadProgress();
30 | _sliderProgress.value = downloadInfo.progress;
31 | _textProgress.text = string.Format(DOWNLOAD_FORMAT,downloadInfo.progress * 100,BytesToMB(downloadInfo.downloadedBytes), BytesToMB(downloadInfo.totalBytes));
32 | }
33 | }
34 |
35 | private float BytesToMB(float bytes)
36 | {
37 | return bytes / 1024 / 1024;
38 | }
39 |
40 | private void OnDestroy()
41 | {
42 | _sliderProgress = null;
43 | _textProgress = null;
44 | GetDownloadProgress = null;
45 | }
46 | }
47 | }
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | # HybridCLR结合Addressable进行C#代码热更的示例
2 | 包含自动打包和更新的编辑器脚本以及运行时进入游戏进行热更的逻辑脚本,安卓和Windows已通过测试。
3 | 解决了大部分结合HybridCLR和Addressable使用时出现的问题
4 | Unity版本:2022.3.17f1c1
5 | HybridCLR版本:5.1.0
6 | Addressable版本:1.21.20
7 | ## 使用方法:
8 | ### 安装HybridCLR
9 | 进入Unity,点击
10 | 
11 | 再点击:
12 | 
13 | 安装HybridCLR所需要的il2cpp代码。
14 |
15 | ### 开启本地Hosting
16 | Demo中Addressable使用的服务器是本地Hosting,需要开启,但可能出现端口号被占用的情况,所以需要打开Addressables Hosting界面进行设置:
17 | 
18 | 点击Reset,然后再点击Enable
19 | 
20 |
21 | ### 开始打包
22 | 点击
23 | 
24 | 进行当前平台的打包
25 | 在修改完代码或者资源后,点击
26 | 
27 | 进行热更新
28 |
29 | ## 注意事项
30 | 如果想参考本demo,需要注意的地方:
31 | ### 热更Dll之间有依赖
32 | 如果有多个热更dll,且这些dll之间如果有依赖关系,需要自行写代码使其按照正确顺序加载:
33 | 如GameLauncher.cs line:50
34 | 
35 | 这里假设热更的主要程序集名为GamePlay,如果有其他的热更程序集被其依赖,则需要添加到该列表中,如果这些被添加的程序集内部还有依赖,那也需要按依赖顺序写入列表
36 |
37 | ## Demo详解
38 | 可以看看我在知乎上发的文章:
39 | https://zhuanlan.zhihu.com/p/686662466?
40 |
41 |
--------------------------------------------------------------------------------
/.gitignore:
--------------------------------------------------------------------------------
1 | # This .gitignore file should be placed at the root of your Unity project directory
2 | #
3 | # Get latest from https://github.com/github/gitignore/blob/main/Unity.gitignore
4 | #
5 | /[Ll]ibrary/
6 | /[Tt]emp/
7 | /[Oo]bj/
8 | /[Bb]uild/
9 | /[Bb]uilds/
10 | /[Ll]ogs/
11 | /[Uu]ser[Ss]ettings/
12 |
13 | # MemoryCaptures can get excessive in size.
14 | # They also could contain extremely sensitive data
15 | /[Mm]emoryCaptures/
16 |
17 | # Recordings can get excessive in size
18 | /[Rr]ecordings/
19 |
20 | # Uncomment this line if you wish to ignore the asset store tools plugin
21 | # /[Aa]ssets/AssetStoreTools*
22 |
23 | # Autogenerated Jetbrains Rider plugin
24 | /[Aa]ssets/Plugins/Editor/JetBrains*
25 |
26 | # Visual Studio cache directory
27 | .vs/
28 |
29 | # Gradle cache directory
30 | .gradle/
31 |
32 | # Autogenerated VS/MD/Consulo solution and project files
33 | ExportedObj/
34 | .consulo/
35 | *.csproj
36 | *.unityproj
37 | *.sln
38 | *.suo
39 | *.tmp
40 | *.user
41 | *.userprefs
42 | *.pidb
43 | *.booproj
44 | *.svd
45 | *.pdb
46 | *.mdb
47 | *.opendb
48 | *.VC.db
49 |
50 | # Unity3D generated meta files
51 | *.pidb.meta
52 | *.pdb.meta
53 | *.mdb.meta
54 |
55 | # Unity3D generated file on crash reports
56 | sysinfo.txt
57 |
58 | # Builds
59 | *.apk
60 | *.aab
61 | *.unitypackage
62 | *.app
63 |
64 | # Crashlytics generated file
65 | crashlytics-build.properties
66 |
67 | # Packed Addressables
68 | /[Aa]ssets/[Aa]ddressable[Aa]ssets[Dd]ata/*/*.bin*
69 |
70 | # Temporary auto-generated Android Assets
71 | /[Aa]ssets/[Ss]treamingAssets/aa.meta
72 | /[Aa]ssets/[Ss]treamingAssets/aa/*
73 | /HybridCLRData
74 |
75 | /.idea
76 | /ServerData
77 | /Assets/HybridCLRGenerate
78 | Assets/HybridCLRGenerate.meta
79 | /BuildData
--------------------------------------------------------------------------------
/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 | debug:
89 | m_Flags: 0
90 | m_SettingNames:
91 | - Humanoid
92 |
--------------------------------------------------------------------------------
/Assets/AddressableAssetsData/AssetGroups/Schemas/Prefabs_BundledAssetGroupSchema.asset:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!114 &11400000
4 | MonoBehaviour:
5 | m_ObjectHideFlags: 0
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: 11500000, guid: e5d17a21594effb4e9591490b009e7aa, type: 3}
13 | m_Name: Prefabs_BundledAssetGroupSchema
14 | m_EditorClassIdentifier:
15 | m_Group: {fileID: 11400000, guid: ad4d7e6a96510c443b8b11df2a272bc7, type: 2}
16 | m_InternalBundleIdMode: 1
17 | m_Compression: 1
18 | m_IncludeAddressInCatalog: 1
19 | m_IncludeGUIDInCatalog: 1
20 | m_IncludeLabelsInCatalog: 1
21 | m_InternalIdNamingMode: 0
22 | m_CacheClearBehavior: 0
23 | m_IncludeInBuild: 1
24 | m_BundledAssetProviderType:
25 | m_AssemblyName: Unity.ResourceManager, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null
26 | m_ClassName: UnityEngine.ResourceManagement.ResourceProviders.BundledAssetProvider
27 | m_ForceUniqueProvider: 0
28 | m_UseAssetBundleCache: 1
29 | m_UseAssetBundleCrc: 1
30 | m_UseAssetBundleCrcForCachedBundles: 1
31 | m_UseUWRForLocalBundles: 0
32 | m_Timeout: 5
33 | m_ChunkedTransfer: 0
34 | m_RedirectLimit: -1
35 | m_RetryCount: 3
36 | m_BuildPath:
37 | m_Id: eb46dfd26026b60418889b30d9b7d92a
38 | m_LoadPath:
39 | m_Id: d388ccacf8397ea4bab922b24131c94b
40 | m_BundleMode: 0
41 | m_AssetBundleProviderType:
42 | m_AssemblyName: Unity.ResourceManager, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null
43 | m_ClassName: UnityEngine.ResourceManagement.ResourceProviders.AssetBundleProvider
44 | m_BundleNaming: 0
45 | m_AssetLoadMode: 0
46 |
--------------------------------------------------------------------------------
/Assets/AddressableAssetsData/AssetGroups/Schemas/Scenes_BundledAssetGroupSchema.asset:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!114 &11400000
4 | MonoBehaviour:
5 | m_ObjectHideFlags: 0
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: 11500000, guid: e5d17a21594effb4e9591490b009e7aa, type: 3}
13 | m_Name: Packed Assets_BundledAssetGroupSchema
14 | m_EditorClassIdentifier:
15 | m_Group: {fileID: 11400000, guid: 716876498c20bc64d8056094d016ad6c, type: 2}
16 | m_InternalBundleIdMode: 1
17 | m_Compression: 1
18 | m_IncludeAddressInCatalog: 1
19 | m_IncludeGUIDInCatalog: 1
20 | m_IncludeLabelsInCatalog: 1
21 | m_InternalIdNamingMode: 0
22 | m_CacheClearBehavior: 0
23 | m_IncludeInBuild: 1
24 | m_BundledAssetProviderType:
25 | m_AssemblyName: Unity.ResourceManager, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null
26 | m_ClassName: UnityEngine.ResourceManagement.ResourceProviders.BundledAssetProvider
27 | m_ForceUniqueProvider: 0
28 | m_UseAssetBundleCache: 1
29 | m_UseAssetBundleCrc: 1
30 | m_UseAssetBundleCrcForCachedBundles: 1
31 | m_UseUWRForLocalBundles: 0
32 | m_Timeout: 5
33 | m_ChunkedTransfer: 0
34 | m_RedirectLimit: -1
35 | m_RetryCount: 3
36 | m_BuildPath:
37 | m_Id: eb46dfd26026b60418889b30d9b7d92a
38 | m_LoadPath:
39 | m_Id: d388ccacf8397ea4bab922b24131c94b
40 | m_BundleMode: 1
41 | m_AssetBundleProviderType:
42 | m_AssemblyName: Unity.ResourceManager, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null
43 | m_ClassName: UnityEngine.ResourceManagement.ResourceProviders.AssetBundleProvider
44 | m_BundleNaming: 0
45 | m_AssetLoadMode: 0
46 |
--------------------------------------------------------------------------------
/Assets/AddressableAssetsData/AssetGroups/Schemas/HotUpdateDlls_BundledAssetGroupSchema.asset:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!114 &11400000
4 | MonoBehaviour:
5 | m_ObjectHideFlags: 0
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: 11500000, guid: e5d17a21594effb4e9591490b009e7aa, type: 3}
13 | m_Name: HotUpdateDlls_BundledAssetGroupSchema
14 | m_EditorClassIdentifier:
15 | m_Group: {fileID: 11400000, guid: 17d50e87eb4fe154c94acbcd26497abf, type: 2}
16 | m_InternalBundleIdMode: 1
17 | m_Compression: 1
18 | m_IncludeAddressInCatalog: 1
19 | m_IncludeGUIDInCatalog: 1
20 | m_IncludeLabelsInCatalog: 1
21 | m_InternalIdNamingMode: 0
22 | m_CacheClearBehavior: 0
23 | m_IncludeInBuild: 1
24 | m_BundledAssetProviderType:
25 | m_AssemblyName: Unity.ResourceManager, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null
26 | m_ClassName: UnityEngine.ResourceManagement.ResourceProviders.BundledAssetProvider
27 | m_ForceUniqueProvider: 0
28 | m_UseAssetBundleCache: 1
29 | m_UseAssetBundleCrc: 1
30 | m_UseAssetBundleCrcForCachedBundles: 1
31 | m_UseUWRForLocalBundles: 0
32 | m_Timeout: 5
33 | m_ChunkedTransfer: 0
34 | m_RedirectLimit: -1
35 | m_RetryCount: 3
36 | m_BuildPath:
37 | m_Id: eb46dfd26026b60418889b30d9b7d92a
38 | m_LoadPath:
39 | m_Id: d388ccacf8397ea4bab922b24131c94b
40 | m_BundleMode: 0
41 | m_AssetBundleProviderType:
42 | m_AssemblyName: Unity.ResourceManager, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null
43 | m_ClassName: UnityEngine.ResourceManagement.ResourceProviders.AssetBundleProvider
44 | m_BundleNaming: 0
45 | m_AssetLoadMode: 0
46 |
--------------------------------------------------------------------------------
/Assets/AddressableAssetsData/AssetGroups/Schemas/ScriptableObjects_BundledAssetGroupSchema.asset:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!114 &11400000
4 | MonoBehaviour:
5 | m_ObjectHideFlags: 0
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: 11500000, guid: e5d17a21594effb4e9591490b009e7aa, type: 3}
13 | m_Name: ScriptableObjects_BundledAssetGroupSchema
14 | m_EditorClassIdentifier:
15 | m_Group: {fileID: 11400000, guid: ecd41f4ea64cb2247ab9f5e62251a173, type: 2}
16 | m_InternalBundleIdMode: 1
17 | m_Compression: 1
18 | m_IncludeAddressInCatalog: 1
19 | m_IncludeGUIDInCatalog: 1
20 | m_IncludeLabelsInCatalog: 1
21 | m_InternalIdNamingMode: 0
22 | m_CacheClearBehavior: 0
23 | m_IncludeInBuild: 1
24 | m_BundledAssetProviderType:
25 | m_AssemblyName: Unity.ResourceManager, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null
26 | m_ClassName: UnityEngine.ResourceManagement.ResourceProviders.BundledAssetProvider
27 | m_ForceUniqueProvider: 0
28 | m_UseAssetBundleCache: 1
29 | m_UseAssetBundleCrc: 1
30 | m_UseAssetBundleCrcForCachedBundles: 1
31 | m_UseUWRForLocalBundles: 0
32 | m_Timeout: 0
33 | m_ChunkedTransfer: 0
34 | m_RedirectLimit: -1
35 | m_RetryCount: 0
36 | m_BuildPath:
37 | m_Id: a5a351bca89a69f4cad5aeddef5e3e48
38 | m_LoadPath:
39 | m_Id: b58ce8146b3281f42916d2c308134c3c
40 | m_BundleMode: 0
41 | m_AssetBundleProviderType:
42 | m_AssemblyName: Unity.ResourceManager, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null
43 | m_ClassName: UnityEngine.ResourceManagement.ResourceProviders.AssetBundleProvider
44 | m_BundleNaming: 0
45 | m_AssetLoadMode: 0
46 |
--------------------------------------------------------------------------------
/Assets/AddressableAssetsData/AssetGroups/Schemas/Default Local Group_BundledAssetGroupSchema.asset:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!114 &11400000
4 | MonoBehaviour:
5 | m_ObjectHideFlags: 0
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: 11500000, guid: e5d17a21594effb4e9591490b009e7aa, type: 3}
13 | m_Name: Default Local Group_BundledAssetGroupSchema
14 | m_EditorClassIdentifier:
15 | m_Group: {fileID: 11400000, guid: ae8e521b851919941b4d4b1d21790a4d, type: 2}
16 | m_InternalBundleIdMode: 1
17 | m_Compression: 1
18 | m_IncludeAddressInCatalog: 1
19 | m_IncludeGUIDInCatalog: 1
20 | m_IncludeLabelsInCatalog: 1
21 | m_InternalIdNamingMode: 0
22 | m_CacheClearBehavior: 0
23 | m_IncludeInBuild: 1
24 | m_BundledAssetProviderType:
25 | m_AssemblyName: Unity.ResourceManager, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null
26 | m_ClassName: UnityEngine.ResourceManagement.ResourceProviders.BundledAssetProvider
27 | m_ForceUniqueProvider: 0
28 | m_UseAssetBundleCache: 1
29 | m_UseAssetBundleCrc: 1
30 | m_UseAssetBundleCrcForCachedBundles: 1
31 | m_UseUWRForLocalBundles: 0
32 | m_Timeout: 5
33 | m_ChunkedTransfer: 0
34 | m_RedirectLimit: -1
35 | m_RetryCount: 3
36 | m_BuildPath:
37 | m_Id: eb46dfd26026b60418889b30d9b7d92a
38 | m_LoadPath:
39 | m_Id: d388ccacf8397ea4bab922b24131c94b
40 | m_BundleMode: 0
41 | m_AssetBundleProviderType:
42 | m_AssemblyName: Unity.ResourceManager, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null
43 | m_ClassName: UnityEngine.ResourceManagement.ResourceProviders.AssetBundleProvider
44 | m_BundleNaming: 0
45 | m_AssetLoadMode: 0
46 |
--------------------------------------------------------------------------------
/Packages/manifest.json:
--------------------------------------------------------------------------------
1 | {
2 | "dependencies": {
3 | "com.code-philosophy.hybridclr": "https://gitee.com/focus-creative-games/hybridclr_unity.git",
4 | "com.unity.addressables": "1.21.20",
5 | "com.unity.feature.development": "1.0.1",
6 | "com.unity.textmeshpro": "3.0.6",
7 | "com.unity.ugui": "1.0.0",
8 | "com.unity.modules.ai": "1.0.0",
9 | "com.unity.modules.androidjni": "1.0.0",
10 | "com.unity.modules.animation": "1.0.0",
11 | "com.unity.modules.assetbundle": "1.0.0",
12 | "com.unity.modules.audio": "1.0.0",
13 | "com.unity.modules.cloth": "1.0.0",
14 | "com.unity.modules.director": "1.0.0",
15 | "com.unity.modules.imageconversion": "1.0.0",
16 | "com.unity.modules.imgui": "1.0.0",
17 | "com.unity.modules.jsonserialize": "1.0.0",
18 | "com.unity.modules.particlesystem": "1.0.0",
19 | "com.unity.modules.physics": "1.0.0",
20 | "com.unity.modules.physics2d": "1.0.0",
21 | "com.unity.modules.screencapture": "1.0.0",
22 | "com.unity.modules.terrain": "1.0.0",
23 | "com.unity.modules.terrainphysics": "1.0.0",
24 | "com.unity.modules.tilemap": "1.0.0",
25 | "com.unity.modules.ui": "1.0.0",
26 | "com.unity.modules.uielements": "1.0.0",
27 | "com.unity.modules.umbra": "1.0.0",
28 | "com.unity.modules.unityanalytics": "1.0.0",
29 | "com.unity.modules.unitywebrequest": "1.0.0",
30 | "com.unity.modules.unitywebrequestassetbundle": "1.0.0",
31 | "com.unity.modules.unitywebrequestaudio": "1.0.0",
32 | "com.unity.modules.unitywebrequesttexture": "1.0.0",
33 | "com.unity.modules.unitywebrequestwww": "1.0.0",
34 | "com.unity.modules.vehicles": "1.0.0",
35 | "com.unity.modules.video": "1.0.0",
36 | "com.unity.modules.vr": "1.0.0",
37 | "com.unity.modules.wind": "1.0.0",
38 | "com.unity.modules.xr": "1.0.0"
39 | }
40 | }
41 |
--------------------------------------------------------------------------------
/Assets/TextMesh Pro/Resources/TMP Settings.asset:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!114 &11400000
4 | MonoBehaviour:
5 | m_ObjectHideFlags: 0
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: 11500000, guid: 2705215ac5b84b70bacc50632be6e391, type: 3}
13 | m_Name: TMP Settings
14 | m_EditorClassIdentifier:
15 | m_enableWordWrapping: 1
16 | m_enableKerning: 1
17 | m_enableExtraPadding: 0
18 | m_enableTintAllSprites: 0
19 | m_enableParseEscapeCharacters: 1
20 | m_EnableRaycastTarget: 1
21 | m_GetFontFeaturesAtRuntime: 1
22 | m_missingGlyphCharacter: 0
23 | m_warningsDisabled: 0
24 | m_defaultFontAsset: {fileID: 11400000, guid: 8f586378b4e144a9851e7b34d9b748ee, type: 2}
25 | m_defaultFontAssetPath: Fonts & Materials/
26 | m_defaultFontSize: 36
27 | m_defaultAutoSizeMinRatio: 0.5
28 | m_defaultAutoSizeMaxRatio: 2
29 | m_defaultTextMeshProTextContainerSize: {x: 20, y: 5}
30 | m_defaultTextMeshProUITextContainerSize: {x: 200, y: 50}
31 | m_autoSizeTextContainer: 0
32 | m_fallbackFontAssets: []
33 | m_matchMaterialPreset: 1
34 | m_defaultSpriteAsset: {fileID: 11400000, guid: c41005c129ba4d66911b75229fd70b45,
35 | type: 2}
36 | m_defaultSpriteAssetPath: Sprite Assets/
37 | m_enableEmojiSupport: 1
38 | m_MissingCharacterSpriteUnicode: 0
39 | m_defaultColorGradientPresetsPath: Color Gradient Presets/
40 | m_defaultStyleSheet: {fileID: 11400000, guid: f952c082cb03451daed3ee968ac6c63e,
41 | type: 2}
42 | m_StyleSheetsResourcePath:
43 | m_leadingCharacters: {fileID: 4900000, guid: d82c1b31c7e74239bff1220585707d2b, type: 3}
44 | m_followingCharacters: {fileID: 4900000, guid: fade42e8bc714b018fac513c043d323b,
45 | type: 3}
46 | m_UseModernHangulLineBreakingRules: 0
47 |
--------------------------------------------------------------------------------
/Assets/Scripts/GamePlay/ConsoleToScreen.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections;
3 | using System.Collections.Generic;
4 | using UnityEngine;
5 |
6 | public class ConsoleToScreen : MonoBehaviour
7 | {
8 | const int maxLines = 50;
9 | const int maxLineLength = 120;
10 | private string _logStr = "";
11 |
12 | private readonly List _lines = new List();
13 |
14 | public int fontSize = 15;
15 |
16 | void OnEnable() { Application.logMessageReceived += Log; }
17 | void OnDisable() { Application.logMessageReceived -= Log; }
18 |
19 | public void Log(string logString, string stackTrace, LogType type)
20 | {
21 | foreach (var line in logString.Split('\n'))
22 | {
23 | if (line.Length <= maxLineLength)
24 | {
25 | _lines.Add(line);
26 | continue;
27 | }
28 | var lineCount = line.Length / maxLineLength + 1;
29 | for (int i = 0; i < lineCount; i++)
30 | {
31 | if ((i + 1) * maxLineLength <= line.Length)
32 | {
33 | _lines.Add(line.Substring(i * maxLineLength, maxLineLength));
34 | }
35 | else
36 | {
37 | _lines.Add(line.Substring(i * maxLineLength, line.Length - i * maxLineLength));
38 | }
39 | }
40 | }
41 | if (_lines.Count > maxLines)
42 | {
43 | _lines.RemoveRange(0, _lines.Count - maxLines);
44 | }
45 | _logStr = string.Join("\n", _lines);
46 | }
47 |
48 | void OnGUI()
49 | {
50 | GUI.matrix = Matrix4x4.TRS(Vector3.zero, Quaternion.identity,
51 | new Vector3(Screen.width / 1200.0f, Screen.height / 800.0f, 1.0f));
52 | GUI.Label(new Rect(10, 10, 800, 370), _logStr, new GUIStyle() { fontSize = Math.Max(10, fontSize) });
53 | }
54 | }
--------------------------------------------------------------------------------
/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: 4
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_AutoSimulation: 1
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 |
--------------------------------------------------------------------------------
/Assets/AddressableAssetsData/link.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 |
28 |
29 |
30 |
31 |
32 |
33 |
34 |
--------------------------------------------------------------------------------
/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_AlwaysIncludedShaders:
32 | - {fileID: 7, guid: 0000000000000000f000000000000000, type: 0}
33 | - {fileID: 15104, guid: 0000000000000000f000000000000000, type: 0}
34 | - {fileID: 15105, guid: 0000000000000000f000000000000000, type: 0}
35 | - {fileID: 15106, guid: 0000000000000000f000000000000000, type: 0}
36 | - {fileID: 10753, guid: 0000000000000000f000000000000000, type: 0}
37 | - {fileID: 10770, guid: 0000000000000000f000000000000000, type: 0}
38 | m_PreloadedShaders: []
39 | m_SpritesDefaultMaterial: {fileID: 10754, guid: 0000000000000000f000000000000000,
40 | type: 0}
41 | m_CustomRenderPipeline: {fileID: 0}
42 | m_TransparencySortMode: 0
43 | m_TransparencySortAxis: {x: 0, y: 0, z: 1}
44 | m_DefaultRenderingPath: 1
45 | m_DefaultMobileRenderingPath: 1
46 | m_TierSettings: []
47 | m_LightmapStripping: 0
48 | m_FogStripping: 0
49 | m_InstancingStripping: 0
50 | m_LightmapKeepPlain: 1
51 | m_LightmapKeepDirCombined: 1
52 | m_LightmapKeepDynamicPlain: 1
53 | m_LightmapKeepDynamicDirCombined: 1
54 | m_LightmapKeepShadowMask: 1
55 | m_LightmapKeepSubtractive: 1
56 | m_FogKeepLinear: 1
57 | m_FogKeepExp: 1
58 | m_FogKeepExp2: 1
59 | m_AlbedoSwatchInfos: []
60 | m_LightsUseLinearIntensity: 0
61 | m_LightsUseColorTemperature: 0
62 | m_LogWhenShaderIsCompiled: 0
63 | m_AllowEnlightenSupportForUpgradedProject: 0
64 |
--------------------------------------------------------------------------------
/Assets/AddressableAssetsData/AssetGroupTemplates/Packed Assets.asset:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!114 &-2256112995220396658
4 | MonoBehaviour:
5 | m_ObjectHideFlags: 1
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: 11500000, guid: 5834b5087d578d24c926ce20cd31e6d6, type: 3}
13 | m_Name: ContentUpdateGroupSchema
14 | m_EditorClassIdentifier:
15 | m_Group: {fileID: 0}
16 | m_StaticContent: 0
17 | --- !u!114 &11400000
18 | MonoBehaviour:
19 | m_ObjectHideFlags: 0
20 | m_CorrespondingSourceObject: {fileID: 0}
21 | m_PrefabInstance: {fileID: 0}
22 | m_PrefabAsset: {fileID: 0}
23 | m_GameObject: {fileID: 0}
24 | m_Enabled: 1
25 | m_EditorHideFlags: 0
26 | m_Script: {fileID: 11500000, guid: 1a3c5d64ac83548c09dd1678b9f6f1cd, type: 3}
27 | m_Name: Packed Assets
28 | m_EditorClassIdentifier:
29 | m_SchemaObjects:
30 | - {fileID: 6252178994907554092}
31 | - {fileID: -2256112995220396658}
32 | m_Description: Pack assets into asset bundles.
33 | m_Settings: {fileID: 11400000, guid: bd8c88330daf27744b9edd695f056cc7, type: 2}
34 | --- !u!114 &6252178994907554092
35 | MonoBehaviour:
36 | m_ObjectHideFlags: 1
37 | m_CorrespondingSourceObject: {fileID: 0}
38 | m_PrefabInstance: {fileID: 0}
39 | m_PrefabAsset: {fileID: 0}
40 | m_GameObject: {fileID: 0}
41 | m_Enabled: 1
42 | m_EditorHideFlags: 0
43 | m_Script: {fileID: 11500000, guid: e5d17a21594effb4e9591490b009e7aa, type: 3}
44 | m_Name: BundledAssetGroupSchema
45 | m_EditorClassIdentifier:
46 | m_Group: {fileID: 0}
47 | m_InternalBundleIdMode: 1
48 | m_Compression: 1
49 | m_IncludeAddressInCatalog: 1
50 | m_IncludeGUIDInCatalog: 1
51 | m_IncludeLabelsInCatalog: 1
52 | m_InternalIdNamingMode: 0
53 | m_CacheClearBehavior: 0
54 | m_IncludeInBuild: 1
55 | m_BundledAssetProviderType:
56 | m_AssemblyName:
57 | m_ClassName:
58 | m_ForceUniqueProvider: 0
59 | m_UseAssetBundleCache: 1
60 | m_UseAssetBundleCrc: 1
61 | m_UseAssetBundleCrcForCachedBundles: 1
62 | m_UseUWRForLocalBundles: 0
63 | m_Timeout: 0
64 | m_ChunkedTransfer: 0
65 | m_RedirectLimit: -1
66 | m_RetryCount: 0
67 | m_BuildPath:
68 | m_Id:
69 | m_LoadPath:
70 | m_Id:
71 | m_BundleMode: 0
72 | m_AssetBundleProviderType:
73 | m_AssemblyName:
74 | m_ClassName:
75 | m_BundleNaming: 0
76 | m_AssetLoadMode: 0
77 |
--------------------------------------------------------------------------------
/Assets/TextMesh Pro/Shaders/TMPro.cginc:
--------------------------------------------------------------------------------
1 | float2 UnpackUV(float uv)
2 | {
3 | float2 output;
4 | output.x = floor(uv / 4096);
5 | output.y = uv - 4096 * output.x;
6 |
7 | return output * 0.001953125;
8 | }
9 |
10 | fixed4 GetColor(half d, fixed4 faceColor, fixed4 outlineColor, half outline, half softness)
11 | {
12 | half faceAlpha = 1-saturate((d - outline * 0.5 + softness * 0.5) / (1.0 + softness));
13 | half outlineAlpha = saturate((d + outline * 0.5)) * sqrt(min(1.0, outline));
14 |
15 | faceColor.rgb *= faceColor.a;
16 | outlineColor.rgb *= outlineColor.a;
17 |
18 | faceColor = lerp(faceColor, outlineColor, outlineAlpha);
19 |
20 | faceColor *= faceAlpha;
21 |
22 | return faceColor;
23 | }
24 |
25 | float3 GetSurfaceNormal(float4 h, float bias)
26 | {
27 | bool raisedBevel = step(1, fmod(_ShaderFlags, 2));
28 |
29 | h += bias+_BevelOffset;
30 |
31 | float bevelWidth = max(.01, _OutlineWidth+_BevelWidth);
32 |
33 | // Track outline
34 | h -= .5;
35 | h /= bevelWidth;
36 | h = saturate(h+.5);
37 |
38 | if(raisedBevel) h = 1 - abs(h*2.0 - 1.0);
39 | h = lerp(h, sin(h*3.141592/2.0), _BevelRoundness);
40 | h = min(h, 1.0-_BevelClamp);
41 | h *= _Bevel * bevelWidth * _GradientScale * -2.0;
42 |
43 | float3 va = normalize(float3(1.0, 0.0, h.y - h.x));
44 | float3 vb = normalize(float3(0.0, -1.0, h.w - h.z));
45 |
46 | return cross(va, vb);
47 | }
48 |
49 | float3 GetSurfaceNormal(float2 uv, float bias, float3 delta)
50 | {
51 | // Read "height field"
52 | float4 h = {tex2D(_MainTex, uv - delta.xz).a,
53 | tex2D(_MainTex, uv + delta.xz).a,
54 | tex2D(_MainTex, uv - delta.zy).a,
55 | tex2D(_MainTex, uv + delta.zy).a};
56 |
57 | return GetSurfaceNormal(h, bias);
58 | }
59 |
60 | float3 GetSpecular(float3 n, float3 l)
61 | {
62 | float spec = pow(max(0.0, dot(n, l)), _Reflectivity);
63 | return _SpecularColor.rgb * spec * _SpecularPower;
64 | }
65 |
66 | float4 GetGlowColor(float d, float scale)
67 | {
68 | float glow = d - (_GlowOffset*_ScaleRatioB) * 0.5 * scale;
69 | float t = lerp(_GlowInner, (_GlowOuter * _ScaleRatioB), step(0.0, glow)) * 0.5 * scale;
70 | glow = saturate(abs(glow/(1.0 + t)));
71 | glow = 1.0-pow(glow, _GlowPower);
72 | glow *= sqrt(min(1.0, t)); // Fade off glow thinner than 1 screen pixel
73 | return float4(_GlowColor.rgb, saturate(_GlowColor.a * glow * 2));
74 | }
75 |
76 | float4 BlendARGB(float4 overlying, float4 underlying)
77 | {
78 | overlying.rgb *= overlying.a;
79 | underlying.rgb *= underlying.a;
80 | float3 blended = overlying.rgb + ((1-overlying.a)*underlying.rgb);
81 | float alpha = underlying.a + (1-underlying.a)*overlying.a;
82 | return float4(blended, alpha);
83 | }
84 |
85 |
--------------------------------------------------------------------------------
/Assets/TextMesh Pro/Shaders/TMPro_Properties.cginc:
--------------------------------------------------------------------------------
1 | // UI Editable properties
2 | uniform sampler2D _FaceTex; // Alpha : Signed Distance
3 | uniform float _FaceUVSpeedX;
4 | uniform float _FaceUVSpeedY;
5 | uniform fixed4 _FaceColor; // RGBA : Color + Opacity
6 | uniform float _FaceDilate; // v[ 0, 1]
7 | uniform float _OutlineSoftness; // v[ 0, 1]
8 |
9 | uniform sampler2D _OutlineTex; // RGBA : Color + Opacity
10 | uniform float _OutlineUVSpeedX;
11 | uniform float _OutlineUVSpeedY;
12 | uniform fixed4 _OutlineColor; // RGBA : Color + Opacity
13 | uniform float _OutlineWidth; // v[ 0, 1]
14 |
15 | uniform float _Bevel; // v[ 0, 1]
16 | uniform float _BevelOffset; // v[-1, 1]
17 | uniform float _BevelWidth; // v[-1, 1]
18 | uniform float _BevelClamp; // v[ 0, 1]
19 | uniform float _BevelRoundness; // v[ 0, 1]
20 |
21 | uniform sampler2D _BumpMap; // Normal map
22 | uniform float _BumpOutline; // v[ 0, 1]
23 | uniform float _BumpFace; // v[ 0, 1]
24 |
25 | uniform samplerCUBE _Cube; // Cube / sphere map
26 | uniform fixed4 _ReflectFaceColor; // RGB intensity
27 | uniform fixed4 _ReflectOutlineColor;
28 | //uniform float _EnvTiltX; // v[-1, 1]
29 | //uniform float _EnvTiltY; // v[-1, 1]
30 | uniform float3 _EnvMatrixRotation;
31 | uniform float4x4 _EnvMatrix;
32 |
33 | uniform fixed4 _SpecularColor; // RGB intensity
34 | uniform float _LightAngle; // v[ 0,Tau]
35 | uniform float _SpecularPower; // v[ 0, 1]
36 | uniform float _Reflectivity; // v[ 5, 15]
37 | uniform float _Diffuse; // v[ 0, 1]
38 | uniform float _Ambient; // v[ 0, 1]
39 |
40 | uniform fixed4 _UnderlayColor; // RGBA : Color + Opacity
41 | uniform float _UnderlayOffsetX; // v[-1, 1]
42 | uniform float _UnderlayOffsetY; // v[-1, 1]
43 | uniform float _UnderlayDilate; // v[-1, 1]
44 | uniform float _UnderlaySoftness; // v[ 0, 1]
45 |
46 | uniform fixed4 _GlowColor; // RGBA : Color + Intesity
47 | uniform float _GlowOffset; // v[-1, 1]
48 | uniform float _GlowOuter; // v[ 0, 1]
49 | uniform float _GlowInner; // v[ 0, 1]
50 | uniform float _GlowPower; // v[ 1, 1/(1+4*4)]
51 |
52 | // API Editable properties
53 | uniform float _ShaderFlags;
54 | uniform float _WeightNormal;
55 | uniform float _WeightBold;
56 |
57 | uniform float _ScaleRatioA;
58 | uniform float _ScaleRatioB;
59 | uniform float _ScaleRatioC;
60 |
61 | uniform float _VertexOffsetX;
62 | uniform float _VertexOffsetY;
63 |
64 | //uniform float _UseClipRect;
65 | uniform float _MaskID;
66 | uniform sampler2D _MaskTex;
67 | uniform float4 _MaskCoord;
68 | uniform float4 _ClipRect; // bottom left(x,y) : top right(z,w)
69 | //uniform float _MaskWipeControl;
70 | //uniform float _MaskEdgeSoftness;
71 | //uniform fixed4 _MaskEdgeColor;
72 | //uniform bool _MaskInverse;
73 |
74 | uniform float _MaskSoftnessX;
75 | uniform float _MaskSoftnessY;
76 |
77 | // Font Atlas properties
78 | uniform sampler2D _MainTex;
79 | uniform float _TextureWidth;
80 | uniform float _TextureHeight;
81 | uniform float _GradientScale;
82 | uniform float _ScaleX;
83 | uniform float _ScaleY;
84 | uniform float _PerspectiveFilter;
85 | uniform float _Sharpness;
86 |
--------------------------------------------------------------------------------
/Assets/TextMesh Pro/Shaders/TMP_Sprite.shader:
--------------------------------------------------------------------------------
1 | Shader "TextMeshPro/Sprite"
2 | {
3 | Properties
4 | {
5 | [PerRendererData] _MainTex ("Sprite Texture", 2D) = "white" {}
6 | _Color ("Tint", Color) = (1,1,1,1)
7 |
8 | _StencilComp ("Stencil Comparison", Float) = 8
9 | _Stencil ("Stencil ID", Float) = 0
10 | _StencilOp ("Stencil Operation", Float) = 0
11 | _StencilWriteMask ("Stencil Write Mask", Float) = 255
12 | _StencilReadMask ("Stencil Read Mask", Float) = 255
13 |
14 | _CullMode ("Cull Mode", Float) = 0
15 | _ColorMask ("Color Mask", Float) = 15
16 | _ClipRect ("Clip Rect", vector) = (-32767, -32767, 32767, 32767)
17 |
18 | [Toggle(UNITY_UI_ALPHACLIP)] _UseUIAlphaClip ("Use Alpha Clip", Float) = 0
19 | }
20 |
21 | SubShader
22 | {
23 | Tags
24 | {
25 | "Queue"="Transparent"
26 | "IgnoreProjector"="True"
27 | "RenderType"="Transparent"
28 | "PreviewType"="Plane"
29 | "CanUseSpriteAtlas"="True"
30 | }
31 |
32 | Stencil
33 | {
34 | Ref [_Stencil]
35 | Comp [_StencilComp]
36 | Pass [_StencilOp]
37 | ReadMask [_StencilReadMask]
38 | WriteMask [_StencilWriteMask]
39 | }
40 |
41 | Cull [_CullMode]
42 | Lighting Off
43 | ZWrite Off
44 | ZTest [unity_GUIZTestMode]
45 | Blend SrcAlpha OneMinusSrcAlpha
46 | ColorMask [_ColorMask]
47 |
48 | Pass
49 | {
50 | Name "Default"
51 | CGPROGRAM
52 | #pragma vertex vert
53 | #pragma fragment frag
54 | #pragma target 2.0
55 |
56 | #include "UnityCG.cginc"
57 | #include "UnityUI.cginc"
58 |
59 | #pragma multi_compile __ UNITY_UI_CLIP_RECT
60 | #pragma multi_compile __ UNITY_UI_ALPHACLIP
61 |
62 | struct appdata_t
63 | {
64 | float4 vertex : POSITION;
65 | float4 color : COLOR;
66 | float2 texcoord : TEXCOORD0;
67 | UNITY_VERTEX_INPUT_INSTANCE_ID
68 | };
69 |
70 | struct v2f
71 | {
72 | float4 vertex : SV_POSITION;
73 | fixed4 color : COLOR;
74 | float2 texcoord : TEXCOORD0;
75 | float4 worldPosition : TEXCOORD1;
76 | UNITY_VERTEX_OUTPUT_STEREO
77 | };
78 |
79 | sampler2D _MainTex;
80 | fixed4 _Color;
81 | fixed4 _TextureSampleAdd;
82 | float4 _ClipRect;
83 | float4 _MainTex_ST;
84 |
85 | v2f vert(appdata_t v)
86 | {
87 | v2f OUT;
88 | UNITY_SETUP_INSTANCE_ID(v);
89 | UNITY_INITIALIZE_VERTEX_OUTPUT_STEREO(OUT);
90 | OUT.worldPosition = v.vertex;
91 | OUT.vertex = UnityObjectToClipPos(OUT.worldPosition);
92 |
93 | OUT.texcoord = TRANSFORM_TEX(v.texcoord, _MainTex);
94 |
95 | OUT.color = v.color * _Color;
96 | return OUT;
97 | }
98 |
99 | fixed4 frag(v2f IN) : SV_Target
100 | {
101 | half4 color = (tex2D(_MainTex, IN.texcoord) + _TextureSampleAdd) * IN.color;
102 |
103 | #ifdef UNITY_UI_CLIP_RECT
104 | color.a *= UnityGet2DClipping(IN.worldPosition.xy, _ClipRect);
105 | #endif
106 |
107 | #ifdef UNITY_UI_ALPHACLIP
108 | clip (color.a - 0.001);
109 | #endif
110 |
111 | return color;
112 | }
113 | ENDCG
114 | }
115 | }
116 | }
117 |
--------------------------------------------------------------------------------
/Assets/TextMesh Pro/Resources/Fonts & Materials/LiberationSans SDF - Outline.mat:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!21 &2100000
4 | Material:
5 | serializedVersion: 6
6 | m_ObjectHideFlags: 0
7 | m_CorrespondingSourceObject: {fileID: 0}
8 | m_PrefabInstance: {fileID: 0}
9 | m_PrefabAsset: {fileID: 0}
10 | m_Name: LiberationSans SDF - Outline
11 | m_Shader: {fileID: 4800000, guid: fe393ace9b354375a9cb14cdbbc28be4, type: 3}
12 | m_ShaderKeywords: OUTLINE_ON
13 | m_LightmapFlags: 5
14 | m_EnableInstancingVariants: 0
15 | m_DoubleSidedGI: 0
16 | m_CustomRenderQueue: -1
17 | stringTagMap: {}
18 | disabledShaderPasses: []
19 | m_SavedProperties:
20 | serializedVersion: 3
21 | m_TexEnvs:
22 | - _BumpMap:
23 | m_Texture: {fileID: 0}
24 | m_Scale: {x: 1, y: 1}
25 | m_Offset: {x: 0, y: 0}
26 | - _Cube:
27 | m_Texture: {fileID: 0}
28 | m_Scale: {x: 1, y: 1}
29 | m_Offset: {x: 0, y: 0}
30 | - _FaceTex:
31 | m_Texture: {fileID: 0}
32 | m_Scale: {x: 1, y: 1}
33 | m_Offset: {x: 0, y: 0}
34 | - _MainTex:
35 | m_Texture: {fileID: 28684132378477856, guid: 8f586378b4e144a9851e7b34d9b748ee,
36 | type: 2}
37 | m_Scale: {x: 1, y: 1}
38 | m_Offset: {x: 0, y: 0}
39 | - _OutlineTex:
40 | m_Texture: {fileID: 0}
41 | m_Scale: {x: 1, y: 1}
42 | m_Offset: {x: 0, y: 0}
43 | m_Floats:
44 | - _Ambient: 0.5
45 | - _Bevel: 0.5
46 | - _BevelClamp: 0
47 | - _BevelOffset: 0
48 | - _BevelRoundness: 0
49 | - _BevelWidth: 0
50 | - _BumpFace: 0
51 | - _BumpOutline: 0
52 | - _ColorMask: 15
53 | - _Diffuse: 0.5
54 | - _FaceDilate: 0.1
55 | - _FaceUVSpeedX: 0
56 | - _FaceUVSpeedY: 0
57 | - _GlowInner: 0.05
58 | - _GlowOffset: 0
59 | - _GlowOuter: 0.05
60 | - _GlowPower: 0.75
61 | - _GradientScale: 10
62 | - _LightAngle: 3.1416
63 | - _MaskSoftnessX: 0
64 | - _MaskSoftnessY: 0
65 | - _OutlineSoftness: 0
66 | - _OutlineUVSpeedX: 0
67 | - _OutlineUVSpeedY: 0
68 | - _OutlineWidth: 0.1
69 | - _PerspectiveFilter: 0.875
70 | - _Reflectivity: 10
71 | - _ScaleRatioA: 0.9
72 | - _ScaleRatioB: 0.73125
73 | - _ScaleRatioC: 0.64125
74 | - _ScaleX: 1
75 | - _ScaleY: 1
76 | - _ShaderFlags: 0
77 | - _Sharpness: 0
78 | - _SpecularPower: 2
79 | - _Stencil: 0
80 | - _StencilComp: 8
81 | - _StencilOp: 0
82 | - _StencilReadMask: 255
83 | - _StencilWriteMask: 255
84 | - _TextureHeight: 1024
85 | - _TextureWidth: 1024
86 | - _UnderlayDilate: 0
87 | - _UnderlayOffsetX: 0
88 | - _UnderlayOffsetY: 0
89 | - _UnderlaySoftness: 0
90 | - _VertexOffsetX: 0
91 | - _VertexOffsetY: 0
92 | - _WeightBold: 0.75
93 | - _WeightNormal: 0
94 | m_Colors:
95 | - _ClipRect: {r: -32767, g: -32767, b: 32767, a: 32767}
96 | - _EnvMatrixRotation: {r: 0, g: 0, b: 0, a: 0}
97 | - _FaceColor: {r: 1, g: 1, b: 1, a: 1}
98 | - _GlowColor: {r: 0, g: 1, b: 0, a: 0.5}
99 | - _MaskCoord: {r: 0, g: 0, b: 32767, a: 32767}
100 | - _OutlineColor: {r: 0, g: 0, b: 0, a: 1}
101 | - _ReflectFaceColor: {r: 0, g: 0, b: 0, a: 1}
102 | - _ReflectOutlineColor: {r: 0, g: 0, b: 0, a: 1}
103 | - _SpecularColor: {r: 1, g: 1, b: 1, a: 1}
104 | - _UnderlayColor: {r: 0, g: 0, b: 0, a: 0.5}
105 |
--------------------------------------------------------------------------------
/Assets/TextMesh Pro/Resources/Fonts & Materials/LiberationSans SDF - Drop Shadow.mat:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!21 &2100000
4 | Material:
5 | serializedVersion: 6
6 | m_ObjectHideFlags: 0
7 | m_CorrespondingSourceObject: {fileID: 0}
8 | m_PrefabInstance: {fileID: 0}
9 | m_PrefabAsset: {fileID: 0}
10 | m_Name: LiberationSans SDF - Drop Shadow
11 | m_Shader: {fileID: 4800000, guid: fe393ace9b354375a9cb14cdbbc28be4, type: 3}
12 | m_ShaderKeywords: OUTLINE_ON UNDERLAY_ON
13 | m_LightmapFlags: 5
14 | m_EnableInstancingVariants: 0
15 | m_DoubleSidedGI: 0
16 | m_CustomRenderQueue: -1
17 | stringTagMap: {}
18 | disabledShaderPasses: []
19 | m_SavedProperties:
20 | serializedVersion: 3
21 | m_TexEnvs:
22 | - _BumpMap:
23 | m_Texture: {fileID: 0}
24 | m_Scale: {x: 1, y: 1}
25 | m_Offset: {x: 0, y: 0}
26 | - _Cube:
27 | m_Texture: {fileID: 0}
28 | m_Scale: {x: 1, y: 1}
29 | m_Offset: {x: 0, y: 0}
30 | - _FaceTex:
31 | m_Texture: {fileID: 0}
32 | m_Scale: {x: 1, y: 1}
33 | m_Offset: {x: 0, y: 0}
34 | - _MainTex:
35 | m_Texture: {fileID: 28684132378477856, guid: 8f586378b4e144a9851e7b34d9b748ee,
36 | type: 2}
37 | m_Scale: {x: 1, y: 1}
38 | m_Offset: {x: 0, y: 0}
39 | - _OutlineTex:
40 | m_Texture: {fileID: 0}
41 | m_Scale: {x: 1, y: 1}
42 | m_Offset: {x: 0, y: 0}
43 | m_Floats:
44 | - _Ambient: 0.5
45 | - _Bevel: 0.5
46 | - _BevelClamp: 0
47 | - _BevelOffset: 0
48 | - _BevelRoundness: 0
49 | - _BevelWidth: 0
50 | - _BumpFace: 0
51 | - _BumpOutline: 0
52 | - _ColorMask: 15
53 | - _Diffuse: 0.5
54 | - _DiffusePower: 1
55 | - _FaceDilate: 0.1
56 | - _FaceUVSpeedX: 0
57 | - _FaceUVSpeedY: 0
58 | - _GlowInner: 0.05
59 | - _GlowOffset: 0
60 | - _GlowOuter: 0.05
61 | - _GlowPower: 0.75
62 | - _GradientScale: 10
63 | - _LightAngle: 3.1416
64 | - _MaskSoftnessX: 0
65 | - _MaskSoftnessY: 0
66 | - _OutlineSoftness: 0
67 | - _OutlineUVSpeedX: 0
68 | - _OutlineUVSpeedY: 0
69 | - _OutlineWidth: 0.1
70 | - _PerspectiveFilter: 0.875
71 | - _Reflectivity: 10
72 | - _ScaleRatioA: 0.9
73 | - _ScaleRatioB: 0.73125
74 | - _ScaleRatioC: 0.64125
75 | - _ScaleX: 1
76 | - _ScaleY: 1
77 | - _ShaderFlags: 0
78 | - _Sharpness: 0
79 | - _SpecularPower: 2
80 | - _Stencil: 0
81 | - _StencilComp: 8
82 | - _StencilOp: 0
83 | - _StencilReadMask: 255
84 | - _StencilWriteMask: 255
85 | - _TextureHeight: 1024
86 | - _TextureWidth: 1024
87 | - _UnderlayDilate: 0
88 | - _UnderlayOffsetX: 0.5
89 | - _UnderlayOffsetY: -0.5
90 | - _UnderlaySoftness: 0.05
91 | - _VertexOffsetX: 0
92 | - _VertexOffsetY: 0
93 | - _WeightBold: 0.75
94 | - _WeightNormal: 0
95 | m_Colors:
96 | - _ClipRect: {r: -32767, g: -32767, b: 32767, a: 32767}
97 | - _Color: {r: 1, g: 1, b: 1, a: 1}
98 | - _EnvMatrixRotation: {r: 0, g: 0, b: 0, a: 0}
99 | - _FaceColor: {r: 1, g: 1, b: 1, a: 1}
100 | - _GlowColor: {r: 0, g: 1, b: 0, a: 0.5}
101 | - _MaskCoord: {r: 0, g: 0, b: 32767, a: 32767}
102 | - _OutlineColor: {r: 0, g: 0, b: 0, a: 1}
103 | - _ReflectFaceColor: {r: 0, g: 0, b: 0, a: 1}
104 | - _ReflectOutlineColor: {r: 0, g: 0, b: 0, a: 1}
105 | - _SpecularColor: {r: 1, g: 1, b: 1, a: 1}
106 | - _UnderlayColor: {r: 0, g: 0, b: 0, a: 0.5}
107 |
--------------------------------------------------------------------------------
/Assets/TextMesh Pro/Shaders/TMP_SDF-Mobile SSD.shader:
--------------------------------------------------------------------------------
1 | // Simplified SDF shader:
2 | // - No Shading Option (bevel / bump / env map)
3 | // - No Glow Option
4 | // - Softness is applied on both side of the outline
5 |
6 | Shader "TextMeshPro/Mobile/Distance Field SSD" {
7 |
8 | Properties {
9 | [HDR]_FaceColor ("Face Color", Color) = (1,1,1,1)
10 | _FaceDilate ("Face Dilate", Range(-1,1)) = 0
11 |
12 | [HDR]_OutlineColor ("Outline Color", Color) = (0,0,0,1)
13 | _OutlineWidth ("Outline Thickness", Range(0,1)) = 0
14 | _OutlineSoftness ("Outline Softness", Range(0,1)) = 0
15 |
16 | [HDR]_UnderlayColor ("Border Color", Color) = (0,0,0,.5)
17 | _UnderlayOffsetX ("Border OffsetX", Range(-1,1)) = 0
18 | _UnderlayOffsetY ("Border OffsetY", Range(-1,1)) = 0
19 | _UnderlayDilate ("Border Dilate", Range(-1,1)) = 0
20 | _UnderlaySoftness ("Border Softness", Range(0,1)) = 0
21 |
22 | _WeightNormal ("Weight Normal", float) = 0
23 | _WeightBold ("Weight Bold", float) = .5
24 |
25 | _ShaderFlags ("Flags", float) = 0
26 | _ScaleRatioA ("Scale RatioA", float) = 1
27 | _ScaleRatioB ("Scale RatioB", float) = 1
28 | _ScaleRatioC ("Scale RatioC", float) = 1
29 |
30 | _MainTex ("Font Atlas", 2D) = "white" {}
31 | _TextureWidth ("Texture Width", float) = 512
32 | _TextureHeight ("Texture Height", float) = 512
33 | _GradientScale ("Gradient Scale", float) = 5
34 | _ScaleX ("Scale X", float) = 1
35 | _ScaleY ("Scale Y", float) = 1
36 | _PerspectiveFilter ("Perspective Correction", Range(0, 1)) = 0.875
37 | _Sharpness ("Sharpness", Range(-1,1)) = 0
38 |
39 | _VertexOffsetX ("Vertex OffsetX", float) = 0
40 | _VertexOffsetY ("Vertex OffsetY", float) = 0
41 |
42 | _ClipRect ("Clip Rect", vector) = (-32767, -32767, 32767, 32767)
43 | _MaskSoftnessX ("Mask SoftnessX", float) = 0
44 | _MaskSoftnessY ("Mask SoftnessY", float) = 0
45 | _MaskTex ("Mask Texture", 2D) = "white" {}
46 | _MaskInverse ("Inverse", float) = 0
47 | _MaskEdgeColor ("Edge Color", Color) = (1,1,1,1)
48 | _MaskEdgeSoftness ("Edge Softness", Range(0, 1)) = 0.01
49 | _MaskWipeControl ("Wipe Position", Range(0, 1)) = 0.5
50 |
51 | _StencilComp ("Stencil Comparison", Float) = 8
52 | _Stencil ("Stencil ID", Float) = 0
53 | _StencilOp ("Stencil Operation", Float) = 0
54 | _StencilWriteMask ("Stencil Write Mask", Float) = 255
55 | _StencilReadMask ("Stencil Read Mask", Float) = 255
56 |
57 | _CullMode ("Cull Mode", Float) = 0
58 | _ColorMask ("Color Mask", Float) = 15
59 | }
60 |
61 | SubShader {
62 | Tags {
63 | "Queue"="Transparent"
64 | "IgnoreProjector"="True"
65 | "RenderType"="Transparent"
66 | }
67 |
68 | Stencil
69 | {
70 | Ref [_Stencil]
71 | Comp [_StencilComp]
72 | Pass [_StencilOp]
73 | ReadMask [_StencilReadMask]
74 | WriteMask [_StencilWriteMask]
75 | }
76 |
77 | Cull [_CullMode]
78 | ZWrite Off
79 | Lighting Off
80 | Fog { Mode Off }
81 | ZTest [unity_GUIZTestMode]
82 | Blend One OneMinusSrcAlpha
83 | ColorMask [_ColorMask]
84 |
85 | Pass {
86 | CGPROGRAM
87 | #pragma vertex VertShader
88 | #pragma fragment PixShader
89 | #pragma shader_feature __ OUTLINE_ON
90 | #pragma shader_feature __ UNDERLAY_ON UNDERLAY_INNER
91 |
92 | #pragma multi_compile __ UNITY_UI_CLIP_RECT
93 | #pragma multi_compile __ UNITY_UI_ALPHACLIP
94 |
95 | #include "UnityCG.cginc"
96 | #include "UnityUI.cginc"
97 | #include "TMPro_Properties.cginc"
98 |
99 | #include "TMPro_Mobile.cginc"
100 |
101 | ENDCG
102 | }
103 | }
104 |
105 | CustomEditor "TMPro.EditorUtilities.TMP_SDFShaderGUI"
106 | }
107 |
--------------------------------------------------------------------------------
/Assets/Scripts/GamePlay/GameTest.cs:
--------------------------------------------------------------------------------
1 | using System.Collections.Generic;
2 | using UnityEngine;
3 | using UnityEngine.AddressableAssets;
4 |
5 | namespace GamePlay
6 | {
7 | ///
8 | /// 测试热更新中的一些特性,如泛型,RuntimeInitializeOnLoadMethod等
9 | ///
10 | public class GameTest
11 | {
12 | private const string PREFAB_PATH = "Assets/Prefabs/TestPrefab.prefab";
13 |
14 | private static GameTest _instance;
15 |
16 | public static GameTest Instance => _instance ??= new GameTest();
17 |
18 | private List _hotUpdateClassList = new();
19 |
20 | private List _hotUpdateStructList = new();
21 |
22 | #region Test RuntimeInitializeOnLoadMethod
23 |
24 | [RuntimeInitializeOnLoadMethod(RuntimeInitializeLoadType.BeforeSceneLoad)]
25 | private static void TestRuntimeInitialize1()
26 | {
27 | Debug.LogError("TestRuntimeInitialize1");
28 | }
29 |
30 | [RuntimeInitializeOnLoadMethod(RuntimeInitializeLoadType.AfterAssembliesLoaded)]
31 | private static void TestRuntimeInitialize2()
32 | {
33 | Debug.LogError("TestRuntimeInitialize2");
34 | }
35 |
36 | #endregion
37 |
38 | #region Test GenericType
39 |
40 | private class HotUpdateClass
41 | {
42 | public int i;
43 |
44 | public HotUpdateClass(int i)
45 | {
46 | this.i = i;
47 | }
48 | }
49 |
50 | private struct HotUpdateStruct
51 | {
52 | public int i;
53 |
54 | public HotUpdateStruct(int i)
55 | {
56 | this.i = i;
57 | }
58 | }
59 |
60 | private void TestGenericType()
61 | {
62 | for (int i = 0; i < 5; i++)
63 | {
64 | _hotUpdateClassList.Add(new(i));
65 | }
66 |
67 | for (int i = 0; i < 5; i++)
68 | {
69 | _hotUpdateStructList.Add(new(i));
70 | }
71 |
72 | for (int i = 0; i < 5; i++)
73 | {
74 | Debug.LogError(_hotUpdateClassList[i].i);
75 | }
76 |
77 | for (int i = 0; i < 5; i++)
78 | {
79 | Debug.LogError(_hotUpdateStructList[i].i);
80 | }
81 | }
82 |
83 | #endregion
84 |
85 | #region TestPrefab
86 |
87 | private void TestPrefab()
88 | {
89 | var prefab = Addressables.LoadAssetAsync(PREFAB_PATH).WaitForCompletion();
90 | if (prefab == null)
91 | {
92 | Debug.LogError($"Load Prefab Failed,path:{PREFAB_PATH}");
93 | return;
94 | }
95 |
96 | var instance = Object.Instantiate(prefab);
97 | }
98 |
99 | #endregion
100 |
101 | #region TestScriptableObject
102 |
103 | private void TestScriptableObject()
104 | {
105 | Debug.Log("ScriptableObjectTest Test");
106 | var scriptableObj = Addressables.LoadAssetAsync(ScriptableObjectTest.TEST_OBJ_PATH).WaitForCompletion();
107 | if (scriptableObj == null)
108 | {
109 | Debug.LogError($"Load ScriptableObject Failed,path:{ScriptableObjectTest.TEST_OBJ_PATH}");
110 | return;
111 | }
112 |
113 | Debug.Log($"ScriptableObjectTest Test intValue:{scriptableObj.intValue}");
114 | }
115 |
116 | #endregion
117 |
118 | public void Test()
119 | {
120 | TestGenericType();
121 | TestPrefab();
122 | TestScriptableObject();
123 | }
124 | }
125 | }
--------------------------------------------------------------------------------
/Assets/Scripts/Editor/BuildTool/AddressablePlayerBuilder.cs:
--------------------------------------------------------------------------------
1 | using System.Collections;
2 | using System.Collections.Generic;
3 | using System.IO;
4 | using UnityEditor;
5 | using UnityEditor.AddressableAssets;
6 | using UnityEditor.AddressableAssets.Build;
7 | using UnityEditor.AddressableAssets.Settings;
8 | using UnityEditor.AddressableAssets.Settings.GroupSchemas;
9 | using UnityEngine;
10 |
11 | namespace BuildTool
12 | {
13 | ///
14 | /// Addressable打包
15 | ///
16 | public static class AddressablePlayerBuilder
17 | {
18 | private const string CONTENT_UPDATE_GROUP_NAME = "Content Update";
19 | private const int RETRY_COUNT = 3;
20 | private const int TIME_OUT = 10;
21 |
22 | private static AddressableAssetSettings DefaultSettings => AddressableAssetSettingsDefaultObject.Settings;
23 |
24 | private static AddressableAssetGroup ContentUpdateGroup => DefaultSettings.groups.Find(g => g.name.Contains(CONTENT_UPDATE_GROUP_NAME));
25 |
26 | [MenuItem("Build/BuildContentAndPlayer")]
27 | private static void BuildContentAndPlayerWithHybridCLR()
28 | {
29 | HybridHotUpdateEditorHelper.SetEnableHotUpdate(true);
30 | HybridHotUpdateEditorHelper.BuildHotUpdateDlls(true);
31 | BuildContentAndPlayer();
32 | }
33 |
34 | [MenuItem("Build/UpdatePreviousBuild")]
35 | private static void UpdatePreviousPlayerWithHybridCLR()
36 | {
37 | HybridHotUpdateEditorHelper.BuildHotUpdateDlls(false);
38 | UpdatePreviousPlayer();
39 | }
40 |
41 | private static void BuildContentAndPlayer()
42 | {
43 | BuildAddressableContent();
44 | OnlyBuildPlayer();
45 | }
46 |
47 | private static void BuildAddressableContent()
48 | {
49 | DeleteContentUpdateGroup();
50 | AddressableAssetSettings.BuildPlayerContent(out AddressablesPlayerBuildResult result);
51 | bool success = string.IsNullOrEmpty(result.Error);
52 |
53 | if (!success)
54 | {
55 | Debug.LogError($"Addressables build error encountered: {result.Error}");
56 | }
57 | }
58 |
59 | private static void OnlyBuildPlayer()
60 | {
61 | var options = new BuildPlayerOptions();
62 | BuildPlayerOptions playerSettings = BuildPlayerWindow.DefaultBuildMethods.GetBuildPlayerOptions(options);
63 |
64 | BuildPipeline.BuildPlayer(playerSettings);
65 | }
66 |
67 | private static void UpdatePreviousPlayer()
68 | {
69 | DeleteContentUpdateGroup();
70 | var path = ContentUpdateScript.GetContentStateDataPath(false);
71 | if (string.IsNullOrEmpty(path) || !File.Exists(path))
72 | {
73 | Debug.LogError($"cant find the .bin file! path:{path}");
74 | return;
75 | }
76 |
77 | var modifiedEntries = ContentUpdateScript.GatherModifiedEntries(DefaultSettings, path);
78 | ContentUpdateScript.CreateContentUpdateGroup(DefaultSettings, modifiedEntries, CONTENT_UPDATE_GROUP_NAME);
79 | var schema = ContentUpdateGroup.GetSchema();
80 | //设置group的重试次数和超时时间,如果不设置,可能出现下载卡住的情况
81 | schema.RetryCount = RETRY_COUNT;
82 | schema.Timeout = TIME_OUT;
83 | ContentUpdateScript.BuildContentUpdate(DefaultSettings, path);
84 | }
85 |
86 | ///
87 | /// 删除content update group,还原group到最原始状态(但如果资源是直接放在某个group的根,会误删它)
88 | /// 建议使用版本控制工具,可以手动还原addressable group的更改,或者放到CI自动还原打包机更改,这样就可以屏蔽此函数了
89 | ///
90 | private static void DeleteContentUpdateGroup()
91 | {
92 | if(ContentUpdateGroup != null)
93 | DefaultSettings.RemoveGroup(ContentUpdateGroup);
94 | }
95 | }
96 | }
--------------------------------------------------------------------------------
/Assets/TextMesh Pro/Shaders/TMPro_Surface.cginc:
--------------------------------------------------------------------------------
1 | void VertShader(inout appdata_full v, out Input data)
2 | {
3 | v.vertex.x += _VertexOffsetX;
4 | v.vertex.y += _VertexOffsetY;
5 |
6 | UNITY_INITIALIZE_OUTPUT(Input, data);
7 |
8 | float bold = step(v.texcoord1.y, 0);
9 |
10 | // Generate normal for backface
11 | float3 view = ObjSpaceViewDir(v.vertex);
12 | v.normal *= sign(dot(v.normal, view));
13 |
14 | #if USE_DERIVATIVE
15 | data.param.y = 1;
16 | #else
17 | float4 vert = v.vertex;
18 | float4 vPosition = UnityObjectToClipPos(vert);
19 | float2 pixelSize = vPosition.w;
20 |
21 | pixelSize /= float2(_ScaleX, _ScaleY) * mul((float2x2)UNITY_MATRIX_P, _ScreenParams.xy);
22 | float scale = rsqrt(dot(pixelSize, pixelSize));
23 | scale *= abs(v.texcoord1.y) * _GradientScale * (_Sharpness + 1);
24 | scale = lerp(scale * (1 - _PerspectiveFilter), scale, abs(dot(UnityObjectToWorldNormal(v.normal.xyz), normalize(WorldSpaceViewDir(vert)))));
25 | data.param.y = scale;
26 | #endif
27 |
28 | data.param.x = (lerp(_WeightNormal, _WeightBold, bold) / 4.0 + _FaceDilate) * _ScaleRatioA * 0.5; //
29 |
30 | v.texcoord1.xy = UnpackUV(v.texcoord1.x);
31 | data.viewDirEnv = mul((float3x3)_EnvMatrix, WorldSpaceViewDir(v.vertex));
32 | }
33 |
34 | void PixShader(Input input, inout SurfaceOutput o)
35 | {
36 |
37 | #if USE_DERIVATIVE
38 | float2 pixelSize = float2(ddx(input.uv_MainTex.y), ddy(input.uv_MainTex.y));
39 | pixelSize *= _TextureWidth * .75;
40 | float scale = rsqrt(dot(pixelSize, pixelSize)) * _GradientScale * (_Sharpness + 1);
41 | #else
42 | float scale = input.param.y;
43 | #endif
44 |
45 | // Signed distance
46 | float c = tex2D(_MainTex, input.uv_MainTex).a;
47 | float sd = (.5 - c - input.param.x) * scale + .5;
48 | float outline = _OutlineWidth*_ScaleRatioA * scale;
49 | float softness = _OutlineSoftness*_ScaleRatioA * scale;
50 |
51 | // Color & Alpha
52 | float4 faceColor = _FaceColor;
53 | float4 outlineColor = _OutlineColor;
54 | faceColor *= input.color;
55 | outlineColor.a *= input.color.a;
56 | faceColor *= tex2D(_FaceTex, float2(input.uv2_FaceTex.x + _FaceUVSpeedX * _Time.y, input.uv2_FaceTex.y + _FaceUVSpeedY * _Time.y));
57 | outlineColor *= tex2D(_OutlineTex, float2(input.uv2_OutlineTex.x + _OutlineUVSpeedX * _Time.y, input.uv2_OutlineTex.y + _OutlineUVSpeedY * _Time.y));
58 | faceColor = GetColor(sd, faceColor, outlineColor, outline, softness);
59 | faceColor.rgb /= max(faceColor.a, 0.0001);
60 |
61 | #if BEVEL_ON
62 | float3 delta = float3(1.0 / _TextureWidth, 1.0 / _TextureHeight, 0.0);
63 |
64 | float4 smp4x = {tex2D(_MainTex, input.uv_MainTex - delta.xz).a,
65 | tex2D(_MainTex, input.uv_MainTex + delta.xz).a,
66 | tex2D(_MainTex, input.uv_MainTex - delta.zy).a,
67 | tex2D(_MainTex, input.uv_MainTex + delta.zy).a };
68 |
69 | // Face Normal
70 | float3 n = GetSurfaceNormal(smp4x, input.param.x);
71 |
72 | // Bumpmap
73 | float3 bump = UnpackNormal(tex2D(_BumpMap, input.uv2_FaceTex.xy)).xyz;
74 | bump *= lerp(_BumpFace, _BumpOutline, saturate(sd + outline * 0.5));
75 | bump = lerp(float3(0, 0, 1), bump, faceColor.a);
76 | n = normalize(n - bump);
77 |
78 | // Cubemap reflection
79 | fixed4 reflcol = texCUBE(_Cube, reflect(input.viewDirEnv, mul((float3x3)unity_ObjectToWorld, n)));
80 | float3 emission = reflcol.rgb * lerp(_ReflectFaceColor.rgb, _ReflectOutlineColor.rgb, saturate(sd + outline * 0.5)) * faceColor.a;
81 | #else
82 | float3 n = float3(0, 0, -1);
83 | float3 emission = float3(0, 0, 0);
84 | #endif
85 |
86 | #if GLOW_ON
87 | float4 glowColor = GetGlowColor(sd, scale);
88 | glowColor.a *= input.color.a;
89 | emission += glowColor.rgb*glowColor.a;
90 | faceColor = BlendARGB(glowColor, faceColor);
91 | faceColor.rgb /= max(faceColor.a, 0.0001);
92 | #endif
93 |
94 | // Set Standard output structure
95 | o.Albedo = faceColor.rgb;
96 | o.Normal = -n;
97 | o.Emission = emission;
98 | o.Specular = lerp(_FaceShininess, _OutlineShininess, saturate(sd + outline * 0.5));
99 | o.Gloss = 1;
100 | o.Alpha = faceColor.a;
101 | }
102 |
--------------------------------------------------------------------------------
/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 | }
--------------------------------------------------------------------------------
/Assets/TextMesh Pro/Shaders/TMP_Bitmap.shader:
--------------------------------------------------------------------------------
1 | Shader "TextMeshPro/Bitmap" {
2 |
3 | Properties {
4 | _MainTex ("Font Atlas", 2D) = "white" {}
5 | _FaceTex ("Font Texture", 2D) = "white" {}
6 | [HDR]_FaceColor ("Text Color", Color) = (1,1,1,1)
7 |
8 | _VertexOffsetX ("Vertex OffsetX", float) = 0
9 | _VertexOffsetY ("Vertex OffsetY", float) = 0
10 | _MaskSoftnessX ("Mask SoftnessX", float) = 0
11 | _MaskSoftnessY ("Mask SoftnessY", float) = 0
12 |
13 | _ClipRect("Clip Rect", vector) = (-32767, -32767, 32767, 32767)
14 |
15 | _StencilComp("Stencil Comparison", Float) = 8
16 | _Stencil("Stencil ID", Float) = 0
17 | _StencilOp("Stencil Operation", Float) = 0
18 | _StencilWriteMask("Stencil Write Mask", Float) = 255
19 | _StencilReadMask("Stencil Read Mask", Float) = 255
20 |
21 | _CullMode("Cull Mode", Float) = 0
22 | _ColorMask("Color Mask", Float) = 15
23 | }
24 |
25 | SubShader{
26 |
27 | Tags { "Queue" = "Transparent" "IgnoreProjector" = "True" "RenderType" = "Transparent" }
28 |
29 | Stencil
30 | {
31 | Ref[_Stencil]
32 | Comp[_StencilComp]
33 | Pass[_StencilOp]
34 | ReadMask[_StencilReadMask]
35 | WriteMask[_StencilWriteMask]
36 | }
37 |
38 |
39 | Lighting Off
40 | Cull [_CullMode]
41 | ZTest [unity_GUIZTestMode]
42 | ZWrite Off
43 | Fog { Mode Off }
44 | Blend SrcAlpha OneMinusSrcAlpha
45 | ColorMask[_ColorMask]
46 |
47 | Pass {
48 | CGPROGRAM
49 | #pragma vertex vert
50 | #pragma fragment frag
51 |
52 | #pragma multi_compile __ UNITY_UI_CLIP_RECT
53 | #pragma multi_compile __ UNITY_UI_ALPHACLIP
54 |
55 |
56 | #include "UnityCG.cginc"
57 |
58 | struct appdata_t {
59 | float4 vertex : POSITION;
60 | fixed4 color : COLOR;
61 | float2 texcoord0 : TEXCOORD0;
62 | float2 texcoord1 : TEXCOORD1;
63 | };
64 |
65 | struct v2f {
66 | float4 vertex : SV_POSITION;
67 | fixed4 color : COLOR;
68 | float2 texcoord0 : TEXCOORD0;
69 | float2 texcoord1 : TEXCOORD1;
70 | float4 mask : TEXCOORD2;
71 | };
72 |
73 | uniform sampler2D _MainTex;
74 | uniform sampler2D _FaceTex;
75 | uniform float4 _FaceTex_ST;
76 | uniform fixed4 _FaceColor;
77 |
78 | uniform float _VertexOffsetX;
79 | uniform float _VertexOffsetY;
80 | uniform float4 _ClipRect;
81 | uniform float _MaskSoftnessX;
82 | uniform float _MaskSoftnessY;
83 |
84 | float2 UnpackUV(float uv)
85 | {
86 | float2 output;
87 | output.x = floor(uv / 4096);
88 | output.y = uv - 4096 * output.x;
89 |
90 | return output * 0.001953125;
91 | }
92 |
93 | v2f vert (appdata_t v)
94 | {
95 | float4 vert = v.vertex;
96 | vert.x += _VertexOffsetX;
97 | vert.y += _VertexOffsetY;
98 |
99 | vert.xy += (vert.w * 0.5) / _ScreenParams.xy;
100 |
101 | float4 vPosition = UnityPixelSnap(UnityObjectToClipPos(vert));
102 |
103 | fixed4 faceColor = v.color;
104 | faceColor *= _FaceColor;
105 |
106 | v2f OUT;
107 | OUT.vertex = vPosition;
108 | OUT.color = faceColor;
109 | OUT.texcoord0 = v.texcoord0;
110 | OUT.texcoord1 = TRANSFORM_TEX(UnpackUV(v.texcoord1), _FaceTex);
111 | float2 pixelSize = vPosition.w;
112 | pixelSize /= abs(float2(_ScreenParams.x * UNITY_MATRIX_P[0][0], _ScreenParams.y * UNITY_MATRIX_P[1][1]));
113 |
114 | // Clamp _ClipRect to 16bit.
115 | float4 clampedRect = clamp(_ClipRect, -2e10, 2e10);
116 | OUT.mask = float4(vert.xy * 2 - clampedRect.xy - clampedRect.zw, 0.25 / (0.25 * half2(_MaskSoftnessX, _MaskSoftnessY) + pixelSize.xy));
117 |
118 | return OUT;
119 | }
120 |
121 | fixed4 frag (v2f IN) : SV_Target
122 | {
123 | fixed4 color = tex2D(_MainTex, IN.texcoord0);
124 | color = fixed4 (tex2D(_FaceTex, IN.texcoord1).rgb * IN.color.rgb, IN.color.a * color.a);
125 |
126 | // Alternative implementation to UnityGet2DClipping with support for softness.
127 | #if UNITY_UI_CLIP_RECT
128 | half2 m = saturate((_ClipRect.zw - _ClipRect.xy - abs(IN.mask.xy)) * IN.mask.zw);
129 | color *= m.x * m.y;
130 | #endif
131 |
132 | #if UNITY_UI_ALPHACLIP
133 | clip(color.a - 0.001);
134 | #endif
135 |
136 | return color;
137 | }
138 | ENDCG
139 | }
140 | }
141 |
142 | CustomEditor "TMPro.EditorUtilities.TMP_BitmapShaderGUI"
143 | }
144 |
--------------------------------------------------------------------------------
/Assets/TextMesh Pro/Shaders/TMP_SDF-Surface-Mobile.shader:
--------------------------------------------------------------------------------
1 | // Simplified version of the SDF Surface shader :
2 | // - No support for Bevel, Bump or envmap
3 | // - Diffuse only lighting
4 | // - Fully supports only 1 directional light. Other lights can affect it, but it will be per-vertex/SH.
5 |
6 | Shader "TextMeshPro/Mobile/Distance Field (Surface)" {
7 |
8 | Properties {
9 | _FaceTex ("Fill Texture", 2D) = "white" {}
10 | [HDR]_FaceColor ("Fill Color", Color) = (1,1,1,1)
11 | _FaceDilate ("Face Dilate", Range(-1,1)) = 0
12 |
13 | [HDR]_OutlineColor ("Outline Color", Color) = (0,0,0,1)
14 | _OutlineTex ("Outline Texture", 2D) = "white" {}
15 | _OutlineWidth ("Outline Thickness", Range(0, 1)) = 0
16 | _OutlineSoftness ("Outline Softness", Range(0,1)) = 0
17 |
18 | [HDR]_GlowColor ("Color", Color) = (0, 1, 0, 0.5)
19 | _GlowOffset ("Offset", Range(-1,1)) = 0
20 | _GlowInner ("Inner", Range(0,1)) = 0.05
21 | _GlowOuter ("Outer", Range(0,1)) = 0.05
22 | _GlowPower ("Falloff", Range(1, 0)) = 0.75
23 |
24 | _WeightNormal ("Weight Normal", float) = 0
25 | _WeightBold ("Weight Bold", float) = 0.5
26 |
27 | // Should not be directly exposed to the user
28 | _ShaderFlags ("Flags", float) = 0
29 | _ScaleRatioA ("Scale RatioA", float) = 1
30 | _ScaleRatioB ("Scale RatioB", float) = 1
31 | _ScaleRatioC ("Scale RatioC", float) = 1
32 |
33 | _MainTex ("Font Atlas", 2D) = "white" {}
34 | _TextureWidth ("Texture Width", float) = 512
35 | _TextureHeight ("Texture Height", float) = 512
36 | _GradientScale ("Gradient Scale", float) = 5.0
37 | _ScaleX ("Scale X", float) = 1.0
38 | _ScaleY ("Scale Y", float) = 1.0
39 | _PerspectiveFilter ("Perspective Correction", Range(0, 1)) = 0.875
40 | _Sharpness ("Sharpness", Range(-1,1)) = 0
41 |
42 | _VertexOffsetX ("Vertex OffsetX", float) = 0
43 | _VertexOffsetY ("Vertex OffsetY", float) = 0
44 |
45 | _CullMode ("Cull Mode", Float) = 0
46 | //_MaskCoord ("Mask Coords", vector) = (0,0,0,0)
47 | //_MaskSoftness ("Mask Softness", float) = 0
48 | }
49 |
50 | SubShader {
51 |
52 | Tags {
53 | "Queue"="Transparent"
54 | "IgnoreProjector"="True"
55 | "RenderType"="Transparent"
56 | }
57 |
58 | LOD 300
59 | Cull [_CullMode]
60 |
61 | CGPROGRAM
62 | #pragma surface PixShader Lambert alpha:blend vertex:VertShader noforwardadd nolightmap nodirlightmap
63 | #pragma target 3.0
64 | #pragma shader_feature __ GLOW_ON
65 |
66 | #include "TMPro_Properties.cginc"
67 | #include "TMPro.cginc"
68 |
69 | half _FaceShininess;
70 | half _OutlineShininess;
71 |
72 | struct Input
73 | {
74 | fixed4 color : COLOR;
75 | float2 uv_MainTex;
76 | float2 uv2_FaceTex;
77 | float2 uv2_OutlineTex;
78 | float2 param; // Weight, Scale
79 | float3 viewDirEnv;
80 | };
81 |
82 | #include "TMPro_Surface.cginc"
83 |
84 | ENDCG
85 |
86 | // Pass to render object as a shadow caster
87 | Pass
88 | {
89 | Name "Caster"
90 | Tags { "LightMode" = "ShadowCaster" }
91 | Offset 1, 1
92 |
93 | Fog {Mode Off}
94 | ZWrite On ZTest LEqual Cull Off
95 |
96 | CGPROGRAM
97 | #pragma vertex vert
98 | #pragma fragment frag
99 | #pragma multi_compile_shadowcaster
100 | #include "UnityCG.cginc"
101 |
102 | struct v2f {
103 | V2F_SHADOW_CASTER;
104 | float2 uv : TEXCOORD1;
105 | float2 uv2 : TEXCOORD3;
106 | float alphaClip : TEXCOORD2;
107 | };
108 |
109 | uniform float4 _MainTex_ST;
110 | uniform float4 _OutlineTex_ST;
111 | float _OutlineWidth;
112 | float _FaceDilate;
113 | float _ScaleRatioA;
114 |
115 | v2f vert( appdata_base v )
116 | {
117 | v2f o;
118 | TRANSFER_SHADOW_CASTER(o)
119 | o.uv = TRANSFORM_TEX(v.texcoord, _MainTex);
120 | o.uv2 = TRANSFORM_TEX(v.texcoord, _OutlineTex);
121 | o.alphaClip = o.alphaClip = (1.0 - _OutlineWidth * _ScaleRatioA - _FaceDilate * _ScaleRatioA) / 2;
122 | return o;
123 | }
124 |
125 | uniform sampler2D _MainTex;
126 |
127 | float4 frag(v2f i) : COLOR
128 | {
129 | fixed4 texcol = tex2D(_MainTex, i.uv).a;
130 | clip(texcol.a - i.alphaClip);
131 | SHADOW_CASTER_FRAGMENT(i)
132 | }
133 | ENDCG
134 | }
135 | }
136 |
137 | CustomEditor "TMPro.EditorUtilities.TMP_SDFShaderGUI"
138 | }
139 |
--------------------------------------------------------------------------------
/Assets/TextMesh Pro/Shaders/TMP_Bitmap-Custom-Atlas.shader:
--------------------------------------------------------------------------------
1 | Shader "TextMeshPro/Bitmap Custom Atlas" {
2 |
3 | Properties {
4 | _MainTex ("Font Atlas", 2D) = "white" {}
5 | _FaceTex ("Font Texture", 2D) = "white" {}
6 | [HDR]_FaceColor ("Text Color", Color) = (1,1,1,1)
7 |
8 | _VertexOffsetX ("Vertex OffsetX", float) = 0
9 | _VertexOffsetY ("Vertex OffsetY", float) = 0
10 | _MaskSoftnessX ("Mask SoftnessX", float) = 0
11 | _MaskSoftnessY ("Mask SoftnessY", float) = 0
12 |
13 | _ClipRect("Clip Rect", vector) = (-32767, -32767, 32767, 32767)
14 | _Padding ("Padding", float) = 0
15 |
16 | _StencilComp("Stencil Comparison", Float) = 8
17 | _Stencil("Stencil ID", Float) = 0
18 | _StencilOp("Stencil Operation", Float) = 0
19 | _StencilWriteMask("Stencil Write Mask", Float) = 255
20 | _StencilReadMask("Stencil Read Mask", Float) = 255
21 |
22 | _CullMode("Cull Mode", Float) = 0
23 | _ColorMask("Color Mask", Float) = 15
24 | }
25 |
26 | SubShader{
27 |
28 | Tags { "Queue" = "Transparent" "IgnoreProjector" = "True" "RenderType" = "Transparent" }
29 |
30 | Stencil
31 | {
32 | Ref[_Stencil]
33 | Comp[_StencilComp]
34 | Pass[_StencilOp]
35 | ReadMask[_StencilReadMask]
36 | WriteMask[_StencilWriteMask]
37 | }
38 |
39 |
40 | Lighting Off
41 | Cull [_CullMode]
42 | ZTest [unity_GUIZTestMode]
43 | ZWrite Off
44 | Fog { Mode Off }
45 | Blend SrcAlpha OneMinusSrcAlpha
46 | ColorMask[_ColorMask]
47 |
48 | Pass {
49 | CGPROGRAM
50 | #pragma vertex vert
51 | #pragma fragment frag
52 |
53 | #pragma multi_compile __ UNITY_UI_CLIP_RECT
54 | #pragma multi_compile __ UNITY_UI_ALPHACLIP
55 |
56 |
57 | #include "UnityCG.cginc"
58 |
59 | struct appdata_t {
60 | float4 vertex : POSITION;
61 | fixed4 color : COLOR;
62 | float2 texcoord0 : TEXCOORD0;
63 | float2 texcoord1 : TEXCOORD1;
64 | };
65 |
66 | struct v2f {
67 | float4 vertex : SV_POSITION;
68 | fixed4 color : COLOR;
69 | float2 texcoord0 : TEXCOORD0;
70 | float2 texcoord1 : TEXCOORD1;
71 | float4 mask : TEXCOORD2;
72 | };
73 |
74 | uniform sampler2D _MainTex;
75 | uniform sampler2D _FaceTex;
76 | uniform float4 _FaceTex_ST;
77 | uniform fixed4 _FaceColor;
78 |
79 | uniform float _VertexOffsetX;
80 | uniform float _VertexOffsetY;
81 | uniform float4 _ClipRect;
82 | uniform float _MaskSoftnessX;
83 | uniform float _MaskSoftnessY;
84 |
85 | float2 UnpackUV(float uv)
86 | {
87 | float2 output;
88 | output.x = floor(uv / 4096);
89 | output.y = uv - 4096 * output.x;
90 |
91 | return output * 0.001953125;
92 | }
93 |
94 | v2f vert (appdata_t v)
95 | {
96 | float4 vert = v.vertex;
97 | vert.x += _VertexOffsetX;
98 | vert.y += _VertexOffsetY;
99 |
100 | vert.xy += (vert.w * 0.5) / _ScreenParams.xy;
101 |
102 | float4 vPosition = UnityPixelSnap(UnityObjectToClipPos(vert));
103 |
104 | fixed4 faceColor = v.color;
105 | faceColor *= _FaceColor;
106 |
107 | v2f OUT;
108 | OUT.vertex = vPosition;
109 | OUT.color = faceColor;
110 | OUT.texcoord0 = v.texcoord0;
111 | OUT.texcoord1 = TRANSFORM_TEX(UnpackUV(v.texcoord1), _FaceTex);
112 | float2 pixelSize = vPosition.w;
113 | pixelSize /= abs(float2(_ScreenParams.x * UNITY_MATRIX_P[0][0], _ScreenParams.y * UNITY_MATRIX_P[1][1]));
114 |
115 | // Clamp _ClipRect to 16bit.
116 | float4 clampedRect = clamp(_ClipRect, -2e10, 2e10);
117 | OUT.mask = float4(vert.xy * 2 - clampedRect.xy - clampedRect.zw, 0.25 / (0.25 * half2(_MaskSoftnessX, _MaskSoftnessY) + pixelSize.xy));
118 |
119 | return OUT;
120 | }
121 |
122 | fixed4 frag (v2f IN) : SV_Target
123 | {
124 | fixed4 color = tex2D(_MainTex, IN.texcoord0) * tex2D(_FaceTex, IN.texcoord1) * IN.color;
125 |
126 | // Alternative implementation to UnityGet2DClipping with support for softness.
127 | #if UNITY_UI_CLIP_RECT
128 | half2 m = saturate((_ClipRect.zw - _ClipRect.xy - abs(IN.mask.xy)) * IN.mask.zw);
129 | color *= m.x * m.y;
130 | #endif
131 |
132 | #if UNITY_UI_ALPHACLIP
133 | clip(color.a - 0.001);
134 | #endif
135 |
136 | return color;
137 | }
138 | ENDCG
139 | }
140 | }
141 |
142 | CustomEditor "TMPro.EditorUtilities.TMP_BitmapShaderGUI"
143 | }
144 |
--------------------------------------------------------------------------------
/Assets/TextMesh Pro/Shaders/TMP_Bitmap-Mobile.shader:
--------------------------------------------------------------------------------
1 | Shader "TextMeshPro/Mobile/Bitmap" {
2 |
3 | Properties {
4 | _MainTex ("Font Atlas", 2D) = "white" {}
5 | [HDR]_Color ("Text Color", Color) = (1,1,1,1)
6 | _DiffusePower ("Diffuse Power", Range(1.0,4.0)) = 1.0
7 |
8 | _VertexOffsetX("Vertex OffsetX", float) = 0
9 | _VertexOffsetY("Vertex OffsetY", float) = 0
10 | _MaskSoftnessX("Mask SoftnessX", float) = 0
11 | _MaskSoftnessY("Mask SoftnessY", float) = 0
12 |
13 | _ClipRect("Clip Rect", vector) = (-32767, -32767, 32767, 32767)
14 |
15 | _StencilComp("Stencil Comparison", Float) = 8
16 | _Stencil("Stencil ID", Float) = 0
17 | _StencilOp("Stencil Operation", Float) = 0
18 | _StencilWriteMask("Stencil Write Mask", Float) = 255
19 | _StencilReadMask("Stencil Read Mask", Float) = 255
20 |
21 | _CullMode("Cull Mode", Float) = 0
22 | _ColorMask("Color Mask", Float) = 15
23 | }
24 |
25 | SubShader {
26 |
27 | Tags { "Queue"="Transparent" "IgnoreProjector"="True" "RenderType"="Transparent" }
28 |
29 | Stencil
30 | {
31 | Ref[_Stencil]
32 | Comp[_StencilComp]
33 | Pass[_StencilOp]
34 | ReadMask[_StencilReadMask]
35 | WriteMask[_StencilWriteMask]
36 | }
37 |
38 |
39 | Lighting Off
40 | Cull [_CullMode]
41 | ZTest [unity_GUIZTestMode]
42 | ZWrite Off
43 | Fog { Mode Off }
44 | Blend SrcAlpha OneMinusSrcAlpha
45 | ColorMask[_ColorMask]
46 |
47 | Pass {
48 | CGPROGRAM
49 | #pragma vertex vert
50 | #pragma fragment frag
51 | #pragma fragmentoption ARB_precision_hint_fastest
52 |
53 | #pragma multi_compile __ UNITY_UI_CLIP_RECT
54 | #pragma multi_compile __ UNITY_UI_ALPHACLIP
55 |
56 |
57 | #include "UnityCG.cginc"
58 |
59 | struct appdata_t {
60 | float4 vertex : POSITION;
61 | fixed4 color : COLOR;
62 | float2 texcoord0 : TEXCOORD0;
63 | float2 texcoord1 : TEXCOORD1;
64 | };
65 |
66 | struct v2f {
67 | float4 vertex : POSITION;
68 | fixed4 color : COLOR;
69 | float2 texcoord0 : TEXCOORD0;
70 | float4 mask : TEXCOORD2;
71 | };
72 |
73 | sampler2D _MainTex;
74 | fixed4 _Color;
75 | float _DiffusePower;
76 |
77 | uniform float _VertexOffsetX;
78 | uniform float _VertexOffsetY;
79 | uniform float4 _ClipRect;
80 | uniform float _MaskSoftnessX;
81 | uniform float _MaskSoftnessY;
82 |
83 | v2f vert (appdata_t v)
84 | {
85 | v2f OUT;
86 | float4 vert = v.vertex;
87 | vert.x += _VertexOffsetX;
88 | vert.y += _VertexOffsetY;
89 |
90 | vert.xy += (vert.w * 0.5) / _ScreenParams.xy;
91 |
92 | OUT.vertex = UnityPixelSnap(UnityObjectToClipPos(vert));
93 | OUT.color = v.color;
94 | OUT.color *= _Color;
95 | OUT.color.rgb *= _DiffusePower;
96 | OUT.texcoord0 = v.texcoord0;
97 |
98 | float2 pixelSize = OUT.vertex.w;
99 | //pixelSize /= abs(float2(_ScreenParams.x * UNITY_MATRIX_P[0][0], _ScreenParams.y * UNITY_MATRIX_P[1][1]));
100 |
101 | // Clamp _ClipRect to 16bit.
102 | float4 clampedRect = clamp(_ClipRect, -2e10, 2e10);
103 | OUT.mask = float4(vert.xy * 2 - clampedRect.xy - clampedRect.zw, 0.25 / (0.25 * half2(_MaskSoftnessX, _MaskSoftnessY) + pixelSize.xy));
104 |
105 | return OUT;
106 | }
107 |
108 | fixed4 frag (v2f IN) : COLOR
109 | {
110 | fixed4 color = fixed4(IN.color.rgb, IN.color.a * tex2D(_MainTex, IN.texcoord0).a);
111 |
112 | // Alternative implementation to UnityGet2DClipping with support for softness.
113 | #if UNITY_UI_CLIP_RECT
114 | half2 m = saturate((_ClipRect.zw - _ClipRect.xy - abs(IN.mask.xy)) * IN.mask.zw);
115 | color *= m.x * m.y;
116 | #endif
117 |
118 | #if UNITY_UI_ALPHACLIP
119 | clip(color.a - 0.001);
120 | #endif
121 |
122 | return color;
123 | }
124 | ENDCG
125 | }
126 | }
127 |
128 | SubShader {
129 | Tags { "Queue"="Transparent" "IgnoreProjector"="True" "RenderType"="Transparent" }
130 | Lighting Off Cull Off ZTest Always ZWrite Off Fog { Mode Off }
131 | Blend SrcAlpha OneMinusSrcAlpha
132 | BindChannels {
133 | Bind "Color", color
134 | Bind "Vertex", vertex
135 | Bind "TexCoord", texcoord0
136 | }
137 | Pass {
138 | SetTexture [_MainTex] {
139 | constantColor [_Color] combine constant * primary, constant * texture
140 | }
141 | }
142 | }
143 |
144 | CustomEditor "TMPro.EditorUtilities.TMP_BitmapShaderGUI"
145 | }
146 |
--------------------------------------------------------------------------------
/Assets/TextMesh Pro/Fonts/LiberationSans - OFL.txt:
--------------------------------------------------------------------------------
1 | Digitized data copyright (c) 2010 Google Corporation
2 | with Reserved Font Arimo, Tinos and Cousine.
3 | Copyright (c) 2012 Red Hat, Inc.
4 | with Reserved Font Name Liberation.
5 |
6 | This Font Software is licensed under the SIL Open Font License, Version 1.1.
7 | This license is copied below, and is also available with a FAQ at: http://scripts.sil.org/OFL
8 |
9 | -----------------------------------------------------------
10 | SIL OPEN FONT LICENSE Version 1.1 - 26 February 2007
11 | -----------------------------------------------------------
12 |
13 | PREAMBLE
14 | The goals of the Open Font License (OFL) are to stimulate worldwide development of collaborative font projects, to support the font creation efforts of academic and linguistic communities, and to provide a free and open framework in which fonts may be shared and improved in partnership with others.
15 |
16 | The OFL allows the licensed fonts to be used, studied, modified and redistributed freely as long as they are not sold by themselves. The fonts, including any derivative works, can be bundled, embedded, redistributed and/or sold with any software provided that any reserved names are not used by derivative works. The fonts and derivatives, however, cannot be released under any other type of license. The requirement for fonts to remain under this license does not apply to any document created using the fonts or their derivatives.
17 |
18 | DEFINITIONS
19 | "Font Software" refers to the set of files released by the Copyright Holder(s) under this license and clearly marked as such. This may include source files, build scripts and documentation.
20 |
21 | "Reserved Font Name" refers to any names specified as such after the copyright statement(s).
22 |
23 | "Original Version" refers to the collection of Font Software components as distributed by the Copyright Holder(s).
24 |
25 | "Modified Version" refers to any derivative made by adding to, deleting, or substituting -- in part or in whole -- any of the components of the Original Version, by changing formats or by porting the Font Software to a new environment.
26 |
27 | "Author" refers to any designer, engineer, programmer, technical writer or other person who contributed to the Font Software.
28 |
29 | PERMISSION & CONDITIONS
30 | Permission is hereby granted, free of charge, to any person obtaining a copy of the Font Software, to use, study, copy, merge, embed, modify, redistribute, and sell modified and unmodified copies of the Font Software, subject to the following conditions:
31 |
32 | 1) Neither the Font Software nor any of its individual components, in Original or Modified Versions, may be sold by itself.
33 |
34 | 2) Original or Modified Versions of the Font Software may be bundled, redistributed and/or sold with any software, provided that each copy contains the above copyright notice and this license. These can be included either as stand-alone text files, human-readable headers or in the appropriate machine-readable metadata fields within text or binary files as long as those fields can be easily viewed by the user.
35 |
36 | 3) No Modified Version of the Font Software may use the Reserved Font Name(s) unless explicit written permission is granted by the corresponding Copyright Holder. This restriction only applies to the primary font name as presented to the users.
37 |
38 | 4) The name(s) of the Copyright Holder(s) or the Author(s) of the Font Software shall not be used to promote, endorse or advertise any Modified Version, except to acknowledge the contribution(s) of the Copyright Holder(s) and the Author(s) or with their explicit written permission.
39 |
40 | 5) The Font Software, modified or unmodified, in part or in whole, must be distributed entirely under this license, and must not be distributed under any other license. The requirement for fonts to remain under this license does not apply to any document created using the Font Software.
41 |
42 | TERMINATION
43 | This license becomes null and void if any of the above conditions are not met.
44 |
45 | DISCLAIMER
46 | THE FONT SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF COPYRIGHT, PATENT, TRADEMARK, OR OTHER RIGHT. IN NO EVENT SHALL THE COPYRIGHT HOLDER BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, INCLUDING ANY GENERAL, SPECIAL, INDIRECT, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF THE USE OR INABILITY TO USE THE FONT SOFTWARE OR FROM OTHER DEALINGS IN THE FONT SOFTWARE.
--------------------------------------------------------------------------------
/Assets/TextMesh Pro/Sprites/EmojiOne.json:
--------------------------------------------------------------------------------
1 | {"frames": [
2 |
3 | {
4 | "filename": "1f60a.png",
5 | "frame": {"x":0,"y":0,"w":128,"h":128},
6 | "rotated": false,
7 | "trimmed": false,
8 | "spriteSourceSize": {"x":0,"y":0,"w":128,"h":128},
9 | "sourceSize": {"w":128,"h":128},
10 | "pivot": {"x":0.5,"y":0.5}
11 | },
12 | {
13 | "filename": "1f60b.png",
14 | "frame": {"x":128,"y":0,"w":128,"h":128},
15 | "rotated": false,
16 | "trimmed": false,
17 | "spriteSourceSize": {"x":0,"y":0,"w":128,"h":128},
18 | "sourceSize": {"w":128,"h":128},
19 | "pivot": {"x":0.5,"y":0.5}
20 | },
21 | {
22 | "filename": "1f60d.png",
23 | "frame": {"x":256,"y":0,"w":128,"h":128},
24 | "rotated": false,
25 | "trimmed": false,
26 | "spriteSourceSize": {"x":0,"y":0,"w":128,"h":128},
27 | "sourceSize": {"w":128,"h":128},
28 | "pivot": {"x":0.5,"y":0.5}
29 | },
30 | {
31 | "filename": "1f60e.png",
32 | "frame": {"x":384,"y":0,"w":128,"h":128},
33 | "rotated": false,
34 | "trimmed": false,
35 | "spriteSourceSize": {"x":0,"y":0,"w":128,"h":128},
36 | "sourceSize": {"w":128,"h":128},
37 | "pivot": {"x":0.5,"y":0.5}
38 | },
39 | {
40 | "filename": "1f600.png",
41 | "frame": {"x":0,"y":128,"w":128,"h":128},
42 | "rotated": false,
43 | "trimmed": false,
44 | "spriteSourceSize": {"x":0,"y":0,"w":128,"h":128},
45 | "sourceSize": {"w":128,"h":128},
46 | "pivot": {"x":0.5,"y":0.5}
47 | },
48 | {
49 | "filename": "1f601.png",
50 | "frame": {"x":128,"y":128,"w":128,"h":128},
51 | "rotated": false,
52 | "trimmed": false,
53 | "spriteSourceSize": {"x":0,"y":0,"w":128,"h":128},
54 | "sourceSize": {"w":128,"h":128},
55 | "pivot": {"x":0.5,"y":0.5}
56 | },
57 | {
58 | "filename": "1f602.png",
59 | "frame": {"x":256,"y":128,"w":128,"h":128},
60 | "rotated": false,
61 | "trimmed": false,
62 | "spriteSourceSize": {"x":0,"y":0,"w":128,"h":128},
63 | "sourceSize": {"w":128,"h":128},
64 | "pivot": {"x":0.5,"y":0.5}
65 | },
66 | {
67 | "filename": "1f603.png",
68 | "frame": {"x":384,"y":128,"w":128,"h":128},
69 | "rotated": false,
70 | "trimmed": false,
71 | "spriteSourceSize": {"x":0,"y":0,"w":128,"h":128},
72 | "sourceSize": {"w":128,"h":128},
73 | "pivot": {"x":0.5,"y":0.5}
74 | },
75 | {
76 | "filename": "1f604.png",
77 | "frame": {"x":0,"y":256,"w":128,"h":128},
78 | "rotated": false,
79 | "trimmed": false,
80 | "spriteSourceSize": {"x":0,"y":0,"w":128,"h":128},
81 | "sourceSize": {"w":128,"h":128},
82 | "pivot": {"x":0.5,"y":0.5}
83 | },
84 | {
85 | "filename": "1f605.png",
86 | "frame": {"x":128,"y":256,"w":128,"h":128},
87 | "rotated": false,
88 | "trimmed": false,
89 | "spriteSourceSize": {"x":0,"y":0,"w":128,"h":128},
90 | "sourceSize": {"w":128,"h":128},
91 | "pivot": {"x":0.5,"y":0.5}
92 | },
93 | {
94 | "filename": "1f606.png",
95 | "frame": {"x":256,"y":256,"w":128,"h":128},
96 | "rotated": false,
97 | "trimmed": false,
98 | "spriteSourceSize": {"x":0,"y":0,"w":128,"h":128},
99 | "sourceSize": {"w":128,"h":128},
100 | "pivot": {"x":0.5,"y":0.5}
101 | },
102 | {
103 | "filename": "1f609.png",
104 | "frame": {"x":384,"y":256,"w":128,"h":128},
105 | "rotated": false,
106 | "trimmed": false,
107 | "spriteSourceSize": {"x":0,"y":0,"w":128,"h":128},
108 | "sourceSize": {"w":128,"h":128},
109 | "pivot": {"x":0.5,"y":0.5}
110 | },
111 | {
112 | "filename": "1f618.png",
113 | "frame": {"x":0,"y":384,"w":128,"h":128},
114 | "rotated": false,
115 | "trimmed": false,
116 | "spriteSourceSize": {"x":0,"y":0,"w":128,"h":128},
117 | "sourceSize": {"w":128,"h":128},
118 | "pivot": {"x":0.5,"y":0.5}
119 | },
120 | {
121 | "filename": "1f923.png",
122 | "frame": {"x":128,"y":384,"w":128,"h":128},
123 | "rotated": false,
124 | "trimmed": false,
125 | "spriteSourceSize": {"x":0,"y":0,"w":128,"h":128},
126 | "sourceSize": {"w":128,"h":128},
127 | "pivot": {"x":0.5,"y":0.5}
128 | },
129 | {
130 | "filename": "263a.png",
131 | "frame": {"x":256,"y":384,"w":128,"h":128},
132 | "rotated": false,
133 | "trimmed": false,
134 | "spriteSourceSize": {"x":0,"y":0,"w":128,"h":128},
135 | "sourceSize": {"w":128,"h":128},
136 | "pivot": {"x":0.5,"y":0.5}
137 | },
138 | {
139 | "filename": "2639.png",
140 | "frame": {"x":384,"y":384,"w":128,"h":128},
141 | "rotated": false,
142 | "trimmed": false,
143 | "spriteSourceSize": {"x":0,"y":0,"w":128,"h":128},
144 | "sourceSize": {"w":128,"h":128},
145 | "pivot": {"x":0.5,"y":0.5}
146 | }],
147 | "meta": {
148 | "app": "http://www.codeandweb.com/texturepacker",
149 | "version": "1.0",
150 | "image": "EmojiOne.png",
151 | "format": "RGBA8888",
152 | "size": {"w":512,"h":512},
153 | "scale": "1",
154 | "smartupdate": "$TexturePacker:SmartUpdate:196a26a2e149d875b91ffc8fa3581e76:fc928c7e275404b7e0649307410475cb:424723c3774975ddb2053fd5c4b85f6e$"
155 | }
156 | }
157 |
--------------------------------------------------------------------------------
/Assets/TextMesh Pro/Shaders/TMP_SDF-Surface.shader:
--------------------------------------------------------------------------------
1 | Shader "TextMeshPro/Distance Field (Surface)" {
2 |
3 | Properties {
4 | _FaceTex ("Fill Texture", 2D) = "white" {}
5 | _FaceUVSpeedX ("Face UV Speed X", Range(-5, 5)) = 0.0
6 | _FaceUVSpeedY ("Face UV Speed Y", Range(-5, 5)) = 0.0
7 | [HDR]_FaceColor ("Fill Color", Color) = (1,1,1,1)
8 | _FaceDilate ("Face Dilate", Range(-1,1)) = 0
9 |
10 | [HDR]_OutlineColor ("Outline Color", Color) = (0,0,0,1)
11 | _OutlineTex ("Outline Texture", 2D) = "white" {}
12 | _OutlineUVSpeedX ("Outline UV Speed X", Range(-5, 5)) = 0.0
13 | _OutlineUVSpeedY ("Outline UV Speed Y", Range(-5, 5)) = 0.0
14 | _OutlineWidth ("Outline Thickness", Range(0, 1)) = 0
15 | _OutlineSoftness ("Outline Softness", Range(0,1)) = 0
16 |
17 | _Bevel ("Bevel", Range(0,1)) = 0.5
18 | _BevelOffset ("Bevel Offset", Range(-0.5,0.5)) = 0
19 | _BevelWidth ("Bevel Width", Range(-.5,0.5)) = 0
20 | _BevelClamp ("Bevel Clamp", Range(0,1)) = 0
21 | _BevelRoundness ("Bevel Roundness", Range(0,1)) = 0
22 |
23 | _BumpMap ("Normalmap", 2D) = "bump" {}
24 | _BumpOutline ("Bump Outline", Range(0,1)) = 0.5
25 | _BumpFace ("Bump Face", Range(0,1)) = 0.5
26 |
27 | _ReflectFaceColor ("Face Color", Color) = (0,0,0,1)
28 | _ReflectOutlineColor ("Outline Color", Color) = (0,0,0,1)
29 | _Cube ("Reflection Cubemap", Cube) = "black" { /* TexGen CubeReflect */ }
30 | _EnvMatrixRotation ("Texture Rotation", vector) = (0, 0, 0, 0)
31 | [HDR]_SpecColor ("Specular Color", Color) = (0,0,0,1)
32 |
33 | _FaceShininess ("Face Shininess", Range(0,1)) = 0
34 | _OutlineShininess ("Outline Shininess", Range(0,1)) = 0
35 |
36 | [HDR]_GlowColor ("Color", Color) = (0, 1, 0, 0.5)
37 | _GlowOffset ("Offset", Range(-1,1)) = 0
38 | _GlowInner ("Inner", Range(0,1)) = 0.05
39 | _GlowOuter ("Outer", Range(0,1)) = 0.05
40 | _GlowPower ("Falloff", Range(1, 0)) = 0.75
41 |
42 | _WeightNormal ("Weight Normal", float) = 0
43 | _WeightBold ("Weight Bold", float) = 0.5
44 |
45 | // Should not be directly exposed to the user
46 | _ShaderFlags ("Flags", float) = 0
47 | _ScaleRatioA ("Scale RatioA", float) = 1
48 | _ScaleRatioB ("Scale RatioB", float) = 1
49 | _ScaleRatioC ("Scale RatioC", float) = 1
50 |
51 | _MainTex ("Font Atlas", 2D) = "white" {}
52 | _TextureWidth ("Texture Width", float) = 512
53 | _TextureHeight ("Texture Height", float) = 512
54 | _GradientScale ("Gradient Scale", float) = 5.0
55 | _ScaleX ("Scale X", float) = 1.0
56 | _ScaleY ("Scale Y", float) = 1.0
57 | _PerspectiveFilter ("Perspective Correction", Range(0, 1)) = 0.875
58 | _Sharpness ("Sharpness", Range(-1,1)) = 0
59 |
60 | _VertexOffsetX ("Vertex OffsetX", float) = 0
61 | _VertexOffsetY ("Vertex OffsetY", float) = 0
62 |
63 | _CullMode ("Cull Mode", Float) = 0
64 | //_MaskCoord ("Mask Coords", vector) = (0,0,0,0)
65 | //_MaskSoftness ("Mask Softness", float) = 0
66 | }
67 |
68 | SubShader {
69 |
70 | Tags { "Queue"="Transparent" "IgnoreProjector"="True" "RenderType"="Transparent" }
71 |
72 | LOD 300
73 | Cull [_CullMode]
74 |
75 | CGPROGRAM
76 | #pragma surface PixShader BlinnPhong alpha:blend vertex:VertShader nolightmap nodirlightmap
77 | #pragma target 3.0
78 | #pragma shader_feature __ GLOW_ON
79 | #pragma glsl
80 |
81 | #include "TMPro_Properties.cginc"
82 | #include "TMPro.cginc"
83 |
84 | half _FaceShininess;
85 | half _OutlineShininess;
86 |
87 | struct Input
88 | {
89 | fixed4 color : COLOR;
90 | float2 uv_MainTex;
91 | float2 uv2_FaceTex;
92 | float2 uv2_OutlineTex;
93 | float2 param; // Weight, Scale
94 | float3 viewDirEnv;
95 | };
96 |
97 |
98 | #define BEVEL_ON 1
99 | #include "TMPro_Surface.cginc"
100 |
101 | ENDCG
102 |
103 | // Pass to render object as a shadow caster
104 | Pass
105 | {
106 | Name "Caster"
107 | Tags { "LightMode" = "ShadowCaster" }
108 | Offset 1, 1
109 |
110 | Fog {Mode Off}
111 | ZWrite On
112 | ZTest LEqual
113 | Cull Off
114 |
115 | CGPROGRAM
116 | #pragma vertex vert
117 | #pragma fragment frag
118 | #pragma multi_compile_shadowcaster
119 | #include "UnityCG.cginc"
120 |
121 | struct v2f {
122 | V2F_SHADOW_CASTER;
123 | float2 uv : TEXCOORD1;
124 | float2 uv2 : TEXCOORD3;
125 | float alphaClip : TEXCOORD2;
126 | };
127 |
128 | uniform float4 _MainTex_ST;
129 | uniform float4 _OutlineTex_ST;
130 | float _OutlineWidth;
131 | float _FaceDilate;
132 | float _ScaleRatioA;
133 |
134 | v2f vert( appdata_base v )
135 | {
136 | v2f o;
137 | TRANSFER_SHADOW_CASTER(o)
138 | o.uv = TRANSFORM_TEX(v.texcoord, _MainTex);
139 | o.uv2 = TRANSFORM_TEX(v.texcoord, _OutlineTex);
140 | o.alphaClip = (1.0 - _OutlineWidth * _ScaleRatioA - _FaceDilate * _ScaleRatioA) / 2;
141 | return o;
142 | }
143 |
144 | uniform sampler2D _MainTex;
145 |
146 | float4 frag(v2f i) : COLOR
147 | {
148 | fixed4 texcol = tex2D(_MainTex, i.uv).a;
149 | clip(texcol.a - i.alphaClip);
150 | SHADOW_CASTER_FRAGMENT(i)
151 | }
152 | ENDCG
153 | }
154 | }
155 |
156 | CustomEditor "TMPro.EditorUtilities.TMP_SDFShaderGUI"
157 | }
158 |
159 |
--------------------------------------------------------------------------------
/Assets/TextMesh Pro/Resources/Style Sheets/Default Style Sheet.asset:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!114 &11400000
4 | MonoBehaviour:
5 | m_ObjectHideFlags: 0
6 | m_PrefabParentObject: {fileID: 0}
7 | m_PrefabInternal: {fileID: 0}
8 | m_GameObject: {fileID: 0}
9 | m_Enabled: 1
10 | m_EditorHideFlags: 0
11 | m_Script: {fileID: 11500000, guid: ab2114bdc8544297b417dfefe9f1e410, type: 3}
12 | m_Name: Default Style Sheet
13 | m_EditorClassIdentifier:
14 | m_StyleList:
15 | - m_Name: H1
16 | m_HashCode: 2425
17 | m_OpeningDefinition: <#40ff80>*
18 | m_ClosingDefinition: '*'
19 | m_OpeningTagArray: 3c00000073000000690000007a000000650000003d00000032000000650000006d0000003e0000003c000000620000003e0000003c000000230000003400000030000000660000006600000038000000300000003e0000002a000000
20 | m_ClosingTagArray: 2a0000003c0000002f00000073000000690000007a000000650000003e0000003c0000002f000000620000003e0000003c0000002f000000630000006f0000006c0000006f000000720000003e000000
21 | - m_Name: Quote
22 | m_HashCode: 92254330
23 | m_OpeningDefinition:
24 | m_ClosingDefinition:
25 | m_OpeningTagArray: 3c000000690000003e0000003c00000073000000690000007a000000650000003d0000003700000035000000250000003e0000003c0000006d000000610000007200000067000000690000006e0000003d0000003100000030000000250000003e000000
26 | m_ClosingTagArray: 3c0000002f000000690000003e0000003c0000002f00000073000000690000007a000000650000003e0000003c0000002f00000077000000690000006400000074000000680000003e0000003c0000002f0000006d000000610000007200000067000000690000006e0000003e000000
27 | - m_Name: Link
28 | m_HashCode: 2687968
29 | m_OpeningDefinition: <#40a0ff>
30 | m_ClosingDefinition:
31 | m_OpeningTagArray: 3c000000750000003e0000003c000000230000003400000030000000610000003000000066000000660000003e0000003c0000006c000000690000006e0000006b0000003d0000002200000049000000440000005f0000003000000031000000220000003e000000
32 | m_ClosingTagArray: 3c0000002f000000750000003e0000003c0000002f000000630000006f0000006c0000006f000000720000003e0000003c0000002f0000006c000000690000006e0000006b0000003e000000
33 | - m_Name: Title
34 | m_HashCode: 98732960
35 | m_OpeningDefinition:
36 | m_ClosingDefinition:
37 | m_OpeningTagArray: 3c00000073000000690000007a000000650000003d000000310000003200000035000000250000003e0000003c000000620000003e0000003c000000610000006c00000069000000670000006e0000003d00000063000000650000006e0000007400000065000000720000003e000000
38 | m_ClosingTagArray: 3c0000002f00000073000000690000007a000000650000003e0000003c0000002f000000620000003e0000003c0000002f000000610000006c00000069000000670000006e0000003e000000
39 | - m_Name: H2
40 | m_HashCode: 2426
41 | m_OpeningDefinition: <#4080FF>
42 | m_ClosingDefinition:
43 | m_OpeningTagArray: 3c00000073000000690000007a000000650000003d000000310000002e00000035000000650000006d0000003e0000003c000000620000003e0000003c000000230000003400000030000000380000003000000046000000460000003e000000
44 | m_ClosingTagArray: 3c0000002f00000073000000690000007a000000650000003e0000003c0000002f000000620000003e0000003c0000002f000000630000006f0000006c0000006f000000720000003e000000
45 | - m_Name: H3
46 | m_HashCode: 2427
47 | m_OpeningDefinition: <#FF8040>
48 | m_ClosingDefinition:
49 | m_OpeningTagArray: 3c00000073000000690000007a000000650000003d000000310000002e0000003100000037000000650000006d0000003e0000003c000000620000003e0000003c000000230000004600000046000000380000003000000034000000300000003e000000
50 | m_ClosingTagArray: 3c0000002f00000073000000690000007a000000650000003e0000003c0000002f000000620000003e0000003c0000002f000000630000006f0000006c0000006f000000720000003e000000
51 | - m_Name: C1
52 | m_HashCode: 2194
53 | m_OpeningDefinition:
54 | m_ClosingDefinition:
55 | m_OpeningTagArray: 3c000000630000006f0000006c0000006f000000720000003d000000230000006600000066000000660000006600000034000000300000003e000000
56 | m_ClosingTagArray: 3c0000002f000000630000006f0000006c0000006f000000720000003e000000
57 | - m_Name: C2
58 | m_HashCode: 2193
59 | m_OpeningDefinition:
60 | m_ClosingDefinition:
61 | m_OpeningTagArray: 3c000000630000006f0000006c0000006f000000720000003d000000230000006600000066000000340000003000000046000000460000003e0000003c00000073000000690000007a000000650000003d000000310000003200000035000000250000003e000000
62 | m_ClosingTagArray: 3c0000002f000000630000006f0000006c0000006f000000720000003e0000003c0000002f00000073000000690000007a000000650000003e000000
63 | - m_Name: C3
64 | m_HashCode: 2192
65 | m_OpeningDefinition:
66 | m_ClosingDefinition:
67 | m_OpeningTagArray: 3c000000630000006f0000006c0000006f000000720000003d000000230000003800000030000000410000003000000046000000460000003e0000003c000000620000003e000000
68 | m_ClosingTagArray: 3c0000002f000000630000006f0000006c0000006f000000720000003e0000003c0000002f000000620000003e000000
69 |
--------------------------------------------------------------------------------
/Assets/TextMesh Pro/Shaders/TMPro_Mobile.cginc:
--------------------------------------------------------------------------------
1 | struct vertex_t {
2 | UNITY_VERTEX_INPUT_INSTANCE_ID
3 | float4 position : POSITION;
4 | float3 normal : NORMAL;
5 | float4 color : COLOR;
6 | float2 texcoord0 : TEXCOORD0;
7 | float2 texcoord1 : TEXCOORD1;
8 | };
9 |
10 | struct pixel_t {
11 | UNITY_VERTEX_INPUT_INSTANCE_ID
12 | UNITY_VERTEX_OUTPUT_STEREO
13 | float4 position : SV_POSITION;
14 | float4 faceColor : COLOR;
15 | float4 outlineColor : COLOR1;
16 | float4 texcoord0 : TEXCOORD0;
17 | float4 param : TEXCOORD1; // weight, scaleRatio
18 | float2 mask : TEXCOORD2;
19 | #if (UNDERLAY_ON || UNDERLAY_INNER)
20 | float4 texcoord2 : TEXCOORD3;
21 | float4 underlayColor : COLOR2;
22 | #endif
23 | };
24 |
25 | float4 SRGBToLinear(float4 rgba) {
26 | return float4(lerp(rgba.rgb / 12.92f, pow((rgba.rgb + 0.055f) / 1.055f, 2.4f), step(0.04045f, rgba.rgb)), rgba.a);
27 | }
28 |
29 | pixel_t VertShader(vertex_t input)
30 | {
31 | pixel_t output;
32 |
33 | UNITY_INITIALIZE_OUTPUT(pixel_t, output);
34 | UNITY_SETUP_INSTANCE_ID(input);
35 | UNITY_TRANSFER_INSTANCE_ID(input, output);
36 | UNITY_INITIALIZE_VERTEX_OUTPUT_STEREO(output);
37 |
38 | float bold = step(input.texcoord1.y, 0);
39 |
40 | float4 vert = input.position;
41 | vert.x += _VertexOffsetX;
42 | vert.y += _VertexOffsetY;
43 |
44 | float4 vPosition = UnityObjectToClipPos(vert);
45 |
46 | float weight = lerp(_WeightNormal, _WeightBold, bold) / 4.0;
47 | weight = (weight + _FaceDilate) * _ScaleRatioA * 0.5;
48 |
49 | // Generate UV for the Masking Texture
50 | float4 clampedRect = clamp(_ClipRect, -2e10, 2e10);
51 | float2 maskUV = (vert.xy - clampedRect.xy) / (clampedRect.zw - clampedRect.xy);
52 |
53 | float4 color = input.color;
54 | #if (FORCE_LINEAR && !UNITY_COLORSPACE_GAMMA)
55 | color = SRGBToLinear(input.color);
56 | #endif
57 |
58 | float opacity = color.a;
59 | #if (UNDERLAY_ON | UNDERLAY_INNER)
60 | opacity = 1.0;
61 | #endif
62 |
63 | float4 faceColor = float4(color.rgb, opacity) * _FaceColor;
64 | faceColor.rgb *= faceColor.a;
65 |
66 | float4 outlineColor = _OutlineColor;
67 | outlineColor.a *= opacity;
68 | outlineColor.rgb *= outlineColor.a;
69 |
70 | output.position = vPosition;
71 | output.faceColor = faceColor;
72 | output.outlineColor = outlineColor;
73 | output.texcoord0 = float4(input.texcoord0.xy, maskUV.xy);
74 | output.param = float4(0.5 - weight, 1.3333 * _GradientScale * (_Sharpness + 1) / _TextureWidth, _OutlineWidth * _ScaleRatioA * 0.5, 0);
75 |
76 | float2 mask = float2(0, 0);
77 | #if UNITY_UI_CLIP_RECT
78 | mask = vert.xy * 2 - clampedRect.xy - clampedRect.zw;
79 | #endif
80 | output.mask = mask;
81 |
82 | #if (UNDERLAY_ON || UNDERLAY_INNER)
83 | float4 underlayColor = _UnderlayColor;
84 | underlayColor.rgb *= underlayColor.a;
85 |
86 | float x = -(_UnderlayOffsetX * _ScaleRatioC) * _GradientScale / _TextureWidth;
87 | float y = -(_UnderlayOffsetY * _ScaleRatioC) * _GradientScale / _TextureHeight;
88 |
89 | output.texcoord2 = float4(input.texcoord0 + float2(x, y), input.color.a, 0);
90 | output.underlayColor = underlayColor;
91 | #endif
92 |
93 | return output;
94 | }
95 |
96 | float4 PixShader(pixel_t input) : SV_Target
97 | {
98 | UNITY_SETUP_INSTANCE_ID(input);
99 |
100 | float d = tex2D(_MainTex, input.texcoord0.xy).a;
101 |
102 | float2 UV = input.texcoord0.xy;
103 | float scale = rsqrt(abs(ddx(UV.x) * ddy(UV.y) - ddy(UV.x) * ddx(UV.y))) * input.param.y;
104 |
105 | #if (UNDERLAY_ON | UNDERLAY_INNER)
106 | float layerScale = scale;
107 | layerScale /= 1 + ((_UnderlaySoftness * _ScaleRatioC) * layerScale);
108 | float layerBias = input.param.x * layerScale - .5 - ((_UnderlayDilate * _ScaleRatioC) * .5 * layerScale);
109 | #endif
110 |
111 | scale /= 1 + (_OutlineSoftness * _ScaleRatioA * scale);
112 |
113 | float4 faceColor = input.faceColor * saturate((d - input.param.x) * scale + 0.5);
114 |
115 | #ifdef OUTLINE_ON
116 | float4 outlineColor = lerp(input.faceColor, input.outlineColor, sqrt(min(1.0, input.param.z * scale * 2)));
117 | faceColor = lerp(outlineColor, input.faceColor, saturate((d - input.param.x - input.param.z) * scale + 0.5));
118 | faceColor *= saturate((d - input.param.x + input.param.z) * scale + 0.5);
119 | #endif
120 |
121 | #if UNDERLAY_ON
122 | d = tex2D(_MainTex, input.texcoord2.xy).a * layerScale;
123 | faceColor += float4(_UnderlayColor.rgb * _UnderlayColor.a, _UnderlayColor.a) * saturate(d - layerBias) * (1 - faceColor.a);
124 | #endif
125 |
126 | #if UNDERLAY_INNER
127 | float bias = input.param.x * scale - 0.5;
128 | float sd = saturate(d * scale - bias - input.param.z);
129 | d = tex2D(_MainTex, input.texcoord2.xy).a * layerScale;
130 | faceColor += float4(_UnderlayColor.rgb * _UnderlayColor.a, _UnderlayColor.a) * (1 - saturate(d - layerBias)) * sd * (1 - faceColor.a);
131 | #endif
132 |
133 | #ifdef MASKING
134 | float a = abs(_MaskInverse - tex2D(_MaskTex, input.texcoord0.zw).a);
135 | float t = a + (1 - _MaskWipeControl) * _MaskEdgeSoftness - _MaskWipeControl;
136 | a = saturate(t / _MaskEdgeSoftness);
137 | faceColor.rgb = lerp(_MaskEdgeColor.rgb * faceColor.a, faceColor.rgb, a);
138 | faceColor *= a;
139 | #endif
140 |
141 | // Alternative implementation to UnityGet2DClipping with support for softness
142 | #if UNITY_UI_CLIP_RECT
143 | float2 maskZW = 0.25 / (0.25 * half2(_MaskSoftnessX, _MaskSoftnessY) + (1 / scale));
144 | float2 m = saturate((_ClipRect.zw - _ClipRect.xy - abs(input.mask.xy)) * maskZW);
145 | faceColor *= m.x * m.y;
146 | #endif
147 |
148 | #if (UNDERLAY_ON | UNDERLAY_INNER)
149 | faceColor *= input.texcoord2.z;
150 | #endif
151 |
152 | #if UNITY_UI_ALPHACLIP
153 | clip(faceColor.a - 0.001);
154 | #endif
155 |
156 | return faceColor;
157 | }
158 |
--------------------------------------------------------------------------------
/Assets/AddressableAssetsData/AddressableAssetSettings.asset:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!114 &11400000
4 | MonoBehaviour:
5 | m_ObjectHideFlags: 0
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: 11500000, guid: 468a46d0ae32c3544b7d98094e6448a9, type: 3}
13 | m_Name: AddressableAssetSettings
14 | m_EditorClassIdentifier:
15 | m_DefaultGroup: 5473932cdf88acc4784c880de9aee665
16 | m_currentHash:
17 | serializedVersion: 2
18 | Hash: 554632ec68977ae54e28b990e981e152
19 | m_OptimizeCatalogSize: 0
20 | m_BuildRemoteCatalog: 1
21 | m_BundleLocalCatalog: 0
22 | m_CatalogRequestsTimeout: 10
23 | m_DisableCatalogUpdateOnStart: 1
24 | m_IgnoreUnsupportedFilesInBuild: 0
25 | m_UniqueBundleIds: 0
26 | m_NonRecursiveBuilding: 1
27 | m_CCDEnabled: 0
28 | m_maxConcurrentWebRequests: 3
29 | m_ContiguousBundles: 1
30 | m_StripUnityVersionFromBundleBuild: 0
31 | m_DisableVisibleSubAssetRepresentations: 0
32 | m_ShaderBundleNaming: 0
33 | m_ShaderBundleCustomNaming:
34 | m_MonoScriptBundleNaming: 0
35 | m_CheckForContentUpdateRestrictionsOption: 0
36 | m_MonoScriptBundleCustomNaming:
37 | m_RemoteCatalogBuildPath:
38 | m_Id: eb46dfd26026b60418889b30d9b7d92a
39 | m_RemoteCatalogLoadPath:
40 | m_Id: d388ccacf8397ea4bab922b24131c94b
41 | m_ContentStateBuildPathProfileVariableName:
42 | m_CustomContentStateBuildPath:
43 | m_ContentStateBuildPath:
44 | m_BuildAddressablesWithPlayerBuild: 2
45 | m_overridePlayerVersion: '[UnityEditor.PlayerSettings.bundleVersion]'
46 | m_GroupAssets:
47 | - {fileID: 11400000, guid: 9d78453da8e12664fba55cf35ee5bda0, type: 2}
48 | - {fileID: 11400000, guid: ae8e521b851919941b4d4b1d21790a4d, type: 2}
49 | - {fileID: 11400000, guid: 17d50e87eb4fe154c94acbcd26497abf, type: 2}
50 | - {fileID: 11400000, guid: 716876498c20bc64d8056094d016ad6c, type: 2}
51 | - {fileID: 11400000, guid: ad4d7e6a96510c443b8b11df2a272bc7, type: 2}
52 | - {fileID: 11400000, guid: ecd41f4ea64cb2247ab9f5e62251a173, type: 2}
53 | m_BuildSettings:
54 | m_CompileScriptsInVirtualMode: 0
55 | m_CleanupStreamingAssetsAfterBuilds: 1
56 | m_LogResourceManagerExceptions: 1
57 | m_BundleBuildPath: Temp/com.unity.addressables/AssetBundles
58 | m_ProfileSettings:
59 | m_Profiles:
60 | - m_InheritedParent:
61 | m_Id: 705c9dd9c75810f459b9d33be851362d
62 | m_ProfileName: Default
63 | m_Values:
64 | - m_Id: 5df9c38d23aed2e4bb0c3d13c7a078f8
65 | m_Value: '[UnityEditor.EditorUserBuildSettings.activeBuildTarget]'
66 | - m_Id: a5a351bca89a69f4cad5aeddef5e3e48
67 | m_Value: '[UnityEngine.AddressableAssets.Addressables.BuildPath]/[BuildTarget]'
68 | - m_Id: b58ce8146b3281f42916d2c308134c3c
69 | m_Value: '{UnityEngine.AddressableAssets.Addressables.RuntimePath}/[BuildTarget]'
70 | - m_Id: eb46dfd26026b60418889b30d9b7d92a
71 | m_Value: ServerData/[BuildTarget]
72 | - m_Id: d388ccacf8397ea4bab922b24131c94b
73 | m_Value: http://[PrivateIpAddress]:[HostingServicePort]
74 | m_ProfileEntryNames:
75 | - m_Id: 5df9c38d23aed2e4bb0c3d13c7a078f8
76 | m_Name: BuildTarget
77 | m_InlineUsage: 0
78 | - m_Id: a5a351bca89a69f4cad5aeddef5e3e48
79 | m_Name: Local.BuildPath
80 | m_InlineUsage: 0
81 | - m_Id: b58ce8146b3281f42916d2c308134c3c
82 | m_Name: Local.LoadPath
83 | m_InlineUsage: 0
84 | - m_Id: eb46dfd26026b60418889b30d9b7d92a
85 | m_Name: Remote.BuildPath
86 | m_InlineUsage: 0
87 | - m_Id: d388ccacf8397ea4bab922b24131c94b
88 | m_Name: Remote.LoadPath
89 | m_InlineUsage: 0
90 | m_ProfileVersion: 1
91 | m_LabelTable:
92 | m_LabelNames:
93 | - default
94 | m_SchemaTemplates: []
95 | m_GroupTemplateObjects:
96 | - {fileID: 11400000, guid: aef5faedacab3b249b82b3b31767cf61, type: 2}
97 | m_InitializationObjects: []
98 | m_CertificateHandlerType:
99 | m_AssemblyName:
100 | m_ClassName:
101 | m_ActivePlayerDataBuilderIndex: 3
102 | m_DataBuilders:
103 | - {fileID: 11400000, guid: 2c248dd9f822e1d46a7b3029d85f2298, type: 2}
104 | - {fileID: 11400000, guid: 037f4625ad13ec04ab97024d4aa009b1, type: 2}
105 | - {fileID: 11400000, guid: e78dcc1ad3fa7994db61473c2057cf50, type: 2}
106 | - {fileID: 11400000, guid: 1a8ad183ec4cc1f4a8a3c5de367d86d0, type: 2}
107 | m_ActiveProfileId: 705c9dd9c75810f459b9d33be851362d
108 | m_HostingServicesManager:
109 | m_HostingServiceInfos:
110 | - classRef: UnityEditor.AddressableAssets.HostingServices.HttpHostingService,
111 | Unity.Addressables.Editor
112 | dataStore:
113 | m_SerializedData:
114 | - m_AssemblyName: mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
115 | m_ClassName: System.Int32
116 | m_Data: 59754
117 | m_Key: HostingServicePort
118 | - m_AssemblyName: mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
119 | m_ClassName: System.Int32
120 | m_Data: 0
121 | m_Key: HostingServiceUploadSpeed
122 | - m_AssemblyName: mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
123 | m_ClassName: System.String
124 | m_Data: ServerData/StandaloneWindows64;Library/com.unity.addressables/aa/Windows/StandaloneWindows64
125 | m_Key: ContentRoot
126 | - m_AssemblyName: mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
127 | m_ClassName: System.Boolean
128 | m_Data: True
129 | m_Key: IsEnabled
130 | - m_AssemblyName: mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
131 | m_ClassName: System.String
132 | m_Data: Local Hosting 0
133 | m_Key: DescriptiveName
134 | - m_AssemblyName: mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
135 | m_ClassName: System.Int32
136 | m_Data: 0
137 | m_Key: InstanceId
138 | m_Settings: {fileID: 11400000}
139 | m_NextInstanceId: 1
140 | m_RegisteredServiceTypeRefs:
141 | - UnityEditor.AddressableAssets.HostingServices.HttpHostingService, Unity.Addressables.Editor
142 | m_PingTimeoutInMilliseconds: 5000
143 |
--------------------------------------------------------------------------------
/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 |
--------------------------------------------------------------------------------
/Assets/Scripts/AOT/AddressableAssetManager.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections;
3 | using System.Collections.Generic;
4 | using UnityEngine;
5 | using UnityEngine.AddressableAssets;
6 | using UnityEngine.ResourceManagement.AsyncOperations;
7 | using UnityEngine.SceneManagement;
8 |
9 | namespace AOT
10 | {
11 | ///
12 | /// Addressable的资源管理器(只用于启动游戏时更新)
13 | ///
14 | public class AddressableAssetManager : IAssetManager
15 | {
16 | #region InnerClass
17 |
18 | [Serializable]
19 | private class DownloadContent
20 | {
21 | public List catalogs = new();
22 | }
23 |
24 | #endregion
25 |
26 | #region FieldsAndProperties
27 |
28 | //记录在playerPres里的需要下载的catalogs的ID
29 | const string DOWNLOAD_CATALOGS_ID = "DownloadCatalogs";
30 |
31 | private List