├── projects
├── shared
│ ├── Readme.md
│ ├── package.json
│ ├── License.md.meta
│ ├── Readme.md.meta
│ ├── Changelog.md.meta
│ ├── Runtime
│ │ ├── Scene.unity.meta
│ │ ├── ValidComponents
│ │ │ ├── com.needle.valid-components.asmdef
│ │ │ ├── com.needle.valid-components.asmdef.meta
│ │ │ ├── MyCoolComponent.cs.meta
│ │ │ ├── NewMapManager.cs.meta
│ │ │ ├── PlayerAttachment.cs.meta
│ │ │ ├── PlayerManager.cs.meta
│ │ │ ├── SomeOtherScript.cs.meta
│ │ │ ├── ComponentGenerator2.cs.meta
│ │ │ ├── MyScriptWithPropertiesValid.cs.meta
│ │ │ ├── MyCoolComponent.cs
│ │ │ ├── NewMapManager.cs
│ │ │ ├── PlayerManager.cs
│ │ │ ├── SomeOtherScript.cs
│ │ │ ├── PlayerAttachment.cs
│ │ │ ├── ComponentGenerator2.cs
│ │ │ └── MyScriptWithPropertiesValid.cs
│ │ ├── Testing.meta
│ │ ├── MissingScripts.meta
│ │ ├── PrefabWithMissingComponent.prefab.meta
│ │ ├── ValidComponents.meta
│ │ ├── com.needle.missing-component-info-shared-assets.asmdef.meta
│ │ ├── MissingScripts
│ │ │ ├── Tester_.cs.meta
│ │ │ ├── MapManager_.cs.meta
│ │ │ ├── PlayerController_.cs.meta
│ │ │ ├── MyScriptWithProperties.cs.meta
│ │ │ ├── SceneValidationUtil_.cs.meta
│ │ │ ├── ComponentGeneratorManager_.cs.meta
│ │ │ ├── Tester_.cs
│ │ │ ├── MapManager_.cs
│ │ │ ├── PlayerController_.cs
│ │ │ ├── SceneValidationUtil_.cs
│ │ │ ├── ComponentGeneratorManager_.cs
│ │ │ └── MyScriptWithProperties.cs
│ │ ├── Testing
│ │ │ ├── ForceReserializeAssets.cs.meta
│ │ │ └── ForceReserializeAssets.cs
│ │ ├── com.needle.missing-component-info-shared-assets.asmdef
│ │ └── PrefabWithMissingComponent.prefab
│ ├── package.json.meta
│ ├── Runtime.meta
│ ├── Changelog.md
│ └── License.md
├── MissingComponent_2021_3
│ ├── ProjectSettings
│ │ ├── boot.config
│ │ ├── ProjectVersion.txt
│ │ ├── ClusterInputManager.asset
│ │ ├── PresetManager.asset
│ │ ├── EditorBuildSettings.asset
│ │ ├── VersionControlSettings.asset
│ │ ├── TimeManager.asset
│ │ ├── VFXManager.asset
│ │ ├── AudioManager.asset
│ │ ├── TagManager.asset
│ │ ├── UnityConnectSettings.asset
│ │ ├── PackageManagerSettings.asset
│ │ ├── MemorySettings.asset
│ │ ├── DynamicsManager.asset
│ │ ├── EditorSettings.asset
│ │ ├── NavMeshAreas.asset
│ │ ├── Physics2DSettings.asset
│ │ ├── GraphicsSettings.asset
│ │ ├── InputManager.asset
│ │ └── QualitySettings.asset
│ ├── Assets
│ │ ├── Scene.unity.meta
│ │ ├── PrefabWithMissingComponent.prefab.meta
│ │ ├── MyScriptWithProperties_.cs.meta
│ │ ├── MyScriptWithProperties_.cs
│ │ ├── PrefabWithMissingComponent.prefab
│ │ └── Scene.unity
│ └── Packages
│ │ └── manifest.json
├── MissingComponent_2022
│ ├── ProjectSettings
│ │ ├── ProjectVersion.txt
│ │ ├── ClusterInputManager.asset
│ │ ├── PresetManager.asset
│ │ ├── EditorBuildSettings.asset
│ │ ├── VersionControlSettings.asset
│ │ ├── TimeManager.asset
│ │ ├── VFXManager.asset
│ │ ├── AudioManager.asset
│ │ ├── TagManager.asset
│ │ ├── UnityConnectSettings.asset
│ │ ├── MemorySettings.asset
│ │ ├── PackageManagerSettings.asset
│ │ ├── DynamicsManager.asset
│ │ ├── EditorSettings.asset
│ │ ├── NavMeshAreas.asset
│ │ ├── Physics2DSettings.asset
│ │ ├── GraphicsSettings.asset
│ │ ├── SceneTemplateSettings.json
│ │ ├── InputManager.asset
│ │ └── QualitySettings.asset
│ └── Packages
│ │ └── manifest.json
└── MissingComponent_2020_3
│ ├── ProjectSettings
│ ├── ProjectVersion.txt
│ ├── ClusterInputManager.asset
│ ├── PresetManager.asset
│ ├── EditorBuildSettings.asset
│ ├── VersionControlSettings.asset
│ ├── TimeManager.asset
│ ├── VFXManager.asset
│ ├── AudioManager.asset
│ ├── TagManager.asset
│ ├── UnityConnectSettings.asset
│ ├── PackageManagerSettings.asset
│ ├── EditorSettings.asset
│ ├── DynamicsManager.asset
│ ├── NavMeshAreas.asset
│ ├── Physics2DSettings.asset
│ ├── GraphicsSettings.asset
│ ├── InputManager.asset
│ └── QualitySettings.asset
│ ├── Assets
│ ├── Scene1.unity.meta
│ └── Scene1.unity
│ └── Packages
│ └── manifest.json
├── package
├── Editor
│ ├── MissingComponentHelper.asmref
│ ├── Utils.cs.meta
│ ├── Assets
│ │ ├── logo.png
│ │ └── logo.png.meta
│ ├── MissingReferences
│ │ ├── Containers.cs.meta
│ │ ├── SceneScanner.cs.meta
│ │ ├── Needle.MissingReferences.asmdef.meta
│ │ ├── MissingReferencesWindow.cs.meta
│ │ ├── MissingSceneReferences.cs.meta
│ │ ├── MissingProjectReferences.cs.meta
│ │ ├── Needle.MissingReferences.asmdef
│ │ ├── MissingSceneReferences.cs
│ │ ├── MissingReferencesWindow.cs
│ │ └── SceneScanner.cs
│ ├── HiddenObjectsWithMissingScripts.cs.meta
│ ├── Assets.meta
│ ├── MissingReferences.meta
│ ├── MissingComponentHelper.asmref.meta
│ ├── MissingComponentHelper.cs.meta
│ ├── HiddenObjectsWithMissingScripts.cs
│ ├── MissingComponentHelper.cs
│ └── Utils.cs
├── Documentation~
│ ├── missing_component.png
│ └── missing_component_properties.png
├── Readme.md.meta
├── Changelog.md.meta
├── License.md.meta
├── package.json.meta
├── Editor.meta
├── package.json
├── License.md
├── Readme.md
└── Changelog.md
├── .gitignore
└── Readme.md
/projects/shared/Readme.md:
--------------------------------------------------------------------------------
1 | # Readme
--------------------------------------------------------------------------------
/projects/MissingComponent_2021_3/ProjectSettings/boot.config:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/package/Editor/MissingComponentHelper.asmref:
--------------------------------------------------------------------------------
1 | {
2 | "reference": "GUID:0acc523941302664db1f4e527237feb3"
3 | }
--------------------------------------------------------------------------------
/package/Editor/Utils.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: de1aca0def0b4124b48c7083556b4688
3 | timeCreated: 1654602690
--------------------------------------------------------------------------------
/package/Editor/Assets/logo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/needle-tools/missing-component-info/HEAD/package/Editor/Assets/logo.png
--------------------------------------------------------------------------------
/package/Editor/MissingReferences/Containers.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 73738b3058da450d9edf2b8ee731c4ea
3 | timeCreated: 1683821047
--------------------------------------------------------------------------------
/package/Editor/HiddenObjectsWithMissingScripts.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: c4a44cddd518475399d0df76aa5f32a4
3 | timeCreated: 1656346268
--------------------------------------------------------------------------------
/package/Editor/MissingReferences/SceneScanner.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 0ee79d1aa9ae4e788a2aeecb844eefbc
3 | timeCreated: 1683821006
--------------------------------------------------------------------------------
/projects/MissingComponent_2021_3/ProjectSettings/ProjectVersion.txt:
--------------------------------------------------------------------------------
1 | m_EditorVersion: 2021.3.0f1
2 | m_EditorVersionWithRevision: 2021.3.0f1 (6eacc8284459)
3 |
--------------------------------------------------------------------------------
/projects/MissingComponent_2022/ProjectSettings/ProjectVersion.txt:
--------------------------------------------------------------------------------
1 | m_EditorVersion: 2022.3.3f1
2 | m_EditorVersionWithRevision: 2022.3.3f1 (7cdc2969a641)
3 |
--------------------------------------------------------------------------------
/package/Documentation~/missing_component.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/needle-tools/missing-component-info/HEAD/package/Documentation~/missing_component.png
--------------------------------------------------------------------------------
/projects/MissingComponent_2020_3/ProjectSettings/ProjectVersion.txt:
--------------------------------------------------------------------------------
1 | m_EditorVersion: 2020.3.33f1
2 | m_EditorVersionWithRevision: 2020.3.33f1 (915a7af8b0d5)
3 |
--------------------------------------------------------------------------------
/package/Documentation~/missing_component_properties.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/needle-tools/missing-component-info/HEAD/package/Documentation~/missing_component_properties.png
--------------------------------------------------------------------------------
/projects/shared/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "com.needle.missing-component-info-shared-assets",
3 | "displayName": "Missing Component Info Shared Assets",
4 | "version": "0.0.1-pre"
5 | }
--------------------------------------------------------------------------------
/package/Readme.md.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: c905032e1e9f7684387e96b6bc06a935
3 | TextScriptImporter:
4 | externalObjects: {}
5 | userData:
6 | assetBundleName:
7 | assetBundleVariant:
8 |
--------------------------------------------------------------------------------
/package/Changelog.md.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: bbc211545be93134187cb36be3636b7a
3 | TextScriptImporter:
4 | externalObjects: {}
5 | userData:
6 | assetBundleName:
7 | assetBundleVariant:
8 |
--------------------------------------------------------------------------------
/package/License.md.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: d657cfbcdf3c01f4cb9e968daadda2c8
3 | TextScriptImporter:
4 | externalObjects: {}
5 | userData:
6 | assetBundleName:
7 | assetBundleVariant:
8 |
--------------------------------------------------------------------------------
/projects/MissingComponent_2020_3/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 |
--------------------------------------------------------------------------------
/projects/MissingComponent_2021_3/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 |
--------------------------------------------------------------------------------
/projects/MissingComponent_2022/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 |
--------------------------------------------------------------------------------
/package/package.json.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: c209e946a38bc934bb7c1a0f5c73446f
3 | PackageManifestImporter:
4 | externalObjects: {}
5 | userData:
6 | assetBundleName:
7 | assetBundleVariant:
8 |
--------------------------------------------------------------------------------
/projects/shared/License.md.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 459e85c9deb407b44b0c0f1d45cf104d
3 | TextScriptImporter:
4 | externalObjects: {}
5 | userData:
6 | assetBundleName:
7 | assetBundleVariant:
8 |
--------------------------------------------------------------------------------
/projects/shared/Readme.md.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: b4c2598a9a3045f49aa5253ddb113562
3 | TextScriptImporter:
4 | externalObjects: {}
5 | userData:
6 | assetBundleName:
7 | assetBundleVariant:
8 |
--------------------------------------------------------------------------------
/package/Editor.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: f689d9a57d9848e468aba6fce5a111c5
3 | folderAsset: yes
4 | DefaultImporter:
5 | externalObjects: {}
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/projects/shared/Changelog.md.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 94b75f9a516f7aa48b1311962a7d542d
3 | TextScriptImporter:
4 | externalObjects: {}
5 | userData:
6 | assetBundleName:
7 | assetBundleVariant:
8 |
--------------------------------------------------------------------------------
/projects/shared/Runtime/Scene.unity.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: cbd23d013a650284bab39ce3c7360d59
3 | DefaultImporter:
4 | externalObjects: {}
5 | userData:
6 | assetBundleName:
7 | assetBundleVariant:
8 |
--------------------------------------------------------------------------------
/projects/shared/package.json.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 40b6699b6d2fcb6419068f6f6e641178
3 | PackageManifestImporter:
4 | externalObjects: {}
5 | userData:
6 | assetBundleName:
7 | assetBundleVariant:
8 |
--------------------------------------------------------------------------------
/package/Editor/Assets.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: efbea91ac73222d48b5efcc13d859a3d
3 | folderAsset: yes
4 | DefaultImporter:
5 | externalObjects: {}
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/projects/shared/Runtime.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 03f36dc23e8edbc47b0edca02f478485
3 | folderAsset: yes
4 | DefaultImporter:
5 | externalObjects: {}
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/projects/shared/Runtime/ValidComponents/com.needle.valid-components.asmdef:
--------------------------------------------------------------------------------
1 | {
2 | "name": "com.needle.valid-components",
3 | "references":[ "GUID:343deaaf83e0cee4ca978e7df0b80d21", "GUID:2bafac87e7f4b9b418d9448d219b01ab" ]
4 | }
5 |
--------------------------------------------------------------------------------
/package/Editor/MissingReferences.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 413674b677aa5e548a914a6070688113
3 | folderAsset: yes
4 | DefaultImporter:
5 | externalObjects: {}
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/projects/MissingComponent_2020_3/Assets/Scene1.unity.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 0b53a5f977bdf044498f5f33a6eca8bc
3 | DefaultImporter:
4 | externalObjects: {}
5 | userData:
6 | assetBundleName:
7 | assetBundleVariant:
8 |
--------------------------------------------------------------------------------
/projects/MissingComponent_2020_3/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 |
--------------------------------------------------------------------------------
/projects/MissingComponent_2021_3/Assets/Scene.unity.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 4a0096b637f52bc4fbfb2ce6d226d132
3 | DefaultImporter:
4 | externalObjects: {}
5 | userData:
6 | assetBundleName:
7 | assetBundleVariant:
8 |
--------------------------------------------------------------------------------
/projects/MissingComponent_2021_3/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 |
--------------------------------------------------------------------------------
/projects/MissingComponent_2022/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 |
--------------------------------------------------------------------------------
/projects/shared/Runtime/Testing.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 3e4db130eebb575429a2abdb1236e7fc
3 | folderAsset: yes
4 | DefaultImporter:
5 | externalObjects: {}
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/projects/shared/Runtime/MissingScripts.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 239fc471e04820c4d991e814cd1828c6
3 | folderAsset: yes
4 | DefaultImporter:
5 | externalObjects: {}
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/projects/shared/Runtime/PrefabWithMissingComponent.prefab.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: b77847a491b7bee4280f26b07259c8ff
3 | PrefabImporter:
4 | externalObjects: {}
5 | userData:
6 | assetBundleName:
7 | assetBundleVariant:
8 |
--------------------------------------------------------------------------------
/projects/shared/Runtime/ValidComponents.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: f1002c948acb07e4a8205568326b1100
3 | folderAsset: yes
4 | DefaultImporter:
5 | externalObjects: {}
6 | userData:
7 | assetBundleName:
8 | assetBundleVariant:
9 |
--------------------------------------------------------------------------------
/package/Editor/MissingComponentHelper.asmref.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 3bb14f4e148de894f8a8b68a7ee5090e
3 | AssemblyDefinitionReferenceImporter:
4 | externalObjects: {}
5 | userData:
6 | assetBundleName:
7 | assetBundleVariant:
8 |
--------------------------------------------------------------------------------
/package/Editor/MissingReferences/Needle.MissingReferences.asmdef.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: a1b59a58c3379af4295a012519aee5e5
3 | AssemblyDefinitionImporter:
4 | externalObjects: {}
5 | userData:
6 | assetBundleName:
7 | assetBundleVariant:
8 |
--------------------------------------------------------------------------------
/projects/MissingComponent_2021_3/Assets/PrefabWithMissingComponent.prefab.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: b13396e9e094cc64ba016c91b7743682
3 | PrefabImporter:
4 | externalObjects: {}
5 | userData:
6 | assetBundleName:
7 | assetBundleVariant:
8 |
--------------------------------------------------------------------------------
/projects/MissingComponent_2020_3/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 | m_configObjects: {}
9 |
--------------------------------------------------------------------------------
/projects/MissingComponent_2021_3/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 | m_configObjects: {}
9 |
--------------------------------------------------------------------------------
/projects/MissingComponent_2022/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 | m_configObjects: {}
9 |
--------------------------------------------------------------------------------
/projects/shared/Runtime/ValidComponents/com.needle.valid-components.asmdef.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: b805cff04b5c3f348b4806b166bc7bd6
3 | AssemblyDefinitionImporter:
4 | externalObjects: {}
5 | userData:
6 | assetBundleName:
7 | assetBundleVariant:
8 |
--------------------------------------------------------------------------------
/projects/shared/Runtime/com.needle.missing-component-info-shared-assets.asmdef.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 2167ff3046402114794ada11a214b534
3 | AssemblyDefinitionImporter:
4 | externalObjects: {}
5 | userData:
6 | assetBundleName:
7 | assetBundleVariant:
8 |
--------------------------------------------------------------------------------
/projects/MissingComponent_2020_3/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 |
--------------------------------------------------------------------------------
/projects/MissingComponent_2021_3/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 |
--------------------------------------------------------------------------------
/projects/MissingComponent_2022/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 |
--------------------------------------------------------------------------------
/projects/MissingComponent_2022/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 |
--------------------------------------------------------------------------------
/projects/MissingComponent_2020_3/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 |
--------------------------------------------------------------------------------
/projects/MissingComponent_2021_3/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 |
--------------------------------------------------------------------------------
/projects/shared/Changelog.md:
--------------------------------------------------------------------------------
1 | # Changelog
2 | All notable changes to this package will be documented in this file.
3 |
4 | The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/)
5 | and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html).
6 |
7 | ## [0.0.0] - 2021-05-29
--------------------------------------------------------------------------------
/.gitignore:
--------------------------------------------------------------------------------
1 | projects/**/Library
2 | projects/**/Temp
3 | projects/**/obj
4 | projects/**/\[Bb]uilds
5 | projects/**/*.csproj
6 | projects/**/*.sln
7 | projects/**/Logs
8 | projects/**/.idea
9 | projects/**/*.csproj.DotSettings
10 | projects/**/builds
11 | projects/**/UserSettings
12 | projects/**/RiderScriptEditorPersistedState.asset
13 |
--------------------------------------------------------------------------------
/package/Editor/MissingComponentHelper.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 93415c90c0adc8f488695912dc0031c5
3 | MonoImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | defaultReferences: []
7 | executionOrder: 0
8 | icon: {instanceID: 0}
9 | userData:
10 | assetBundleName:
11 | assetBundleVariant:
12 |
--------------------------------------------------------------------------------
/projects/shared/Runtime/MissingScripts/Tester_.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: dfbf5867be6e81e49b75fccacbe1f954
3 | MonoImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | defaultReferences: []
7 | executionOrder: 0
8 | icon: {instanceID: 0}
9 | userData:
10 | assetBundleName:
11 | assetBundleVariant:
12 |
--------------------------------------------------------------------------------
/projects/shared/Runtime/MissingScripts/MapManager_.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: a0d0d1ad7d56a1d40b1e28e65728d6b8
3 | MonoImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | defaultReferences: []
7 | executionOrder: 0
8 | icon: {instanceID: 0}
9 | userData:
10 | assetBundleName:
11 | assetBundleVariant:
12 |
--------------------------------------------------------------------------------
/package/Editor/MissingReferences/MissingReferencesWindow.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: b68f90e12dbb6f8428c9e8818bb63c9d
3 | MonoImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | defaultReferences: []
7 | executionOrder: 0
8 | icon: {instanceID: 0}
9 | userData:
10 | assetBundleName:
11 | assetBundleVariant:
12 |
--------------------------------------------------------------------------------
/package/Editor/MissingReferences/MissingSceneReferences.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 9bd4bedd5d5fd0741821147ecd94f0a4
3 | MonoImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | defaultReferences: []
7 | executionOrder: 0
8 | icon: {instanceID: 0}
9 | userData:
10 | assetBundleName:
11 | assetBundleVariant:
12 |
--------------------------------------------------------------------------------
/projects/shared/Runtime/MissingScripts/PlayerController_.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: f3814600f3ecfe1429acca0485d8bfc0
3 | MonoImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | defaultReferences: []
7 | executionOrder: 0
8 | icon: {instanceID: 0}
9 | userData:
10 | assetBundleName:
11 | assetBundleVariant:
12 |
--------------------------------------------------------------------------------
/projects/shared/Runtime/Testing/ForceReserializeAssets.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: a270c475211a10d42bf882ecacda8190
3 | MonoImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | defaultReferences: []
7 | executionOrder: 0
8 | icon: {instanceID: 0}
9 | userData:
10 | assetBundleName:
11 | assetBundleVariant:
12 |
--------------------------------------------------------------------------------
/projects/shared/Runtime/ValidComponents/MyCoolComponent.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 7569bbbd048d40f429d0ecb57e2cbabc
3 | MonoImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | defaultReferences: []
7 | executionOrder: 0
8 | icon: {instanceID: 0}
9 | userData:
10 | assetBundleName:
11 | assetBundleVariant:
12 |
--------------------------------------------------------------------------------
/projects/shared/Runtime/ValidComponents/NewMapManager.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: f4b4cdbe9ff91444abc04309c398bd20
3 | MonoImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | defaultReferences: []
7 | executionOrder: 0
8 | icon: {instanceID: 0}
9 | userData:
10 | assetBundleName:
11 | assetBundleVariant:
12 |
--------------------------------------------------------------------------------
/projects/shared/Runtime/ValidComponents/PlayerAttachment.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 5f0709801b3173e4f83bc05e0647294a
3 | MonoImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | defaultReferences: []
7 | executionOrder: 0
8 | icon: {instanceID: 0}
9 | userData:
10 | assetBundleName:
11 | assetBundleVariant:
12 |
--------------------------------------------------------------------------------
/projects/shared/Runtime/ValidComponents/PlayerManager.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 0c48361b07a278840aaa923674b624a4
3 | MonoImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | defaultReferences: []
7 | executionOrder: 0
8 | icon: {instanceID: 0}
9 | userData:
10 | assetBundleName:
11 | assetBundleVariant:
12 |
--------------------------------------------------------------------------------
/projects/shared/Runtime/ValidComponents/SomeOtherScript.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: b63b15c40a6b820448ba442b82c8f972
3 | MonoImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | defaultReferences: []
7 | executionOrder: 0
8 | icon: {instanceID: 0}
9 | userData:
10 | assetBundleName:
11 | assetBundleVariant:
12 |
--------------------------------------------------------------------------------
/package/Editor/MissingReferences/MissingProjectReferences.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 24b519cbfdbceec4eaef9b4361f3580b
3 | MonoImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | defaultReferences: []
7 | executionOrder: 0
8 | icon: {instanceID: 0}
9 | userData:
10 | assetBundleName:
11 | assetBundleVariant:
12 |
--------------------------------------------------------------------------------
/projects/shared/Runtime/MissingScripts/MyScriptWithProperties.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 7b4d9c98c950d5a4589c9131b00f01b3
3 | MonoImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | defaultReferences: []
7 | executionOrder: 0
8 | icon: {instanceID: 0}
9 | userData:
10 | assetBundleName:
11 | assetBundleVariant:
12 |
--------------------------------------------------------------------------------
/projects/shared/Runtime/MissingScripts/SceneValidationUtil_.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 9984497385257574eb942423960dfe07
3 | MonoImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | defaultReferences: []
7 | executionOrder: 0
8 | icon: {instanceID: 0}
9 | userData:
10 | assetBundleName:
11 | assetBundleVariant:
12 |
--------------------------------------------------------------------------------
/projects/shared/Runtime/ValidComponents/ComponentGenerator2.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 9ed9fa0e4e1ee644eba806dd0a9f4461
3 | MonoImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | defaultReferences: []
7 | executionOrder: 0
8 | icon: {instanceID: 0}
9 | userData:
10 | assetBundleName:
11 | assetBundleVariant:
12 |
--------------------------------------------------------------------------------
/projects/MissingComponent_2021_3/Assets/MyScriptWithProperties_.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 90bf983e5d88dae48874eff973b5a214
3 | MonoImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | defaultReferences: []
7 | executionOrder: 0
8 | icon: {instanceID: 0}
9 | userData:
10 | assetBundleName:
11 | assetBundleVariant:
12 |
--------------------------------------------------------------------------------
/projects/shared/Runtime/MissingScripts/ComponentGeneratorManager_.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: ff62ed17635c129488df58e217053ea1
3 | MonoImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | defaultReferences: []
7 | executionOrder: 0
8 | icon: {instanceID: 0}
9 | userData:
10 | assetBundleName:
11 | assetBundleVariant:
12 |
--------------------------------------------------------------------------------
/projects/shared/Runtime/ValidComponents/MyScriptWithPropertiesValid.cs.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 9e8d94c2e58c374419e51bafa29b39c2
3 | MonoImporter:
4 | externalObjects: {}
5 | serializedVersion: 2
6 | defaultReferences: []
7 | executionOrder: 0
8 | icon: {instanceID: 0}
9 | userData:
10 | assetBundleName:
11 | assetBundleVariant:
12 |
--------------------------------------------------------------------------------
/projects/shared/Runtime/ValidComponents/MyCoolComponent.cs:
--------------------------------------------------------------------------------
1 | using System.Collections;
2 | using System.Collections.Generic;
3 | using UnityEngine;
4 |
5 | public class MyCoolComponent : MonoBehaviour
6 | {
7 | // Start is called before the first frame update
8 | void Start()
9 | {
10 |
11 | }
12 |
13 | // Update is called once per frame
14 | void Update()
15 | {
16 |
17 | }
18 | }
19 |
--------------------------------------------------------------------------------
/projects/shared/Runtime/ValidComponents/NewMapManager.cs:
--------------------------------------------------------------------------------
1 | using System.Collections;
2 | using System.Collections.Generic;
3 | using UnityEngine;
4 |
5 | public class NewMapManager : MonoBehaviour
6 | {
7 | // Start is called before the first frame update
8 | void Start()
9 | {
10 |
11 | }
12 |
13 | // Update is called once per frame
14 | void Update()
15 | {
16 |
17 | }
18 | }
19 |
--------------------------------------------------------------------------------
/projects/shared/Runtime/ValidComponents/PlayerManager.cs:
--------------------------------------------------------------------------------
1 | using System.Collections;
2 | using System.Collections.Generic;
3 | using UnityEngine;
4 |
5 | public class PlayerManager : MonoBehaviour
6 | {
7 | // Start is called before the first frame update
8 | void Start()
9 | {
10 |
11 | }
12 |
13 | // Update is called once per frame
14 | void Update()
15 | {
16 |
17 | }
18 | }
19 |
--------------------------------------------------------------------------------
/projects/shared/Runtime/ValidComponents/SomeOtherScript.cs:
--------------------------------------------------------------------------------
1 | using System.Collections;
2 | using System.Collections.Generic;
3 | using UnityEngine;
4 |
5 | public class SomeOtherScript : MonoBehaviour
6 | {
7 | // Start is called before the first frame update
8 | void Start()
9 | {
10 |
11 | }
12 |
13 | // Update is called once per frame
14 | void Update()
15 | {
16 |
17 | }
18 | }
19 |
--------------------------------------------------------------------------------
/projects/shared/Runtime/ValidComponents/PlayerAttachment.cs:
--------------------------------------------------------------------------------
1 | using System.Collections;
2 | using System.Collections.Generic;
3 | using UnityEngine;
4 |
5 | public class PlayerAttachment : MonoBehaviour
6 | {
7 | // Start is called before the first frame update
8 | void Start()
9 | {
10 |
11 | }
12 |
13 | // Update is called once per frame
14 | void Update()
15 | {
16 |
17 | }
18 | }
19 |
--------------------------------------------------------------------------------
/projects/shared/Runtime/ValidComponents/ComponentGenerator2.cs:
--------------------------------------------------------------------------------
1 | using System.Collections;
2 | using System.Collections.Generic;
3 | using UnityEngine;
4 |
5 | public class ComponentGenerator2 : MonoBehaviour
6 | {
7 | // Start is called before the first frame update
8 | void Start()
9 | {
10 |
11 | }
12 |
13 | // Update is called once per frame
14 | void Update()
15 | {
16 |
17 | }
18 | }
19 |
--------------------------------------------------------------------------------
/projects/shared/Runtime/ValidComponents/MyScriptWithPropertiesValid.cs:
--------------------------------------------------------------------------------
1 | using System.Collections;
2 | using System.Collections.Generic;
3 | using UnityEngine;
4 |
5 | public class MyScriptWithPropertiesValid : MonoBehaviour
6 | {
7 | // Start is called before the first frame update
8 | void Start()
9 | {
10 |
11 | }
12 |
13 | // Update is called once per frame
14 | void Update()
15 | {
16 |
17 | }
18 | }
19 |
--------------------------------------------------------------------------------
/projects/shared/Runtime/MissingScripts/Tester_.cs:
--------------------------------------------------------------------------------
1 | // using System.Collections;
2 | // using System.Collections.Generic;
3 | // using UnityEngine;
4 | //
5 | // public class Tester : MonoBehaviour
6 | // {
7 | // // Start is called before the first frame update
8 | // void Start()
9 | // {
10 | //
11 | // }
12 | //
13 | // // Update is called once per frame
14 | // void Update()
15 | // {
16 | //
17 | // }
18 | // }
19 |
--------------------------------------------------------------------------------
/projects/shared/Runtime/Testing/ForceReserializeAssets.cs:
--------------------------------------------------------------------------------
1 | #if UNITY_EDITOR
2 | using UnityEditor;
3 | using UnityEngine;
4 |
5 | namespace Needle
6 | {
7 | public class ForceReserializeAssets : MonoBehaviour
8 | {
9 | [MenuItem("MissingComponent Tests/Force Reserialize")]
10 | public static void ForceReserialize()
11 | {
12 | AssetDatabase.ForceReserializeAssets();
13 | }
14 | }
15 | }
16 | #endif // UNITY_EDITOR
--------------------------------------------------------------------------------
/projects/MissingComponent_2020_3/ProjectSettings/VFXManager.asset:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!937362698 &1
4 | VFXManager:
5 | m_ObjectHideFlags: 0
6 | m_IndirectShader: {fileID: 0}
7 | m_CopyBufferShader: {fileID: 0}
8 | m_SortShader: {fileID: 0}
9 | m_StripUpdateShader: {fileID: 0}
10 | m_RenderPipeSettingsPath:
11 | m_FixedTimeStep: 0.016666668
12 | m_MaxDeltaTime: 0.05
13 | m_CompiledVersion: 0
14 | m_RuntimeVersion: 0
15 |
--------------------------------------------------------------------------------
/projects/shared/Runtime/MissingScripts/MapManager_.cs:
--------------------------------------------------------------------------------
1 | // using System.Collections;
2 | // using System.Collections.Generic;
3 | // using UnityEngine;
4 | //
5 | // public class MapManager : MonoBehaviour
6 | // {
7 | // // Start is called before the first frame update
8 | // void Start()
9 | // {
10 | //
11 | // }
12 | //
13 | // // Update is called once per frame
14 | // void Update()
15 | // {
16 | //
17 | // }
18 | // }
19 |
--------------------------------------------------------------------------------
/projects/shared/Runtime/MissingScripts/PlayerController_.cs:
--------------------------------------------------------------------------------
1 | // using System.Collections;
2 | // using System.Collections.Generic;
3 | // using UnityEngine;
4 | //
5 | // public class PlayerController : MonoBehaviour
6 | // {
7 | // // Start is called before the first frame update
8 | // void Start()
9 | // {
10 | //
11 | // }
12 | //
13 | // // Update is called once per frame
14 | // void Update()
15 | // {
16 | //
17 | // }
18 | // }
19 |
--------------------------------------------------------------------------------
/projects/shared/Runtime/MissingScripts/SceneValidationUtil_.cs:
--------------------------------------------------------------------------------
1 | // using System.Collections;
2 | // using System.Collections.Generic;
3 | // using UnityEngine;
4 | //
5 | // public class SceneValidationUtil : MonoBehaviour
6 | // {
7 | // // Start is called before the first frame update
8 | // void Start()
9 | // {
10 | //
11 | // }
12 | //
13 | // // Update is called once per frame
14 | // void Update()
15 | // {
16 | //
17 | // }
18 | // }
19 |
--------------------------------------------------------------------------------
/projects/MissingComponent_2021_3/Assets/MyScriptWithProperties_.cs:
--------------------------------------------------------------------------------
1 | using System.Collections;
2 | using System.Collections.Generic;
3 | using UnityEngine;
4 |
5 | public class MyScriptWithProperties : MonoBehaviour
6 | {
7 | public float MyFloatValue = 42;
8 |
9 | // Start is called before the first frame update
10 | void Start()
11 | {
12 |
13 | }
14 |
15 | // Update is called once per frame
16 | void Update()
17 | {
18 |
19 | }
20 | }
21 |
--------------------------------------------------------------------------------
/package/Editor/MissingReferences/Needle.MissingReferences.asmdef:
--------------------------------------------------------------------------------
1 | {
2 | "name": "Needle.MissingReferences",
3 | "rootNamespace": "",
4 | "references": [],
5 | "includePlatforms": [
6 | "Editor"
7 | ],
8 | "excludePlatforms": [],
9 | "allowUnsafeCode": false,
10 | "overrideReferences": true,
11 | "precompiledReferences": [],
12 | "autoReferenced": false,
13 | "defineConstraints": [],
14 | "versionDefines": [],
15 | "noEngineReferences": false
16 | }
--------------------------------------------------------------------------------
/projects/shared/Runtime/MissingScripts/ComponentGeneratorManager_.cs:
--------------------------------------------------------------------------------
1 | // using System.Collections;
2 | // using System.Collections.Generic;
3 | // using UnityEngine;
4 | //
5 | // public class ComponentGeneratorManager : MonoBehaviour
6 | // {
7 | // // Start is called before the first frame update
8 | // void Start()
9 | // {
10 | //
11 | // }
12 | //
13 | // // Update is called once per frame
14 | // void Update()
15 | // {
16 | //
17 | // }
18 | // }
19 |
--------------------------------------------------------------------------------
/projects/MissingComponent_2021_3/ProjectSettings/VFXManager.asset:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!937362698 &1
4 | VFXManager:
5 | m_ObjectHideFlags: 0
6 | m_IndirectShader: {fileID: 0}
7 | m_CopyBufferShader: {fileID: 0}
8 | m_SortShader: {fileID: 0}
9 | m_StripUpdateShader: {fileID: 0}
10 | m_RenderPipeSettingsPath:
11 | m_FixedTimeStep: 0.016666668
12 | m_MaxDeltaTime: 0.05
13 | m_CompiledVersion: 0
14 | m_RuntimeVersion: 0
15 | m_RuntimeResources: {fileID: 0}
16 |
--------------------------------------------------------------------------------
/projects/shared/Runtime/com.needle.missing-component-info-shared-assets.asmdef:
--------------------------------------------------------------------------------
1 | {
2 | "name": "com.needle.missing-component-info-shared-assets",
3 | "references": ["GUID:2bafac87e7f4b9b418d9448d219b01ab"],
4 | "includePlatforms": [],
5 | "excludePlatforms": [],
6 | "allowUnsafeCode": false,
7 | "overrideReferences": false,
8 | "precompiledReferences": [],
9 | "autoReferenced": false,
10 | "defineConstraints": [],
11 | "versionDefines": [],
12 | "noEngineReferences": false
13 | }
--------------------------------------------------------------------------------
/projects/MissingComponent_2022/ProjectSettings/VFXManager.asset:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!937362698 &1
4 | VFXManager:
5 | m_ObjectHideFlags: 0
6 | m_IndirectShader: {fileID: 0}
7 | m_CopyBufferShader: {fileID: 0}
8 | m_SortShader: {fileID: 0}
9 | m_StripUpdateShader: {fileID: 0}
10 | m_RenderPipeSettingsPath:
11 | m_FixedTimeStep: 0.016666668
12 | m_MaxDeltaTime: 0.05
13 | m_MaxScrubTime: 30
14 | m_CompiledVersion: 0
15 | m_RuntimeVersion: 0
16 | m_RuntimeResources: {fileID: 0}
17 |
--------------------------------------------------------------------------------
/Readme.md:
--------------------------------------------------------------------------------
1 | # Unity - Display missing component type info
2 |
3 | 
4 |
5 | [See Readme](package/Readme.md) for more information
6 |
7 | ---
8 | ## Contact ✒️
9 | [🌵 needle — tools for unity](https://needle.tools) •
10 | [@NeedleTools](https://twitter.com/NeedleTools) •
11 | [@marcel_wiessler](https://twitter.com/marcel_wiessler) •
12 | [@hybridherbst](https://twitter.com/hybridherbst) •
13 | [Needle Discord](https://discord.gg/CFZDp4b)
14 |
--------------------------------------------------------------------------------
/projects/MissingComponent_2020_3/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_EnableOutputSuspension: 1
16 | m_SpatializerPlugin:
17 | m_AmbisonicDecoderPlugin:
18 | m_DisableAudio: 0
19 | m_VirtualizeEffects: 1
20 | m_RequestedDSPBufferSize: 0
21 |
--------------------------------------------------------------------------------
/projects/MissingComponent_2021_3/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_EnableOutputSuspension: 1
16 | m_SpatializerPlugin:
17 | m_AmbisonicDecoderPlugin:
18 | m_DisableAudio: 0
19 | m_VirtualizeEffects: 1
20 | m_RequestedDSPBufferSize: 0
21 |
--------------------------------------------------------------------------------
/projects/MissingComponent_2022/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_EnableOutputSuspension: 1
16 | m_SpatializerPlugin:
17 | m_AmbisonicDecoderPlugin:
18 | m_DisableAudio: 0
19 | m_VirtualizeEffects: 1
20 | m_RequestedDSPBufferSize: 0
21 |
--------------------------------------------------------------------------------
/projects/shared/Runtime/MissingScripts/MyScriptWithProperties.cs:
--------------------------------------------------------------------------------
1 | // using System;
2 | // using System.Collections;
3 | // using System.Collections.Generic;
4 | // using UnityEngine;
5 | //
6 | // public class MyScriptWithProperties_ : MonoBehaviour
7 | // {
8 | // public float MyFloatValue = 42;
9 | // public string MyText = "Hello";
10 | // public bool MyBool;
11 | // public MySerializedClass MyClass;
12 | // public List MyList;
13 | //
14 | // [Serializable]
15 | // public class MySerializedClass
16 | // {
17 | // public bool MyBool;
18 | // }
19 | //
20 | // }
21 |
--------------------------------------------------------------------------------
/projects/MissingComponent_2022/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 |
--------------------------------------------------------------------------------
/projects/MissingComponent_2020_3/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 |
--------------------------------------------------------------------------------
/projects/MissingComponent_2021_3/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 |
--------------------------------------------------------------------------------
/package/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "displayName": "Needle Missing Component Info",
3 | "name": "com.needle.missing-component-info",
4 | "version": "1.6.0",
5 | "description": "Utility that helps to reconnect when scripts/components become missing. Keeps type information per component around and can show serialized data for missing components.",
6 | "keywords": [
7 | "Editor",
8 | "Serialization",
9 | "Helper"
10 | ],
11 | "repository": {
12 | "type": "git",
13 | "url": "https://github.com/needle-tools/missing-component-info"
14 | },
15 | "author": {
16 | "name": "Needle",
17 | "email": "hi@needle.tools",
18 | "url": "https://needle.tools"
19 | },
20 | "category": "Tools",
21 | "type": "tool"
22 | }
--------------------------------------------------------------------------------
/projects/MissingComponent_2020_3/ProjectSettings/UnityConnectSettings.asset:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!310 &1
4 | UnityConnectSettings:
5 | m_ObjectHideFlags: 0
6 | serializedVersion: 1
7 | m_Enabled: 0
8 | m_TestMode: 0
9 | m_EventOldUrl: https://api.uca.cloud.unity3d.com/v1/events
10 | m_EventUrl: https://cdp.cloud.unity3d.com/v1/events
11 | m_ConfigUrl: https://config.uca.cloud.unity3d.com
12 | m_DashboardUrl: https://dashboard.unity3d.com
13 | m_TestInitMode: 0
14 | CrashReportingSettings:
15 | m_EventUrl: https://perf-events.cloud.unity3d.com
16 | m_Enabled: 0
17 | m_LogBufferSize: 10
18 | m_CaptureEditorExceptions: 1
19 | UnityPurchasingSettings:
20 | m_Enabled: 0
21 | m_TestMode: 0
22 | UnityAnalyticsSettings:
23 | m_Enabled: 0
24 | m_TestMode: 0
25 | m_InitializeOnStartup: 1
26 | UnityAdsSettings:
27 | m_Enabled: 0
28 | m_InitializeOnStartup: 1
29 | m_TestMode: 0
30 | m_IosGameId:
31 | m_AndroidGameId:
32 | m_GameIds: {}
33 | m_GameId:
34 | PerformanceReportingSettings:
35 | m_Enabled: 0
36 |
--------------------------------------------------------------------------------
/projects/MissingComponent_2021_3/ProjectSettings/UnityConnectSettings.asset:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!310 &1
4 | UnityConnectSettings:
5 | m_ObjectHideFlags: 0
6 | serializedVersion: 1
7 | m_Enabled: 0
8 | m_TestMode: 0
9 | m_EventOldUrl: https://api.uca.cloud.unity3d.com/v1/events
10 | m_EventUrl: https://cdp.cloud.unity3d.com/v1/events
11 | m_ConfigUrl: https://config.uca.cloud.unity3d.com
12 | m_DashboardUrl: https://dashboard.unity3d.com
13 | m_TestInitMode: 0
14 | CrashReportingSettings:
15 | m_EventUrl: https://perf-events.cloud.unity3d.com
16 | m_Enabled: 0
17 | m_LogBufferSize: 10
18 | m_CaptureEditorExceptions: 1
19 | UnityPurchasingSettings:
20 | m_Enabled: 0
21 | m_TestMode: 0
22 | UnityAnalyticsSettings:
23 | m_Enabled: 0
24 | m_TestMode: 0
25 | m_InitializeOnStartup: 1
26 | UnityAdsSettings:
27 | m_Enabled: 0
28 | m_InitializeOnStartup: 1
29 | m_TestMode: 0
30 | m_IosGameId:
31 | m_AndroidGameId:
32 | m_GameIds: {}
33 | m_GameId:
34 | PerformanceReportingSettings:
35 | m_Enabled: 0
36 |
--------------------------------------------------------------------------------
/projects/MissingComponent_2022/ProjectSettings/UnityConnectSettings.asset:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!310 &1
4 | UnityConnectSettings:
5 | m_ObjectHideFlags: 0
6 | serializedVersion: 1
7 | m_Enabled: 0
8 | m_TestMode: 0
9 | m_EventOldUrl: https://api.uca.cloud.unity3d.com/v1/events
10 | m_EventUrl: https://cdp.cloud.unity3d.com/v1/events
11 | m_ConfigUrl: https://config.uca.cloud.unity3d.com
12 | m_DashboardUrl: https://dashboard.unity3d.com
13 | m_TestInitMode: 0
14 | CrashReportingSettings:
15 | m_EventUrl: https://perf-events.cloud.unity3d.com
16 | m_Enabled: 0
17 | m_LogBufferSize: 10
18 | m_CaptureEditorExceptions: 1
19 | UnityPurchasingSettings:
20 | m_Enabled: 0
21 | m_TestMode: 0
22 | UnityAnalyticsSettings:
23 | m_Enabled: 0
24 | m_TestMode: 0
25 | m_InitializeOnStartup: 1
26 | UnityAdsSettings:
27 | m_Enabled: 0
28 | m_InitializeOnStartup: 1
29 | m_TestMode: 0
30 | m_IosGameId:
31 | m_AndroidGameId:
32 | m_GameIds: {}
33 | m_GameId:
34 | PerformanceReportingSettings:
35 | m_Enabled: 0
36 |
--------------------------------------------------------------------------------
/projects/MissingComponent_2021_3/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_EnablePackageDependencies: 0
17 | m_AdvancedSettingsExpanded: 1
18 | m_ScopedRegistriesSettingsExpanded: 1
19 | m_SeeAllPackageVersions: 0
20 | oneTimeWarningShown: 0
21 | m_Registries:
22 | - m_Id: main
23 | m_Name:
24 | m_Url: https://packages.unity.com
25 | m_Scopes: []
26 | m_IsDefault: 1
27 | m_Capabilities: 7
28 | m_UserSelectedRegistryName:
29 | m_UserAddingNewScopedRegistry: 0
30 | m_RegistryInfoDraft:
31 | m_Modified: 0
32 | m_ErrorMessage:
33 | m_UserModificationsInstanceId: -882
34 | m_OriginalInstanceId: -884
35 | m_LoadAssets: 0
36 |
--------------------------------------------------------------------------------
/package/License.md:
--------------------------------------------------------------------------------
1 | MIT License
2 |
3 | Copyright (c) 2020 Needle
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 |
--------------------------------------------------------------------------------
/projects/shared/License.md:
--------------------------------------------------------------------------------
1 | MIT License
2 |
3 | Copyright (c) 2020 Needle
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 |
--------------------------------------------------------------------------------
/package/Editor/HiddenObjectsWithMissingScripts.cs:
--------------------------------------------------------------------------------
1 | using System.Collections.Generic;
2 | using UnityEditor;
3 | using UnityEngine;
4 |
5 | namespace Needle
6 | {
7 | public static class HiddenObjectsWithMissingScripts
8 | {
9 | [MenuItem("Tools/Needle/Show Objects With Missing Scripts")]
10 | private static void ShowHiddenObjects()
11 | {
12 | var gos = Resources.FindObjectsOfTypeAll();
13 | var comps = new List();
14 | var previouslyHidden = new List();
15 | foreach (var go in gos)
16 | {
17 | comps.Clear();
18 | go.GetComponents(comps);
19 | foreach(var comp in comps)
20 | {
21 | if (comp == null)
22 | {
23 | previouslyHidden.Add(go);
24 | go.hideFlags = HideFlags.None;
25 | }
26 | }
27 | }
28 | // Select and log the objects that were hidden
29 | if (previouslyHidden.Count > 0)
30 | {
31 | // ReSharper disable once CoVariantArrayConversion
32 | Selection.objects = previouslyHidden.ToArray();
33 | Debug.Log(
34 | $"Found {previouslyHidden.Count} hidden objects with missing scripts:\n" +
35 | $"{string.Join("\n", previouslyHidden.ConvertAll(go => go.name).ToArray())}");
36 | }
37 | }
38 | }
39 | }
--------------------------------------------------------------------------------
/projects/MissingComponent_2020_3/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_EnablePreviewPackages: 0
16 | m_EnablePackageDependencies: 0
17 | m_AdvancedSettingsExpanded: 1
18 | m_ScopedRegistriesSettingsExpanded: 1
19 | oneTimeWarningShown: 0
20 | m_Registries:
21 | - m_Id: main
22 | m_Name:
23 | m_Url: https://packages.unity.com
24 | m_Scopes: []
25 | m_IsDefault: 1
26 | m_Capabilities: 7
27 | m_UserSelectedRegistryName:
28 | m_UserAddingNewScopedRegistry: 0
29 | m_RegistryInfoDraft:
30 | m_ErrorMessage:
31 | m_Original:
32 | m_Id:
33 | m_Name:
34 | m_Url:
35 | m_Scopes: []
36 | m_IsDefault: 0
37 | m_Capabilities: 0
38 | m_Modified: 0
39 | m_Name:
40 | m_Url:
41 | m_Scopes:
42 | -
43 | m_SelectedScopeIndex: 0
44 |
--------------------------------------------------------------------------------
/projects/MissingComponent_2021_3/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 |
--------------------------------------------------------------------------------
/projects/MissingComponent_2022/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 |
--------------------------------------------------------------------------------
/projects/MissingComponent_2022/ProjectSettings/PackageManagerSettings.asset:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!114 &1
4 | MonoBehaviour:
5 | m_ObjectHideFlags: 61
6 | m_CorrespondingSourceObject: {fileID: 0}
7 | m_PrefabInstance: {fileID: 0}
8 | m_PrefabAsset: {fileID: 0}
9 | m_GameObject: {fileID: 0}
10 | m_Enabled: 1
11 | m_EditorHideFlags: 0
12 | m_Script: {fileID: 13964, guid: 0000000000000000e000000000000000, type: 0}
13 | m_Name:
14 | m_EditorClassIdentifier:
15 | m_EnablePreReleasePackages: 0
16 | m_AdvancedSettingsExpanded: 1
17 | m_ScopedRegistriesSettingsExpanded: 1
18 | m_SeeAllPackageVersions: 0
19 | m_DismissPreviewPackagesInUse: 0
20 | oneTimeWarningShown: 0
21 | m_Registries:
22 | - m_Id: main
23 | m_Name:
24 | m_Url: https://packages.unity.com
25 | m_Scopes: []
26 | m_IsDefault: 1
27 | m_Capabilities: 7
28 | m_ConfigSource: 0
29 | - m_Id: scoped:project:RegistryName
30 | m_Name: RegistryName
31 | m_Url: https://package.openupm.com
32 | m_Scopes:
33 | - com.needle.missing-component-info
34 | m_IsDefault: 0
35 | m_Capabilities: 0
36 | m_ConfigSource: 4
37 | m_UserSelectedRegistryName: RegistryName
38 | m_UserAddingNewScopedRegistry: 0
39 | m_RegistryInfoDraft:
40 | m_Modified: 0
41 | m_ErrorMessage:
42 | m_UserModificationsInstanceId: -834
43 | m_OriginalInstanceId: -838
44 | m_LoadAssets: 0
45 |
--------------------------------------------------------------------------------
/projects/MissingComponent_2020_3/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_SerializationMode: 2
8 | m_LineEndingsForNewScripts: 2
9 | m_DefaultBehaviorMode: 0
10 | m_PrefabRegularEnvironment: {fileID: 0}
11 | m_PrefabUIEnvironment: {fileID: 0}
12 | m_SpritePackerMode: 0
13 | m_SpritePackerPaddingPower: 1
14 | m_EtcTextureCompressorBehavior: 1
15 | m_EtcTextureFastCompressor: 1
16 | m_EtcTextureNormalCompressor: 2
17 | m_EtcTextureBestCompressor: 4
18 | m_ProjectGenerationIncludedExtensions: txt;xml;fnt;cd;asmdef;asmref;rsp
19 | m_ProjectGenerationRootNamespace:
20 | m_EnableTextureStreamingInEditMode: 1
21 | m_EnableTextureStreamingInPlayMode: 1
22 | m_AsyncShaderCompilation: 1
23 | m_CachingShaderPreprocessor: 1
24 | m_PrefabModeAllowAutoSave: 1
25 | m_EnterPlayModeOptionsEnabled: 0
26 | m_EnterPlayModeOptions: 3
27 | m_GameObjectNamingDigits: 1
28 | m_GameObjectNamingScheme: 0
29 | m_AssetNamingUsesSpace: 1
30 | m_UseLegacyProbeSampleCount: 0
31 | m_SerializeInlineMappingsOnOneLine: 1
32 | m_DisableCookiesInLightmapper: 0
33 | m_AssetPipelineMode: 1
34 | m_CacheServerMode: 0
35 | m_CacheServerEndpoint:
36 | m_CacheServerNamespacePrefix: default
37 | m_CacheServerEnableDownload: 1
38 | m_CacheServerEnableUpload: 1
39 | m_CacheServerEnableAuth: 0
40 | m_CacheServerEnableTls: 0
41 |
--------------------------------------------------------------------------------
/projects/MissingComponent_2020_3/ProjectSettings/DynamicsManager.asset:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!55 &1
4 | PhysicsManager:
5 | m_ObjectHideFlags: 0
6 | serializedVersion: 13
7 | m_Gravity: {x: 0, y: -9.81, z: 0}
8 | m_DefaultMaterial: {fileID: 0}
9 | m_BounceThreshold: 2
10 | m_DefaultMaxDepenetrationVelocity: 10
11 | m_SleepThreshold: 0.005
12 | m_DefaultContactOffset: 0.01
13 | m_DefaultSolverIterations: 6
14 | m_DefaultSolverVelocityIterations: 1
15 | m_QueriesHitBackfaces: 0
16 | m_QueriesHitTriggers: 1
17 | m_EnableAdaptiveForce: 0
18 | m_ClothInterCollisionDistance: 0.1
19 | m_ClothInterCollisionStiffness: 0.2
20 | m_ContactsGeneration: 1
21 | m_LayerCollisionMatrix: ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
22 | m_AutoSimulation: 1
23 | m_AutoSyncTransforms: 0
24 | m_ReuseCollisionCallbacks: 0
25 | m_ClothInterCollisionSettingsToggle: 0
26 | m_ClothGravity: {x: 0, y: -9.81, z: 0}
27 | m_ContactPairsMode: 0
28 | m_BroadphaseType: 0
29 | m_WorldBounds:
30 | m_Center: {x: 0, y: 0, z: 0}
31 | m_Extent: {x: 250, y: 250, z: 250}
32 | m_WorldSubdivisions: 8
33 | m_FrictionType: 0
34 | m_EnableEnhancedDeterminism: 0
35 | m_EnableUnifiedHeightmaps: 1
36 | m_SolverType: 0
37 | m_DefaultMaxAngularSpeed: 50
38 |
--------------------------------------------------------------------------------
/projects/MissingComponent_2022/ProjectSettings/DynamicsManager.asset:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!55 &1
4 | PhysicsManager:
5 | m_ObjectHideFlags: 0
6 | serializedVersion: 13
7 | m_Gravity: {x: 0, y: -9.81, z: 0}
8 | m_DefaultMaterial: {fileID: 0}
9 | m_BounceThreshold: 2
10 | m_DefaultMaxDepenetrationVelocity: 10
11 | m_SleepThreshold: 0.005
12 | m_DefaultContactOffset: 0.01
13 | m_DefaultSolverIterations: 6
14 | m_DefaultSolverVelocityIterations: 1
15 | m_QueriesHitBackfaces: 0
16 | m_QueriesHitTriggers: 1
17 | m_EnableAdaptiveForce: 0
18 | m_ClothInterCollisionDistance: 0.1
19 | m_ClothInterCollisionStiffness: 0.2
20 | m_ContactsGeneration: 1
21 | m_LayerCollisionMatrix: ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
22 | m_AutoSimulation: 1
23 | m_AutoSyncTransforms: 0
24 | m_ReuseCollisionCallbacks: 0
25 | m_ClothInterCollisionSettingsToggle: 0
26 | m_ClothGravity: {x: 0, y: -9.81, z: 0}
27 | m_ContactPairsMode: 0
28 | m_BroadphaseType: 0
29 | m_WorldBounds:
30 | m_Center: {x: 0, y: 0, z: 0}
31 | m_Extent: {x: 250, y: 250, z: 250}
32 | m_WorldSubdivisions: 8
33 | m_FrictionType: 0
34 | m_EnableEnhancedDeterminism: 0
35 | m_EnableUnifiedHeightmaps: 1
36 | m_ImprovedPatchFriction: 0
37 | m_SolverType: 0
38 | m_DefaultMaxAngularSpeed: 50
39 |
--------------------------------------------------------------------------------
/projects/MissingComponent_2021_3/ProjectSettings/DynamicsManager.asset:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!55 &1
4 | PhysicsManager:
5 | m_ObjectHideFlags: 0
6 | serializedVersion: 13
7 | m_Gravity: {x: 0, y: -9.81, z: 0}
8 | m_DefaultMaterial: {fileID: 0}
9 | m_BounceThreshold: 2
10 | m_DefaultMaxDepenetrationVelocity: 10
11 | m_SleepThreshold: 0.005
12 | m_DefaultContactOffset: 0.01
13 | m_DefaultSolverIterations: 6
14 | m_DefaultSolverVelocityIterations: 1
15 | m_QueriesHitBackfaces: 0
16 | m_QueriesHitTriggers: 1
17 | m_EnableAdaptiveForce: 0
18 | m_ClothInterCollisionDistance: 0.1
19 | m_ClothInterCollisionStiffness: 0.2
20 | m_ContactsGeneration: 1
21 | m_LayerCollisionMatrix: ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
22 | m_AutoSimulation: 1
23 | m_AutoSyncTransforms: 0
24 | m_ReuseCollisionCallbacks: 0
25 | m_ClothInterCollisionSettingsToggle: 0
26 | m_ClothGravity: {x: 0, y: -9.81, z: 0}
27 | m_ContactPairsMode: 0
28 | m_BroadphaseType: 0
29 | m_WorldBounds:
30 | m_Center: {x: 0, y: 0, z: 0}
31 | m_Extent: {x: 250, y: 250, z: 250}
32 | m_WorldSubdivisions: 8
33 | m_FrictionType: 0
34 | m_EnableEnhancedDeterminism: 0
35 | m_EnableUnifiedHeightmaps: 1
36 | m_ImprovedPatchFriction: 0
37 | m_SolverType: 0
38 | m_DefaultMaxAngularSpeed: 50
39 |
--------------------------------------------------------------------------------
/projects/MissingComponent_2021_3/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_SerializationMode: 2
8 | m_LineEndingsForNewScripts: 2
9 | m_DefaultBehaviorMode: 0
10 | m_PrefabRegularEnvironment: {fileID: 0}
11 | m_PrefabUIEnvironment: {fileID: 0}
12 | m_SpritePackerMode: 0
13 | m_SpritePackerPaddingPower: 1
14 | m_Bc7TextureCompressor: 0
15 | m_EtcTextureCompressorBehavior: 1
16 | m_EtcTextureFastCompressor: 1
17 | m_EtcTextureNormalCompressor: 2
18 | m_EtcTextureBestCompressor: 4
19 | m_ProjectGenerationIncludedExtensions: txt;xml;fnt;cd;asmdef;asmref;rsp;java;cpp;c;mm;m;h
20 | m_ProjectGenerationRootNamespace:
21 | m_EnableTextureStreamingInEditMode: 1
22 | m_EnableTextureStreamingInPlayMode: 1
23 | m_AsyncShaderCompilation: 1
24 | m_CachingShaderPreprocessor: 1
25 | m_PrefabModeAllowAutoSave: 1
26 | m_EnterPlayModeOptionsEnabled: 0
27 | m_EnterPlayModeOptions: 3
28 | m_GameObjectNamingDigits: 1
29 | m_GameObjectNamingScheme: 0
30 | m_AssetNamingUsesSpace: 1
31 | m_UseLegacyProbeSampleCount: 0
32 | m_SerializeInlineMappingsOnOneLine: 1
33 | m_DisableCookiesInLightmapper: 0
34 | m_AssetPipelineMode: 1
35 | m_RefreshImportMode: 0
36 | m_CacheServerMode: 0
37 | m_CacheServerEndpoint:
38 | m_CacheServerNamespacePrefix: default
39 | m_CacheServerEnableDownload: 1
40 | m_CacheServerEnableUpload: 1
41 | m_CacheServerEnableAuth: 0
42 | m_CacheServerEnableTls: 0
43 |
--------------------------------------------------------------------------------
/projects/MissingComponent_2022/ProjectSettings/EditorSettings.asset:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!159 &1
4 | EditorSettings:
5 | m_ObjectHideFlags: 0
6 | serializedVersion: 12
7 | m_SerializationMode: 2
8 | m_LineEndingsForNewScripts: 2
9 | m_DefaultBehaviorMode: 0
10 | m_PrefabRegularEnvironment: {fileID: 0}
11 | m_PrefabUIEnvironment: {fileID: 0}
12 | m_SpritePackerMode: 0
13 | m_SpritePackerCacheSize: 10
14 | m_SpritePackerPaddingPower: 1
15 | m_Bc7TextureCompressor: 0
16 | m_EtcTextureCompressorBehavior: 1
17 | m_EtcTextureFastCompressor: 1
18 | m_EtcTextureNormalCompressor: 2
19 | m_EtcTextureBestCompressor: 4
20 | m_ProjectGenerationIncludedExtensions: txt;xml;fnt;cd;asmdef;asmref;rsp;java;cpp;c;mm;m;h
21 | m_ProjectGenerationRootNamespace:
22 | m_EnableTextureStreamingInEditMode: 1
23 | m_EnableTextureStreamingInPlayMode: 1
24 | m_EnableEditorAsyncCPUTextureLoading: 0
25 | m_AsyncShaderCompilation: 1
26 | m_PrefabModeAllowAutoSave: 1
27 | m_EnterPlayModeOptionsEnabled: 0
28 | m_EnterPlayModeOptions: 7
29 | m_GameObjectNamingDigits: 1
30 | m_GameObjectNamingScheme: 0
31 | m_AssetNamingUsesSpace: 1
32 | m_UseLegacyProbeSampleCount: 0
33 | m_SerializeInlineMappingsOnOneLine: 1
34 | m_DisableCookiesInLightmapper: 0
35 | m_AssetPipelineMode: 1
36 | m_RefreshImportMode: 0
37 | m_CacheServerMode: 0
38 | m_CacheServerEndpoint:
39 | m_CacheServerNamespacePrefix: default
40 | m_CacheServerEnableDownload: 1
41 | m_CacheServerEnableUpload: 1
42 | m_CacheServerEnableAuth: 0
43 | m_CacheServerEnableTls: 0
44 | m_CacheServerValidationMode: 2
45 |
--------------------------------------------------------------------------------
/package/Readme.md:
--------------------------------------------------------------------------------
1 | # Display missing component type info
2 |
3 | This package must be installed to your project BEFORE you have missing scripts. Otherwise no type information is serialized and can therefore not be displayed later when you have missing scripts in a prefab or scene.
4 |
5 | 
6 |
7 | ## Installation 💾
8 |
9 | ### Use Needle Installer 🚀
10 | 1. [Click here](https://package-installer.glitch.me/v1/installer/OpenUPM/com.needle.missing-component-info?registry=https://package.openupm.com) to download a Needle installer .unitypackage.
11 | 2. Drop it into your project to install this package from [OpenUPM](https://openupm.com/packages/com.needle.missing-component-info/)
12 | 3. That's it
13 |
14 |
15 | Add from OpenUPM | via scoped registry, recommended
16 |
17 | To add OpenUPM to your project:
18 |
19 | - open `Edit/Project Settings/Package Manager`
20 | - add a new Scoped Registry:
21 | ```
22 | Name: OpenUPM
23 | URL: https://package.openupm.com/
24 | Scope(s): com.needle
25 | ```
26 | - click Save
27 | - open Package Manager
28 | - Select ``My Registries`` in dropdown top left
29 | - Select ``Missing Component Info`` and click ``Install``
30 |
31 |
32 |
33 | ## Contact ✒️
34 | [🌵 needle — tools for unity](https://needle.tools) •
35 | [@NeedleTools](https://twitter.com/NeedleTools) •
36 | [@marcel_wiessler](https://twitter.com/marcel_wiessler) •
37 | [@hybridherbst](https://twitter.com/hybridherbst) •
38 | [Needle Discord](https://discord.gg/CFZDp4b)
39 |
--------------------------------------------------------------------------------
/package/Changelog.md:
--------------------------------------------------------------------------------
1 | # Changelog
2 | All notable changes to this package will be documented in this file.
3 |
4 | The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/)
5 | and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html).
6 |
7 | ## [1.6.0] - 2023-06-27
8 | - Remove: display of serialized properties in the inspector, usage of GlobalObjectId
9 |
10 | ## [1.5.1] - 2023-06-24
11 | - Change: Prevent serializing missing asset guid
12 | - Change: Improve `Find Hidden Objects With Missing Scripts` menu item by selecting previously missing objects and logging object names
13 |
14 | ## [1.5.0] - 2023-06-07
15 | - Add check for missing references in RenderSettings
16 | - Add check for missing references in Lighting/LightmapSettings
17 |
18 | ## [1.4.1] - 2023-05-12
19 | - Fixed components getting dirtied more often than they should
20 | - Fixed rare exception on domain reload with EditorStyles being null
21 |
22 | ## [1.4.0] - 2023-05-12
23 | - Added MissingReferences tooling, originally based on SuperScience's MissingReferenceFinder
24 | - Added test API (`SceneScanner`) for missing references for use in TestRunner
25 |
26 | ## [1.3.0] - 2022-06-27
27 | - Add menu item to ``Tools/Needle/`` to make invisible objects with missing scripts visible
28 |
29 | ## [1.2.2-exp] - 2022-06-13
30 | - hide when editor is not expanded
31 | - catch NotSupported exception when trying to find candidate types
32 |
33 | ## [1.2.0-exp] - 2022-06-13
34 | - add foldout to find potential types
35 |
36 | ## [1.1.3] - 2022-06-10
37 | - fix author, description, repo
38 |
39 | ## [1.1.2] - 2022-06-07
40 | - add foldout to render serialized properties
41 | - lazy load serialized properties (if foldout is expanded)
42 |
43 | ## [1.0.0] - 2022-06-07
44 | - initial release
--------------------------------------------------------------------------------
/projects/MissingComponent_2020_3/ProjectSettings/NavMeshAreas.asset:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!126 &1
4 | NavMeshProjectSettings:
5 | m_ObjectHideFlags: 0
6 | serializedVersion: 2
7 | areas:
8 | - name: Walkable
9 | cost: 1
10 | - name: Not Walkable
11 | cost: 1
12 | - name: Jump
13 | cost: 2
14 | - name:
15 | cost: 1
16 | - name:
17 | cost: 1
18 | - name:
19 | cost: 1
20 | - name:
21 | cost: 1
22 | - name:
23 | cost: 1
24 | - name:
25 | cost: 1
26 | - name:
27 | cost: 1
28 | - name:
29 | cost: 1
30 | - name:
31 | cost: 1
32 | - name:
33 | cost: 1
34 | - name:
35 | cost: 1
36 | - name:
37 | cost: 1
38 | - name:
39 | cost: 1
40 | - name:
41 | cost: 1
42 | - name:
43 | cost: 1
44 | - name:
45 | cost: 1
46 | - name:
47 | cost: 1
48 | - name:
49 | cost: 1
50 | - name:
51 | cost: 1
52 | - name:
53 | cost: 1
54 | - name:
55 | cost: 1
56 | - name:
57 | cost: 1
58 | - name:
59 | cost: 1
60 | - name:
61 | cost: 1
62 | - name:
63 | cost: 1
64 | - name:
65 | cost: 1
66 | - name:
67 | cost: 1
68 | - name:
69 | cost: 1
70 | - name:
71 | cost: 1
72 | m_LastAgentTypeID: -887442657
73 | m_Settings:
74 | - serializedVersion: 2
75 | agentTypeID: 0
76 | agentRadius: 0.5
77 | agentHeight: 2
78 | agentSlope: 45
79 | agentClimb: 0.75
80 | ledgeDropHeight: 0
81 | maxJumpAcrossDistance: 0
82 | minRegionArea: 2
83 | manualCellSize: 0
84 | cellSize: 0.16666667
85 | manualTileSize: 0
86 | tileSize: 256
87 | accuratePlacement: 0
88 | maxJobWorkers: 0
89 | preserveTilesOutsideBounds: 0
90 | debug:
91 | m_Flags: 0
92 | m_SettingNames:
93 | - Humanoid
94 |
--------------------------------------------------------------------------------
/projects/MissingComponent_2021_3/ProjectSettings/NavMeshAreas.asset:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!126 &1
4 | NavMeshProjectSettings:
5 | m_ObjectHideFlags: 0
6 | serializedVersion: 2
7 | areas:
8 | - name: Walkable
9 | cost: 1
10 | - name: Not Walkable
11 | cost: 1
12 | - name: Jump
13 | cost: 2
14 | - name:
15 | cost: 1
16 | - name:
17 | cost: 1
18 | - name:
19 | cost: 1
20 | - name:
21 | cost: 1
22 | - name:
23 | cost: 1
24 | - name:
25 | cost: 1
26 | - name:
27 | cost: 1
28 | - name:
29 | cost: 1
30 | - name:
31 | cost: 1
32 | - name:
33 | cost: 1
34 | - name:
35 | cost: 1
36 | - name:
37 | cost: 1
38 | - name:
39 | cost: 1
40 | - name:
41 | cost: 1
42 | - name:
43 | cost: 1
44 | - name:
45 | cost: 1
46 | - name:
47 | cost: 1
48 | - name:
49 | cost: 1
50 | - name:
51 | cost: 1
52 | - name:
53 | cost: 1
54 | - name:
55 | cost: 1
56 | - name:
57 | cost: 1
58 | - name:
59 | cost: 1
60 | - name:
61 | cost: 1
62 | - name:
63 | cost: 1
64 | - name:
65 | cost: 1
66 | - name:
67 | cost: 1
68 | - name:
69 | cost: 1
70 | - name:
71 | cost: 1
72 | m_LastAgentTypeID: -887442657
73 | m_Settings:
74 | - serializedVersion: 2
75 | agentTypeID: 0
76 | agentRadius: 0.5
77 | agentHeight: 2
78 | agentSlope: 45
79 | agentClimb: 0.75
80 | ledgeDropHeight: 0
81 | maxJumpAcrossDistance: 0
82 | minRegionArea: 2
83 | manualCellSize: 0
84 | cellSize: 0.16666667
85 | manualTileSize: 0
86 | tileSize: 256
87 | accuratePlacement: 0
88 | maxJobWorkers: 0
89 | preserveTilesOutsideBounds: 0
90 | debug:
91 | m_Flags: 0
92 | m_SettingNames:
93 | - Humanoid
94 |
--------------------------------------------------------------------------------
/projects/MissingComponent_2022/ProjectSettings/NavMeshAreas.asset:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!126 &1
4 | NavMeshProjectSettings:
5 | m_ObjectHideFlags: 0
6 | serializedVersion: 2
7 | areas:
8 | - name: Walkable
9 | cost: 1
10 | - name: Not Walkable
11 | cost: 1
12 | - name: Jump
13 | cost: 2
14 | - name:
15 | cost: 1
16 | - name:
17 | cost: 1
18 | - name:
19 | cost: 1
20 | - name:
21 | cost: 1
22 | - name:
23 | cost: 1
24 | - name:
25 | cost: 1
26 | - name:
27 | cost: 1
28 | - name:
29 | cost: 1
30 | - name:
31 | cost: 1
32 | - name:
33 | cost: 1
34 | - name:
35 | cost: 1
36 | - name:
37 | cost: 1
38 | - name:
39 | cost: 1
40 | - name:
41 | cost: 1
42 | - name:
43 | cost: 1
44 | - name:
45 | cost: 1
46 | - name:
47 | cost: 1
48 | - name:
49 | cost: 1
50 | - name:
51 | cost: 1
52 | - name:
53 | cost: 1
54 | - name:
55 | cost: 1
56 | - name:
57 | cost: 1
58 | - name:
59 | cost: 1
60 | - name:
61 | cost: 1
62 | - name:
63 | cost: 1
64 | - name:
65 | cost: 1
66 | - name:
67 | cost: 1
68 | - name:
69 | cost: 1
70 | - name:
71 | cost: 1
72 | m_LastAgentTypeID: -887442657
73 | m_Settings:
74 | - serializedVersion: 2
75 | agentTypeID: 0
76 | agentRadius: 0.5
77 | agentHeight: 2
78 | agentSlope: 45
79 | agentClimb: 0.75
80 | ledgeDropHeight: 0
81 | maxJumpAcrossDistance: 0
82 | minRegionArea: 2
83 | manualCellSize: 0
84 | cellSize: 0.16666667
85 | manualTileSize: 0
86 | tileSize: 256
87 | accuratePlacement: 0
88 | maxJobWorkers: 0
89 | preserveTilesOutsideBounds: 0
90 | debug:
91 | m_Flags: 0
92 | m_SettingNames:
93 | - Humanoid
94 |
--------------------------------------------------------------------------------
/projects/MissingComponent_2020_3/Packages/manifest.json:
--------------------------------------------------------------------------------
1 | {
2 | "dependencies": {
3 | "com.unity.collab-proxy": "1.15.15",
4 | "com.unity.ide.rider": "3.0.14",
5 | "com.unity.ide.visualstudio": "2.0.14",
6 | "com.unity.ide.vscode": "1.2.5",
7 | "com.unity.test-framework": "1.1.31",
8 | "com.unity.textmeshpro": "3.0.6",
9 | "com.unity.timeline": "1.4.8",
10 | "com.unity.ugui": "1.0.0",
11 | "com.needle.missing-component-info": "file:../../../package",
12 | "com.unity.modules.ai": "1.0.0",
13 | "com.unity.modules.androidjni": "1.0.0",
14 | "com.unity.modules.animation": "1.0.0",
15 | "com.unity.modules.assetbundle": "1.0.0",
16 | "com.unity.modules.audio": "1.0.0",
17 | "com.unity.modules.cloth": "1.0.0",
18 | "com.unity.modules.director": "1.0.0",
19 | "com.unity.modules.imageconversion": "1.0.0",
20 | "com.unity.modules.imgui": "1.0.0",
21 | "com.unity.modules.jsonserialize": "1.0.0",
22 | "com.unity.modules.particlesystem": "1.0.0",
23 | "com.unity.modules.physics": "1.0.0",
24 | "com.unity.modules.physics2d": "1.0.0",
25 | "com.unity.modules.screencapture": "1.0.0",
26 | "com.unity.modules.terrain": "1.0.0",
27 | "com.unity.modules.terrainphysics": "1.0.0",
28 | "com.unity.modules.tilemap": "1.0.0",
29 | "com.unity.modules.ui": "1.0.0",
30 | "com.unity.modules.uielements": "1.0.0",
31 | "com.unity.modules.umbra": "1.0.0",
32 | "com.unity.modules.unityanalytics": "1.0.0",
33 | "com.unity.modules.unitywebrequest": "1.0.0",
34 | "com.unity.modules.unitywebrequestassetbundle": "1.0.0",
35 | "com.unity.modules.unitywebrequestaudio": "1.0.0",
36 | "com.unity.modules.unitywebrequesttexture": "1.0.0",
37 | "com.unity.modules.unitywebrequestwww": "1.0.0",
38 | "com.unity.modules.vehicles": "1.0.0",
39 | "com.unity.modules.video": "1.0.0",
40 | "com.unity.modules.vr": "1.0.0",
41 | "com.unity.modules.wind": "1.0.0",
42 | "com.unity.modules.xr": "1.0.0",
43 | "com.needle.missing-component-info-shared-assets": "file:../../shared"
44 | }
45 | }
--------------------------------------------------------------------------------
/projects/MissingComponent_2021_3/Packages/manifest.json:
--------------------------------------------------------------------------------
1 | {
2 | "dependencies": {
3 | "com.unity.collab-proxy": "1.15.15",
4 | "com.unity.ide.rider": "3.0.13",
5 | "com.unity.ide.visualstudio": "2.0.14",
6 | "com.unity.ide.vscode": "1.2.5",
7 | "com.unity.test-framework": "1.1.31",
8 | "com.unity.textmeshpro": "3.0.6",
9 | "com.unity.timeline": "1.6.4",
10 | "com.unity.ugui": "1.0.0",
11 | "com.unity.visualscripting": "1.7.6",
12 | "com.unity.modules.ai": "1.0.0",
13 | "com.unity.modules.androidjni": "1.0.0",
14 | "com.unity.modules.animation": "1.0.0",
15 | "com.unity.modules.assetbundle": "1.0.0",
16 | "com.unity.modules.audio": "1.0.0",
17 | "com.unity.modules.cloth": "1.0.0",
18 | "com.unity.modules.director": "1.0.0",
19 | "com.unity.modules.imageconversion": "1.0.0",
20 | "com.unity.modules.imgui": "1.0.0",
21 | "com.unity.modules.jsonserialize": "1.0.0",
22 | "com.unity.modules.particlesystem": "1.0.0",
23 | "com.unity.modules.physics": "1.0.0",
24 | "com.unity.modules.physics2d": "1.0.0",
25 | "com.unity.modules.screencapture": "1.0.0",
26 | "com.unity.modules.terrain": "1.0.0",
27 | "com.unity.modules.terrainphysics": "1.0.0",
28 | "com.unity.modules.tilemap": "1.0.0",
29 | "com.unity.modules.ui": "1.0.0",
30 | "com.unity.modules.uielements": "1.0.0",
31 | "com.unity.modules.umbra": "1.0.0",
32 | "com.unity.modules.unityanalytics": "1.0.0",
33 | "com.unity.modules.unitywebrequest": "1.0.0",
34 | "com.unity.modules.unitywebrequestassetbundle": "1.0.0",
35 | "com.unity.modules.unitywebrequestaudio": "1.0.0",
36 | "com.unity.modules.unitywebrequesttexture": "1.0.0",
37 | "com.unity.modules.unitywebrequestwww": "1.0.0",
38 | "com.unity.modules.vehicles": "1.0.0",
39 | "com.unity.modules.video": "1.0.0",
40 | "com.unity.modules.vr": "1.0.0",
41 | "com.unity.modules.wind": "1.0.0",
42 | "com.unity.modules.xr": "1.0.0",
43 | "com.needle.missing-component-info": "file:../../../package",
44 | "com.needle.missing-component-info-shared-assets": "file:../../shared"
45 | }
46 | }
--------------------------------------------------------------------------------
/projects/MissingComponent_2020_3/ProjectSettings/Physics2DSettings.asset:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!19 &1
4 | Physics2DSettings:
5 | m_ObjectHideFlags: 0
6 | serializedVersion: 5
7 | m_Gravity: {x: 0, y: -9.81}
8 | m_DefaultMaterial: {fileID: 0}
9 | m_VelocityIterations: 8
10 | m_PositionIterations: 3
11 | m_VelocityThreshold: 1
12 | m_MaxLinearCorrection: 0.2
13 | m_MaxAngularCorrection: 8
14 | m_MaxTranslationSpeed: 100
15 | m_MaxRotationSpeed: 360
16 | m_BaumgarteScale: 0.2
17 | m_BaumgarteTimeOfImpactScale: 0.75
18 | m_TimeToSleep: 0.5
19 | m_LinearSleepTolerance: 0.01
20 | m_AngularSleepTolerance: 2
21 | m_DefaultContactOffset: 0.01
22 | m_JobOptions:
23 | serializedVersion: 2
24 | useMultithreading: 0
25 | useConsistencySorting: 0
26 | m_InterpolationPosesPerJob: 100
27 | m_NewContactsPerJob: 30
28 | m_CollideContactsPerJob: 100
29 | m_ClearFlagsPerJob: 200
30 | m_ClearBodyForcesPerJob: 200
31 | m_SyncDiscreteFixturesPerJob: 50
32 | m_SyncContinuousFixturesPerJob: 50
33 | m_FindNearestContactsPerJob: 100
34 | m_UpdateTriggerContactsPerJob: 100
35 | m_IslandSolverCostThreshold: 100
36 | m_IslandSolverBodyCostScale: 1
37 | m_IslandSolverContactCostScale: 10
38 | m_IslandSolverJointCostScale: 10
39 | m_IslandSolverBodiesPerJob: 50
40 | m_IslandSolverContactsPerJob: 50
41 | m_SimulationMode: 0
42 | m_QueriesHitTriggers: 1
43 | m_QueriesStartInColliders: 1
44 | m_CallbacksOnDisable: 1
45 | m_ReuseCollisionCallbacks: 0
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 |
--------------------------------------------------------------------------------
/projects/MissingComponent_2021_3/ProjectSettings/Physics2DSettings.asset:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!19 &1
4 | Physics2DSettings:
5 | m_ObjectHideFlags: 0
6 | serializedVersion: 5
7 | m_Gravity: {x: 0, y: -9.81}
8 | m_DefaultMaterial: {fileID: 0}
9 | m_VelocityIterations: 8
10 | m_PositionIterations: 3
11 | m_VelocityThreshold: 1
12 | m_MaxLinearCorrection: 0.2
13 | m_MaxAngularCorrection: 8
14 | m_MaxTranslationSpeed: 100
15 | m_MaxRotationSpeed: 360
16 | m_BaumgarteScale: 0.2
17 | m_BaumgarteTimeOfImpactScale: 0.75
18 | m_TimeToSleep: 0.5
19 | m_LinearSleepTolerance: 0.01
20 | m_AngularSleepTolerance: 2
21 | m_DefaultContactOffset: 0.01
22 | m_JobOptions:
23 | serializedVersion: 2
24 | useMultithreading: 0
25 | useConsistencySorting: 0
26 | m_InterpolationPosesPerJob: 100
27 | m_NewContactsPerJob: 30
28 | m_CollideContactsPerJob: 100
29 | m_ClearFlagsPerJob: 200
30 | m_ClearBodyForcesPerJob: 200
31 | m_SyncDiscreteFixturesPerJob: 50
32 | m_SyncContinuousFixturesPerJob: 50
33 | m_FindNearestContactsPerJob: 100
34 | m_UpdateTriggerContactsPerJob: 100
35 | m_IslandSolverCostThreshold: 100
36 | m_IslandSolverBodyCostScale: 1
37 | m_IslandSolverContactCostScale: 10
38 | m_IslandSolverJointCostScale: 10
39 | m_IslandSolverBodiesPerJob: 50
40 | m_IslandSolverContactsPerJob: 50
41 | m_SimulationMode: 0
42 | m_QueriesHitTriggers: 1
43 | m_QueriesStartInColliders: 1
44 | m_CallbacksOnDisable: 1
45 | m_ReuseCollisionCallbacks: 0
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 |
--------------------------------------------------------------------------------
/projects/MissingComponent_2022/ProjectSettings/Physics2DSettings.asset:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!19 &1
4 | Physics2DSettings:
5 | m_ObjectHideFlags: 0
6 | serializedVersion: 5
7 | m_Gravity: {x: 0, y: -9.81}
8 | m_DefaultMaterial: {fileID: 0}
9 | m_VelocityIterations: 8
10 | m_PositionIterations: 3
11 | m_VelocityThreshold: 1
12 | m_MaxLinearCorrection: 0.2
13 | m_MaxAngularCorrection: 8
14 | m_MaxTranslationSpeed: 100
15 | m_MaxRotationSpeed: 360
16 | m_BaumgarteScale: 0.2
17 | m_BaumgarteTimeOfImpactScale: 0.75
18 | m_TimeToSleep: 0.5
19 | m_LinearSleepTolerance: 0.01
20 | m_AngularSleepTolerance: 2
21 | m_DefaultContactOffset: 0.01
22 | m_JobOptions:
23 | serializedVersion: 2
24 | useMultithreading: 0
25 | useConsistencySorting: 0
26 | m_InterpolationPosesPerJob: 100
27 | m_NewContactsPerJob: 30
28 | m_CollideContactsPerJob: 100
29 | m_ClearFlagsPerJob: 200
30 | m_ClearBodyForcesPerJob: 200
31 | m_SyncDiscreteFixturesPerJob: 50
32 | m_SyncContinuousFixturesPerJob: 50
33 | m_FindNearestContactsPerJob: 100
34 | m_UpdateTriggerContactsPerJob: 100
35 | m_IslandSolverCostThreshold: 100
36 | m_IslandSolverBodyCostScale: 1
37 | m_IslandSolverContactCostScale: 10
38 | m_IslandSolverJointCostScale: 10
39 | m_IslandSolverBodiesPerJob: 50
40 | m_IslandSolverContactsPerJob: 50
41 | m_SimulationMode: 0
42 | m_QueriesHitTriggers: 1
43 | m_QueriesStartInColliders: 1
44 | m_CallbacksOnDisable: 1
45 | m_ReuseCollisionCallbacks: 1
46 | m_AutoSyncTransforms: 0
47 | m_AlwaysShowColliders: 0
48 | m_ShowColliderSleep: 1
49 | m_ShowColliderContacts: 0
50 | m_ShowColliderAABB: 0
51 | m_ContactArrowScale: 0.2
52 | m_ColliderAwakeColor: {r: 0.5686275, g: 0.95686275, b: 0.54509807, a: 0.7529412}
53 | m_ColliderAsleepColor: {r: 0.5686275, g: 0.95686275, b: 0.54509807, a: 0.36078432}
54 | m_ColliderContactColor: {r: 1, g: 0, b: 1, a: 0.6862745}
55 | m_ColliderAABBColor: {r: 1, g: 1, b: 0, a: 0.2509804}
56 | m_LayerCollisionMatrix: ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
57 |
--------------------------------------------------------------------------------
/projects/MissingComponent_2022/Packages/manifest.json:
--------------------------------------------------------------------------------
1 | {
2 | "dependencies": {
3 | "com.needle.missing-component-info": "file:../../../package",
4 | "com.needle.missing-component-info-shared-assets": "file:../../shared",
5 | "com.unity.ai.navigation": "1.1.3",
6 | "com.unity.collab-proxy": "2.0.5",
7 | "com.unity.ide.rider": "3.0.24",
8 | "com.unity.ide.visualstudio": "2.0.18",
9 | "com.unity.ide.vscode": "1.2.5",
10 | "com.unity.test-framework": "1.1.33",
11 | "com.unity.textmeshpro": "3.0.6",
12 | "com.unity.timeline": "1.7.4",
13 | "com.unity.ugui": "1.0.0",
14 | "com.unity.visualscripting": "1.8.0",
15 | "com.unity.modules.ai": "1.0.0",
16 | "com.unity.modules.androidjni": "1.0.0",
17 | "com.unity.modules.animation": "1.0.0",
18 | "com.unity.modules.assetbundle": "1.0.0",
19 | "com.unity.modules.audio": "1.0.0",
20 | "com.unity.modules.cloth": "1.0.0",
21 | "com.unity.modules.director": "1.0.0",
22 | "com.unity.modules.imageconversion": "1.0.0",
23 | "com.unity.modules.imgui": "1.0.0",
24 | "com.unity.modules.jsonserialize": "1.0.0",
25 | "com.unity.modules.particlesystem": "1.0.0",
26 | "com.unity.modules.physics": "1.0.0",
27 | "com.unity.modules.physics2d": "1.0.0",
28 | "com.unity.modules.screencapture": "1.0.0",
29 | "com.unity.modules.terrain": "1.0.0",
30 | "com.unity.modules.terrainphysics": "1.0.0",
31 | "com.unity.modules.tilemap": "1.0.0",
32 | "com.unity.modules.ui": "1.0.0",
33 | "com.unity.modules.uielements": "1.0.0",
34 | "com.unity.modules.umbra": "1.0.0",
35 | "com.unity.modules.unityanalytics": "1.0.0",
36 | "com.unity.modules.unitywebrequest": "1.0.0",
37 | "com.unity.modules.unitywebrequestassetbundle": "1.0.0",
38 | "com.unity.modules.unitywebrequestaudio": "1.0.0",
39 | "com.unity.modules.unitywebrequesttexture": "1.0.0",
40 | "com.unity.modules.unitywebrequestwww": "1.0.0",
41 | "com.unity.modules.vehicles": "1.0.0",
42 | "com.unity.modules.video": "1.0.0",
43 | "com.unity.modules.vr": "1.0.0",
44 | "com.unity.modules.wind": "1.0.0",
45 | "com.unity.modules.xr": "1.0.0"
46 | },
47 | "scopedRegistries": [
48 | {
49 | "name": "RegistryName",
50 | "url": "https://package.openupm.com",
51 | "scopes": [
52 | "com.needle.missing-component-info"
53 | ]
54 | }
55 | ]
56 | }
57 |
--------------------------------------------------------------------------------
/projects/MissingComponent_2020_3/ProjectSettings/GraphicsSettings.asset:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!30 &1
4 | GraphicsSettings:
5 | m_ObjectHideFlags: 0
6 | serializedVersion: 13
7 | m_Deferred:
8 | m_Mode: 1
9 | m_Shader: {fileID: 69, guid: 0000000000000000f000000000000000, type: 0}
10 | m_DeferredReflections:
11 | m_Mode: 1
12 | m_Shader: {fileID: 74, guid: 0000000000000000f000000000000000, type: 0}
13 | m_ScreenSpaceShadows:
14 | m_Mode: 1
15 | m_Shader: {fileID: 64, guid: 0000000000000000f000000000000000, type: 0}
16 | m_LegacyDeferred:
17 | m_Mode: 1
18 | m_Shader: {fileID: 63, guid: 0000000000000000f000000000000000, type: 0}
19 | m_DepthNormals:
20 | m_Mode: 1
21 | m_Shader: {fileID: 62, guid: 0000000000000000f000000000000000, type: 0}
22 | m_MotionVectors:
23 | m_Mode: 1
24 | m_Shader: {fileID: 75, guid: 0000000000000000f000000000000000, type: 0}
25 | m_LightHalo:
26 | m_Mode: 1
27 | m_Shader: {fileID: 105, guid: 0000000000000000f000000000000000, type: 0}
28 | m_LensFlare:
29 | m_Mode: 1
30 | m_Shader: {fileID: 102, guid: 0000000000000000f000000000000000, type: 0}
31 | m_VideoShadersIncludeMode: 2
32 | m_AlwaysIncludedShaders:
33 | - {fileID: 7, guid: 0000000000000000f000000000000000, type: 0}
34 | - {fileID: 15104, guid: 0000000000000000f000000000000000, type: 0}
35 | - {fileID: 15105, guid: 0000000000000000f000000000000000, type: 0}
36 | - {fileID: 15106, guid: 0000000000000000f000000000000000, type: 0}
37 | - {fileID: 10753, guid: 0000000000000000f000000000000000, type: 0}
38 | - {fileID: 10770, guid: 0000000000000000f000000000000000, type: 0}
39 | - {fileID: 10783, guid: 0000000000000000f000000000000000, type: 0}
40 | m_PreloadedShaders: []
41 | m_SpritesDefaultMaterial: {fileID: 10754, guid: 0000000000000000f000000000000000, type: 0}
42 | m_CustomRenderPipeline: {fileID: 0}
43 | m_TransparencySortMode: 0
44 | m_TransparencySortAxis: {x: 0, y: 0, z: 1}
45 | m_DefaultRenderingPath: 1
46 | m_DefaultMobileRenderingPath: 1
47 | m_TierSettings: []
48 | m_LightmapStripping: 0
49 | m_FogStripping: 0
50 | m_InstancingStripping: 0
51 | m_LightmapKeepPlain: 1
52 | m_LightmapKeepDirCombined: 1
53 | m_LightmapKeepDynamicPlain: 1
54 | m_LightmapKeepDynamicDirCombined: 1
55 | m_LightmapKeepShadowMask: 1
56 | m_LightmapKeepSubtractive: 1
57 | m_FogKeepLinear: 1
58 | m_FogKeepExp: 1
59 | m_FogKeepExp2: 1
60 | m_AlbedoSwatchInfos: []
61 | m_LightsUseLinearIntensity: 0
62 | m_LightsUseColorTemperature: 0
63 | m_DefaultRenderingLayerMask: 1
64 | m_LogWhenShaderIsCompiled: 0
65 |
--------------------------------------------------------------------------------
/projects/MissingComponent_2021_3/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: 14
7 | m_Deferred:
8 | m_Mode: 1
9 | m_Shader: {fileID: 69, guid: 0000000000000000f000000000000000, type: 0}
10 | m_DeferredReflections:
11 | m_Mode: 1
12 | m_Shader: {fileID: 74, guid: 0000000000000000f000000000000000, type: 0}
13 | m_ScreenSpaceShadows:
14 | m_Mode: 1
15 | m_Shader: {fileID: 64, guid: 0000000000000000f000000000000000, type: 0}
16 | m_LegacyDeferred:
17 | m_Mode: 1
18 | m_Shader: {fileID: 63, guid: 0000000000000000f000000000000000, type: 0}
19 | m_DepthNormals:
20 | m_Mode: 1
21 | m_Shader: {fileID: 62, guid: 0000000000000000f000000000000000, type: 0}
22 | m_MotionVectors:
23 | m_Mode: 1
24 | m_Shader: {fileID: 75, guid: 0000000000000000f000000000000000, type: 0}
25 | m_LightHalo:
26 | m_Mode: 1
27 | m_Shader: {fileID: 105, guid: 0000000000000000f000000000000000, type: 0}
28 | m_LensFlare:
29 | m_Mode: 1
30 | m_Shader: {fileID: 102, guid: 0000000000000000f000000000000000, type: 0}
31 | m_VideoShadersIncludeMode: 2
32 | m_AlwaysIncludedShaders:
33 | - {fileID: 7, guid: 0000000000000000f000000000000000, type: 0}
34 | - {fileID: 15104, guid: 0000000000000000f000000000000000, type: 0}
35 | - {fileID: 15105, guid: 0000000000000000f000000000000000, type: 0}
36 | - {fileID: 15106, guid: 0000000000000000f000000000000000, type: 0}
37 | - {fileID: 10753, guid: 0000000000000000f000000000000000, type: 0}
38 | - {fileID: 10770, guid: 0000000000000000f000000000000000, type: 0}
39 | - {fileID: 10783, guid: 0000000000000000f000000000000000, type: 0}
40 | m_PreloadedShaders: []
41 | m_PreloadShadersBatchTimeLimit: -1
42 | m_SpritesDefaultMaterial: {fileID: 10754, guid: 0000000000000000f000000000000000, type: 0}
43 | m_CustomRenderPipeline: {fileID: 0}
44 | m_TransparencySortMode: 0
45 | m_TransparencySortAxis: {x: 0, y: 0, z: 1}
46 | m_DefaultRenderingPath: 1
47 | m_DefaultMobileRenderingPath: 1
48 | m_TierSettings: []
49 | m_LightmapStripping: 0
50 | m_FogStripping: 0
51 | m_InstancingStripping: 0
52 | m_LightmapKeepPlain: 1
53 | m_LightmapKeepDirCombined: 1
54 | m_LightmapKeepDynamicPlain: 1
55 | m_LightmapKeepDynamicDirCombined: 1
56 | m_LightmapKeepShadowMask: 1
57 | m_LightmapKeepSubtractive: 1
58 | m_FogKeepLinear: 1
59 | m_FogKeepExp: 1
60 | m_FogKeepExp2: 1
61 | m_AlbedoSwatchInfos: []
62 | m_LightsUseLinearIntensity: 0
63 | m_LightsUseColorTemperature: 0
64 | m_DefaultRenderingLayerMask: 1
65 | m_LogWhenShaderIsCompiled: 0
66 | m_SRPDefaultSettings: {}
67 |
--------------------------------------------------------------------------------
/projects/MissingComponent_2022/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: 14
7 | m_Deferred:
8 | m_Mode: 1
9 | m_Shader: {fileID: 69, guid: 0000000000000000f000000000000000, type: 0}
10 | m_DeferredReflections:
11 | m_Mode: 1
12 | m_Shader: {fileID: 74, guid: 0000000000000000f000000000000000, type: 0}
13 | m_ScreenSpaceShadows:
14 | m_Mode: 1
15 | m_Shader: {fileID: 64, guid: 0000000000000000f000000000000000, type: 0}
16 | m_LegacyDeferred:
17 | m_Mode: 1
18 | m_Shader: {fileID: 63, guid: 0000000000000000f000000000000000, type: 0}
19 | m_DepthNormals:
20 | m_Mode: 1
21 | m_Shader: {fileID: 62, guid: 0000000000000000f000000000000000, type: 0}
22 | m_MotionVectors:
23 | m_Mode: 1
24 | m_Shader: {fileID: 75, guid: 0000000000000000f000000000000000, type: 0}
25 | m_LightHalo:
26 | m_Mode: 1
27 | m_Shader: {fileID: 105, guid: 0000000000000000f000000000000000, type: 0}
28 | m_LensFlare:
29 | m_Mode: 1
30 | m_Shader: {fileID: 102, guid: 0000000000000000f000000000000000, type: 0}
31 | m_VideoShadersIncludeMode: 2
32 | m_AlwaysIncludedShaders:
33 | - {fileID: 7, guid: 0000000000000000f000000000000000, type: 0}
34 | - {fileID: 15104, guid: 0000000000000000f000000000000000, type: 0}
35 | - {fileID: 15105, guid: 0000000000000000f000000000000000, type: 0}
36 | - {fileID: 15106, guid: 0000000000000000f000000000000000, type: 0}
37 | - {fileID: 10753, guid: 0000000000000000f000000000000000, type: 0}
38 | - {fileID: 10770, guid: 0000000000000000f000000000000000, type: 0}
39 | - {fileID: 10783, guid: 0000000000000000f000000000000000, type: 0}
40 | m_PreloadedShaders: []
41 | m_PreloadShadersBatchTimeLimit: -1
42 | m_SpritesDefaultMaterial: {fileID: 10754, guid: 0000000000000000f000000000000000, type: 0}
43 | m_CustomRenderPipeline: {fileID: 0}
44 | m_TransparencySortMode: 0
45 | m_TransparencySortAxis: {x: 0, y: 0, z: 1}
46 | m_DefaultRenderingPath: 1
47 | m_DefaultMobileRenderingPath: 1
48 | m_TierSettings: []
49 | m_LightmapStripping: 0
50 | m_FogStripping: 0
51 | m_InstancingStripping: 0
52 | m_BrgStripping: 0
53 | m_LightmapKeepPlain: 1
54 | m_LightmapKeepDirCombined: 1
55 | m_LightmapKeepDynamicPlain: 1
56 | m_LightmapKeepDynamicDirCombined: 1
57 | m_LightmapKeepShadowMask: 1
58 | m_LightmapKeepSubtractive: 1
59 | m_FogKeepLinear: 1
60 | m_FogKeepExp: 1
61 | m_FogKeepExp2: 1
62 | m_AlbedoSwatchInfos: []
63 | m_LightsUseLinearIntensity: 0
64 | m_LightsUseColorTemperature: 0
65 | m_DefaultRenderingLayerMask: 1
66 | m_LogWhenShaderIsCompiled: 0
67 | m_SRPDefaultSettings: {}
68 |
--------------------------------------------------------------------------------
/package/Editor/Assets/logo.png.meta:
--------------------------------------------------------------------------------
1 | fileFormatVersion: 2
2 | guid: 06824066cef43c446a81e7fc2ef35664
3 | TextureImporter:
4 | internalIDToNameTable: []
5 | externalObjects: {}
6 | serializedVersion: 12
7 | mipmaps:
8 | mipMapMode: 0
9 | enableMipMap: 0
10 | sRGBTexture: 1
11 | linearTexture: 0
12 | fadeOut: 0
13 | borderMipMap: 0
14 | mipMapsPreserveCoverage: 0
15 | alphaTestReferenceValue: 0.5
16 | mipMapFadeDistanceStart: 1
17 | mipMapFadeDistanceEnd: 3
18 | bumpmap:
19 | convertToNormalMap: 0
20 | externalNormalMap: 0
21 | heightScale: 0.25
22 | normalMapFilter: 0
23 | isReadable: 0
24 | streamingMipmaps: 0
25 | streamingMipmapsPriority: 0
26 | vTOnly: 0
27 | grayScaleToAlpha: 0
28 | generateCubemap: 6
29 | cubemapConvolution: 0
30 | seamlessCubemap: 0
31 | textureFormat: 1
32 | maxTextureSize: 2048
33 | textureSettings:
34 | serializedVersion: 2
35 | filterMode: 1
36 | aniso: 1
37 | mipBias: 0
38 | wrapU: 0
39 | wrapV: 0
40 | wrapW: 0
41 | nPOTScale: 1
42 | lightmap: 0
43 | compressionQuality: 50
44 | spriteMode: 0
45 | spriteExtrude: 1
46 | spriteMeshType: 1
47 | alignment: 0
48 | spritePivot: {x: 0.5, y: 0.5}
49 | spritePixelsToUnits: 100
50 | spriteBorder: {x: 0, y: 0, z: 0, w: 0}
51 | spriteGenerateFallbackPhysicsShape: 1
52 | alphaUsage: 1
53 | alphaIsTransparency: 1
54 | spriteTessellationDetail: -1
55 | textureType: 0
56 | textureShape: 1
57 | singleChannelComponent: 0
58 | flipbookRows: 1
59 | flipbookColumns: 1
60 | maxTextureSizeSet: 0
61 | compressionQualitySet: 0
62 | textureFormatSet: 0
63 | ignorePngGamma: 1
64 | applyGammaDecoding: 0
65 | cookieLightType: 1
66 | platformSettings:
67 | - serializedVersion: 3
68 | buildTarget: DefaultTexturePlatform
69 | maxTextureSize: 32
70 | resizeAlgorithm: 0
71 | textureFormat: -1
72 | textureCompression: 1
73 | compressionQuality: 50
74 | crunchedCompression: 0
75 | allowsAlphaSplitting: 0
76 | overridden: 0
77 | androidETC2FallbackOverride: 0
78 | forceMaximumCompressionQuality_BC6H_BC7: 0
79 | - serializedVersion: 3
80 | buildTarget: Standalone
81 | maxTextureSize: 32
82 | resizeAlgorithm: 0
83 | textureFormat: -1
84 | textureCompression: 1
85 | compressionQuality: 50
86 | crunchedCompression: 0
87 | allowsAlphaSplitting: 0
88 | overridden: 0
89 | androidETC2FallbackOverride: 0
90 | forceMaximumCompressionQuality_BC6H_BC7: 0
91 | - serializedVersion: 3
92 | buildTarget: WebGL
93 | maxTextureSize: 32
94 | resizeAlgorithm: 0
95 | textureFormat: -1
96 | textureCompression: 1
97 | compressionQuality: 50
98 | crunchedCompression: 0
99 | allowsAlphaSplitting: 0
100 | overridden: 0
101 | androidETC2FallbackOverride: 0
102 | forceMaximumCompressionQuality_BC6H_BC7: 0
103 | - serializedVersion: 3
104 | buildTarget: Lumin
105 | maxTextureSize: 32
106 | resizeAlgorithm: 0
107 | textureFormat: -1
108 | textureCompression: 1
109 | compressionQuality: 50
110 | crunchedCompression: 0
111 | allowsAlphaSplitting: 0
112 | overridden: 0
113 | androidETC2FallbackOverride: 0
114 | forceMaximumCompressionQuality_BC6H_BC7: 0
115 | spriteSheet:
116 | serializedVersion: 2
117 | sprites: []
118 | outline: []
119 | physicsShape: []
120 | bones: []
121 | spriteID:
122 | internalID: 0
123 | vertices: []
124 | indices:
125 | edges: []
126 | weights: []
127 | secondaryTextures: []
128 | spritePackingTag:
129 | pSDRemoveMatte: 1
130 | pSDShowRemoveMatteOption: 1
131 | userData:
132 | assetBundleName:
133 | assetBundleVariant:
134 |
--------------------------------------------------------------------------------
/projects/MissingComponent_2021_3/Assets/PrefabWithMissingComponent.prefab:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!1 &7034211870898048076
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: 8876352013236570305}
12 | - component: {fileID: 2238911372040555781}
13 | - component: {fileID: 6105547144686290065}
14 | - component: {fileID: 18570019848518461}
15 | - component: {fileID: 2497590216853075993}
16 | m_Layer: 0
17 | m_Name: PrefabWithMissingComponent
18 | m_TagString: Untagged
19 | m_Icon: {fileID: 0}
20 | m_NavMeshLayer: 0
21 | m_StaticEditorFlags: 0
22 | m_IsActive: 1
23 | --- !u!4 &8876352013236570305
24 | Transform:
25 | m_ObjectHideFlags: 0
26 | m_CorrespondingSourceObject: {fileID: 0}
27 | m_PrefabInstance: {fileID: 0}
28 | m_PrefabAsset: {fileID: 0}
29 | m_GameObject: {fileID: 7034211870898048076}
30 | m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
31 | m_LocalPosition: {x: 0, y: 0, z: 0}
32 | m_LocalScale: {x: 1, y: 1, z: 1}
33 | m_Children: []
34 | m_Father: {fileID: 0}
35 | m_RootOrder: 0
36 | m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
37 | --- !u!33 &2238911372040555781
38 | MeshFilter:
39 | m_ObjectHideFlags: 0
40 | m_CorrespondingSourceObject: {fileID: 0}
41 | m_PrefabInstance: {fileID: 0}
42 | m_PrefabAsset: {fileID: 0}
43 | m_GameObject: {fileID: 7034211870898048076}
44 | m_Mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0}
45 | --- !u!23 &6105547144686290065
46 | MeshRenderer:
47 | m_ObjectHideFlags: 0
48 | m_CorrespondingSourceObject: {fileID: 0}
49 | m_PrefabInstance: {fileID: 0}
50 | m_PrefabAsset: {fileID: 0}
51 | m_GameObject: {fileID: 7034211870898048076}
52 | m_Enabled: 1
53 | m_CastShadows: 1
54 | m_ReceiveShadows: 1
55 | m_DynamicOccludee: 1
56 | m_MotionVectors: 1
57 | m_LightProbeUsage: 1
58 | m_ReflectionProbeUsage: 1
59 | m_RayTracingMode: 2
60 | m_RayTraceProcedural: 0
61 | m_RenderingLayerMask: 1
62 | m_RendererPriority: 0
63 | m_Materials:
64 | - {fileID: 10303, guid: 0000000000000000f000000000000000, type: 0}
65 | m_StaticBatchInfo:
66 | firstSubMesh: 0
67 | subMeshCount: 0
68 | m_StaticBatchRoot: {fileID: 0}
69 | m_ProbeAnchor: {fileID: 0}
70 | m_LightProbeVolumeOverride: {fileID: 0}
71 | m_ScaleInLightmap: 1
72 | m_ReceiveGI: 1
73 | m_PreserveUVs: 0
74 | m_IgnoreNormalsForChartDetection: 0
75 | m_ImportantGI: 0
76 | m_StitchLightmapSeams: 1
77 | m_SelectedEditorRenderState: 3
78 | m_MinimumChartSize: 4
79 | m_AutoUVMaxDistance: 0.5
80 | m_AutoUVMaxAngle: 89
81 | m_LightmapParameters: {fileID: 0}
82 | m_SortingLayerID: 0
83 | m_SortingLayer: 0
84 | m_SortingOrder: 0
85 | m_AdditionalVertexStreams: {fileID: 0}
86 | --- !u!65 &18570019848518461
87 | BoxCollider:
88 | m_ObjectHideFlags: 0
89 | m_CorrespondingSourceObject: {fileID: 0}
90 | m_PrefabInstance: {fileID: 0}
91 | m_PrefabAsset: {fileID: 0}
92 | m_GameObject: {fileID: 7034211870898048076}
93 | m_Material: {fileID: 0}
94 | m_IsTrigger: 0
95 | m_Enabled: 1
96 | serializedVersion: 2
97 | m_Size: {x: 1, y: 1, z: 1}
98 | m_Center: {x: 0, y: 0, z: 0}
99 | --- !u!114 &2497590216853075993
100 | MonoBehaviour:
101 | m_ObjectHideFlags: 0
102 | m_CorrespondingSourceObject: {fileID: 0}
103 | m_PrefabInstance: {fileID: 0}
104 | m_PrefabAsset: {fileID: 0}
105 | m_GameObject: {fileID: 7034211870898048076}
106 | m_Enabled: 1
107 | m_EditorHideFlags: 0
108 | m_Script: {fileID: 11500000, guid: 90bf983e5d88dae48874eff973b5a214, type: 3}
109 | m_Name:
110 | m_EditorClassIdentifier: MyScriptWithProperties, Assembly-CSharp
111 | MyFloatValue: 42
112 |
--------------------------------------------------------------------------------
/projects/shared/Runtime/PrefabWithMissingComponent.prefab:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!1 &7034211870898048076
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: 8876352013236570305}
12 | - component: {fileID: 2238911372040555781}
13 | - component: {fileID: 6105547144686290065}
14 | - component: {fileID: 18570019848518461}
15 | - component: {fileID: 2497590216853075993}
16 | m_Layer: 0
17 | m_Name: PrefabWithMissingComponent
18 | m_TagString: Untagged
19 | m_Icon: {fileID: 0}
20 | m_NavMeshLayer: 0
21 | m_StaticEditorFlags: 0
22 | m_IsActive: 1
23 | --- !u!4 &8876352013236570305
24 | Transform:
25 | m_ObjectHideFlags: 0
26 | m_CorrespondingSourceObject: {fileID: 0}
27 | m_PrefabInstance: {fileID: 0}
28 | m_PrefabAsset: {fileID: 0}
29 | m_GameObject: {fileID: 7034211870898048076}
30 | m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
31 | m_LocalPosition: {x: 0, y: 0, z: 0}
32 | m_LocalScale: {x: 1, y: 1, z: 1}
33 | m_Children: []
34 | m_Father: {fileID: 0}
35 | m_RootOrder: 0
36 | m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
37 | --- !u!33 &2238911372040555781
38 | MeshFilter:
39 | m_ObjectHideFlags: 0
40 | m_CorrespondingSourceObject: {fileID: 0}
41 | m_PrefabInstance: {fileID: 0}
42 | m_PrefabAsset: {fileID: 0}
43 | m_GameObject: {fileID: 7034211870898048076}
44 | m_Mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0}
45 | --- !u!23 &6105547144686290065
46 | MeshRenderer:
47 | m_ObjectHideFlags: 0
48 | m_CorrespondingSourceObject: {fileID: 0}
49 | m_PrefabInstance: {fileID: 0}
50 | m_PrefabAsset: {fileID: 0}
51 | m_GameObject: {fileID: 7034211870898048076}
52 | m_Enabled: 1
53 | m_CastShadows: 1
54 | m_ReceiveShadows: 1
55 | m_DynamicOccludee: 1
56 | m_MotionVectors: 1
57 | m_LightProbeUsage: 1
58 | m_ReflectionProbeUsage: 1
59 | m_RayTracingMode: 2
60 | m_RayTraceProcedural: 0
61 | m_RenderingLayerMask: 1
62 | m_RendererPriority: 0
63 | m_Materials:
64 | - {fileID: 10303, guid: 0000000000000000f000000000000000, type: 0}
65 | m_StaticBatchInfo:
66 | firstSubMesh: 0
67 | subMeshCount: 0
68 | m_StaticBatchRoot: {fileID: 0}
69 | m_ProbeAnchor: {fileID: 0}
70 | m_LightProbeVolumeOverride: {fileID: 0}
71 | m_ScaleInLightmap: 1
72 | m_ReceiveGI: 1
73 | m_PreserveUVs: 0
74 | m_IgnoreNormalsForChartDetection: 0
75 | m_ImportantGI: 0
76 | m_StitchLightmapSeams: 1
77 | m_SelectedEditorRenderState: 3
78 | m_MinimumChartSize: 4
79 | m_AutoUVMaxDistance: 0.5
80 | m_AutoUVMaxAngle: 89
81 | m_LightmapParameters: {fileID: 0}
82 | m_SortingLayerID: 0
83 | m_SortingLayer: 0
84 | m_SortingOrder: 0
85 | m_AdditionalVertexStreams: {fileID: 0}
86 | --- !u!65 &18570019848518461
87 | BoxCollider:
88 | m_ObjectHideFlags: 0
89 | m_CorrespondingSourceObject: {fileID: 0}
90 | m_PrefabInstance: {fileID: 0}
91 | m_PrefabAsset: {fileID: 0}
92 | m_GameObject: {fileID: 7034211870898048076}
93 | m_Material: {fileID: 0}
94 | m_IsTrigger: 0
95 | m_Enabled: 1
96 | serializedVersion: 2
97 | m_Size: {x: 1, y: 1, z: 1}
98 | m_Center: {x: 0, y: 0, z: 0}
99 | --- !u!114 &2497590216853075993
100 | MonoBehaviour:
101 | m_ObjectHideFlags: 0
102 | m_CorrespondingSourceObject: {fileID: 0}
103 | m_PrefabInstance: {fileID: 0}
104 | m_PrefabAsset: {fileID: 0}
105 | m_GameObject: {fileID: 7034211870898048076}
106 | m_Enabled: 1
107 | m_EditorHideFlags: 0
108 | m_Script: {fileID: 11500000, guid: 90bf983e5d88dae48874eff973b5a214, type: 3}
109 | m_Name:
110 | m_EditorClassIdentifier: MyScriptWithProperties, Assembly-CSharp $ GlobalObjectId_V1-2-00000000000000000000000000000000-2497590216853075993-0
111 | MyFloatValue: 42
112 |
--------------------------------------------------------------------------------
/package/Editor/MissingReferences/MissingSceneReferences.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Linq;
3 | using UnityEditor;
4 | using UnityEngine;
5 |
6 | namespace Needle.MissingReferences
7 | {
8 | ///
9 | /// Scans all loaded scenes for references to missing (deleted) assets and other types of missing references and displays the results in an EditorWindow
10 | ///
11 | sealed class MissingSceneReferences : MissingReferencesWindow
12 | {
13 | const string k_Instructions = "Click the Scan button to scan the active scene for missing references. " +
14 | "WARNING: For large scenes, this may take a long time and/or crash the Editor.";
15 |
16 | const string k_NoMissingReferences = "No missing references in active scene";
17 |
18 | // Bool fields will be serialized to maintain state between domain reloads, but our list of GameObjects will not
19 | [NonSerialized]
20 | bool m_Scanned;
21 |
22 | Vector2 m_ScrollPosition;
23 | // readonly List> m_SceneRoots = new List>();
24 |
25 | [MenuItem(MenuItemRootAnalysis + "Missing Scene References", priority = -898)]
26 | static void OnMenuItem() { GetWindow("Missing Scene References"); }
27 |
28 | private SceneScanner scanner = null;
29 |
30 | ///
31 | /// Scan all assets in the active scene for missing serialized references
32 | ///
33 | /// User-configurable options for this view
34 | protected override void Scan(SceneScanner.Options options)
35 | {
36 | m_Scanned = true;
37 |
38 | scanner = new SceneScanner(options);
39 | scanner.FindMissingReferences();
40 |
41 | var missing = scanner.MissingReferences;
42 |
43 | allMissingReferences = missing
44 | .Where(x => x.Object)
45 | .ToLookup(x => x.Object.GetInstanceID());
46 |
47 | foreach (var reference in missing)
48 | {
49 | EditorGUIUtility.PingObject(reference.Object);
50 | }
51 |
52 | EditorApplication.RepaintHierarchyWindow();
53 | }
54 |
55 | private ILookup allMissingReferences;
56 |
57 | protected override void OnGUI()
58 | {
59 | base.OnGUI();
60 |
61 | if (!m_Scanned)
62 | {
63 | EditorGUILayout.HelpBox(k_Instructions, MessageType.Info);
64 | GUIUtility.ExitGUI();
65 | }
66 |
67 | if (scanner.SceneRoots.Count == 0)
68 | {
69 | GUILayout.Label(k_NoMissingReferences);
70 | }
71 | else
72 | {
73 | using (var scrollView = new GUILayout.ScrollViewScope(m_ScrollPosition))
74 | {
75 | m_ScrollPosition = scrollView.scrollPosition;
76 | foreach (var kvp in scanner.SceneRoots)
77 | {
78 | kvp.Value.Draw();
79 | }
80 | }
81 | }
82 | }
83 |
84 | private void OnEnable()
85 | {
86 | EditorApplication.hierarchyWindowItemOnGUI += HierarchyWindowItemOnGUI;
87 | EditorApplication.RepaintHierarchyWindow();
88 | }
89 |
90 | private void OnDisable()
91 | {
92 | EditorApplication.hierarchyWindowItemOnGUI -= HierarchyWindowItemOnGUI;
93 | EditorApplication.RepaintHierarchyWindow();
94 | }
95 |
96 | private void HierarchyWindowItemOnGUI(int instanceId, Rect selectionRect)
97 | {
98 | if (allMissingReferences == null) return;
99 | if (!allMissingReferences.Contains(instanceId)) return;
100 |
101 | DrawItem(selectionRect);
102 | }
103 | }
104 | }
105 |
--------------------------------------------------------------------------------
/package/Editor/MissingReferences/MissingReferencesWindow.cs:
--------------------------------------------------------------------------------
1 | using System.Collections.Generic;
2 | using UnityEditor;
3 | using UnityEngine;
4 | using UnityObject = UnityEngine.Object;
5 |
6 | namespace Needle.MissingReferences
7 | {
8 | ///
9 | /// Scans the project for serialized references to missing (deleted) assets and other types of missing references and displays the results in an EditorWindow
10 | ///
11 | abstract class MissingReferencesWindow : EditorWindow
12 | {
13 | public const string MenuItemRootAnalysis = "Window/Analysis/";
14 |
15 | internal static class Styles
16 | {
17 | const string k_IncludeEmptyEventsLabel = "Include Empty Events";
18 | const string k_IncludeEmptyEventsTooltip = "While scanning properties for missing references, include serialized UnityEvent references which do not have a target object. Missing references to target objects will be included whether or not this is set.";
19 | const string k_IncludeMissingMethodsLabel = "Include Missing Methods";
20 | const string k_IncludeMissingMethodsTooltip = "While scanning properties for missing references, include serialized UnityEvent references which specify methods that do not exist";
21 | const string k_IncludeUnsetMethodsLabel = "Include Unset Methods";
22 | const string k_IncludeUnsetMethodsTooltip = "While scanning properties for missing references, include serialized UnityEvent references which do not specify a method";
23 |
24 | public static readonly GUIStyle RichTextFoldout;
25 | public static readonly GUIStyle RichTextLabel;
26 | public static readonly GUIContent IncludeEmptyEventsContent;
27 | public static readonly GUIContent IncludeMissingMethodsContent;
28 | public static readonly GUIContent IncludeUnsetMethodsContent;
29 |
30 | static Styles()
31 | {
32 | RichTextFoldout = EditorStyles.foldout;
33 | RichTextFoldout.richText = true;
34 |
35 | RichTextLabel = EditorStyles.label;
36 | RichTextLabel.richText = true;
37 |
38 | IncludeEmptyEventsContent = new GUIContent(k_IncludeEmptyEventsLabel, k_IncludeEmptyEventsTooltip);
39 | IncludeMissingMethodsContent = new GUIContent(k_IncludeMissingMethodsLabel, k_IncludeMissingMethodsTooltip);
40 | IncludeUnsetMethodsContent = new GUIContent(k_IncludeUnsetMethodsLabel, k_IncludeUnsetMethodsTooltip);
41 | }
42 | }
43 |
44 | const float k_LabelWidthRatio = 0.5f;
45 | const string k_ScanButtonName = "Scan";
46 | const string k_MissingMethodFormat = "Missing Method: {0}";
47 |
48 | SceneScanner.Options m_Options = new SceneScanner.Options();
49 |
50 | ///
51 | /// Scan for missing serialized references
52 | ///
53 | /// User-configurable options for this view
54 | protected abstract void Scan(SceneScanner.Options options);
55 |
56 | protected virtual void OnGUI()
57 | {
58 | EditorGUIUtility.labelWidth = position.width * k_LabelWidthRatio;
59 | m_Options.IncludeEmptyEvents = EditorGUILayout.Toggle(Styles.IncludeEmptyEventsContent, m_Options.IncludeEmptyEvents);
60 | m_Options.IncludeMissingMethods = EditorGUILayout.Toggle(Styles.IncludeMissingMethodsContent, m_Options.IncludeMissingMethods);
61 | m_Options.IncludeUnsetMethods = EditorGUILayout.Toggle(Styles.IncludeUnsetMethodsContent, m_Options.IncludeUnsetMethods);
62 | if (GUILayout.Button(k_ScanButtonName))
63 | Scan(m_Options);
64 | }
65 |
66 | protected virtual void DrawItem(Rect selectionRect)
67 | {
68 | selectionRect.xMin = selectionRect.xMax - 2;
69 | selectionRect.x -= 4;
70 | var c = GUI.color;
71 | GUI.color = Color.red;
72 | GUI.DrawTexture(selectionRect, Texture2D.whiteTexture);
73 | GUI.color = c;
74 | }
75 |
76 | ///
77 | /// Draw the missing references UI for a list of properties known to have missing references
78 | ///
79 | /// A list of SerializedProperty objects known to have missing references
80 | internal static void DrawPropertiesWithMissingReferences(List properties)
81 | {
82 | foreach (var property in properties)
83 | {
84 | switch (property.propertyType)
85 | {
86 | // The only way a generic property could be in the list of missing properties is if it
87 | // is a serialized UnityEvent with its method missing
88 | case SerializedPropertyType.Generic:
89 | // cases we don't want to show as missing:
90 | EditorGUILayout.LabelField(string.Format(k_MissingMethodFormat, property.propertyPath));
91 | break;
92 | case SerializedPropertyType.ObjectReference:
93 | EditorGUILayout.PropertyField(property, new GUIContent(property.propertyPath));
94 | break;
95 | }
96 | }
97 | }
98 | }
99 | }
100 |
--------------------------------------------------------------------------------
/projects/MissingComponent_2020_3/Assets/Scene1.unity:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!29 &1
4 | OcclusionCullingSettings:
5 | m_ObjectHideFlags: 0
6 | serializedVersion: 2
7 | m_OcclusionBakeSettings:
8 | smallestOccluder: 5
9 | smallestHole: 0.25
10 | backfaceThreshold: 100
11 | m_SceneGUID: 00000000000000000000000000000000
12 | m_OcclusionCullingData: {fileID: 0}
13 | --- !u!104 &2
14 | RenderSettings:
15 | m_ObjectHideFlags: 0
16 | serializedVersion: 9
17 | m_Fog: 0
18 | m_FogColor: {r: 0.5, g: 0.5, b: 0.5, a: 1}
19 | m_FogMode: 3
20 | m_FogDensity: 0.01
21 | m_LinearFogStart: 0
22 | m_LinearFogEnd: 300
23 | m_AmbientSkyColor: {r: 0.212, g: 0.227, b: 0.259, a: 1}
24 | m_AmbientEquatorColor: {r: 0.114, g: 0.125, b: 0.133, a: 1}
25 | m_AmbientGroundColor: {r: 0.047, g: 0.043, b: 0.035, a: 1}
26 | m_AmbientIntensity: 1
27 | m_AmbientMode: 0
28 | m_SubtractiveShadowColor: {r: 0.42, g: 0.478, b: 0.627, a: 1}
29 | m_SkyboxMaterial: {fileID: 10304, guid: 0000000000000000f000000000000000, type: 0}
30 | m_HaloStrength: 0.5
31 | m_FlareStrength: 1
32 | m_FlareFadeSpeed: 3
33 | m_HaloTexture: {fileID: 0}
34 | m_SpotCookie: {fileID: 10001, guid: 0000000000000000e000000000000000, type: 0}
35 | m_DefaultReflectionMode: 0
36 | m_DefaultReflectionResolution: 128
37 | m_ReflectionBounces: 1
38 | m_ReflectionIntensity: 1
39 | m_CustomReflection: {fileID: 0}
40 | m_Sun: {fileID: 0}
41 | m_IndirectSpecularColor: {r: 0.37311953, g: 0.38074014, b: 0.3587274, a: 1}
42 | m_UseRadianceAmbientProbe: 0
43 | --- !u!157 &3
44 | LightmapSettings:
45 | m_ObjectHideFlags: 0
46 | serializedVersion: 12
47 | m_GIWorkflowMode: 1
48 | m_GISettings:
49 | serializedVersion: 2
50 | m_BounceScale: 1
51 | m_IndirectOutputScale: 1
52 | m_AlbedoBoost: 1
53 | m_EnvironmentLightingMode: 0
54 | m_EnableBakedLightmaps: 1
55 | m_EnableRealtimeLightmaps: 0
56 | m_LightmapEditorSettings:
57 | serializedVersion: 12
58 | m_Resolution: 2
59 | m_BakeResolution: 40
60 | m_AtlasSize: 1024
61 | m_AO: 0
62 | m_AOMaxDistance: 1
63 | m_CompAOExponent: 1
64 | m_CompAOExponentDirect: 0
65 | m_ExtractAmbientOcclusion: 0
66 | m_Padding: 2
67 | m_LightmapParameters: {fileID: 0}
68 | m_LightmapsBakeMode: 1
69 | m_TextureCompression: 1
70 | m_FinalGather: 0
71 | m_FinalGatherFiltering: 1
72 | m_FinalGatherRayCount: 256
73 | m_ReflectionCompression: 2
74 | m_MixedBakeMode: 2
75 | m_BakeBackend: 1
76 | m_PVRSampling: 1
77 | m_PVRDirectSampleCount: 32
78 | m_PVRSampleCount: 512
79 | m_PVRBounces: 2
80 | m_PVREnvironmentSampleCount: 256
81 | m_PVREnvironmentReferencePointCount: 2048
82 | m_PVRFilteringMode: 1
83 | m_PVRDenoiserTypeDirect: 1
84 | m_PVRDenoiserTypeIndirect: 1
85 | m_PVRDenoiserTypeAO: 1
86 | m_PVRFilterTypeDirect: 0
87 | m_PVRFilterTypeIndirect: 0
88 | m_PVRFilterTypeAO: 0
89 | m_PVREnvironmentMIS: 1
90 | m_PVRCulling: 1
91 | m_PVRFilteringGaussRadiusDirect: 1
92 | m_PVRFilteringGaussRadiusIndirect: 5
93 | m_PVRFilteringGaussRadiusAO: 2
94 | m_PVRFilteringAtrousPositionSigmaDirect: 0.5
95 | m_PVRFilteringAtrousPositionSigmaIndirect: 2
96 | m_PVRFilteringAtrousPositionSigmaAO: 1
97 | m_ExportTrainingData: 0
98 | m_TrainingDataDestination: TrainingData
99 | m_LightProbeSampleCountMultiplier: 4
100 | m_LightingDataAsset: {fileID: 0}
101 | m_LightingSettings: {fileID: 0}
102 | --- !u!196 &4
103 | NavMeshSettings:
104 | serializedVersion: 2
105 | m_ObjectHideFlags: 0
106 | m_BuildSettings:
107 | serializedVersion: 2
108 | agentTypeID: 0
109 | agentRadius: 0.5
110 | agentHeight: 2
111 | agentSlope: 45
112 | agentClimb: 0.4
113 | ledgeDropHeight: 0
114 | maxJumpAcrossDistance: 0
115 | minRegionArea: 2
116 | manualCellSize: 0
117 | cellSize: 0.16666667
118 | manualTileSize: 0
119 | tileSize: 256
120 | accuratePlacement: 0
121 | maxJobWorkers: 0
122 | preserveTilesOutsideBounds: 0
123 | debug:
124 | m_Flags: 0
125 | m_NavMeshData: {fileID: 0}
126 | --- !u!1 &1878741849
127 | GameObject:
128 | m_ObjectHideFlags: 0
129 | m_CorrespondingSourceObject: {fileID: 0}
130 | m_PrefabInstance: {fileID: 0}
131 | m_PrefabAsset: {fileID: 0}
132 | serializedVersion: 6
133 | m_Component:
134 | - component: {fileID: 1878741851}
135 | - component: {fileID: 1878741853}
136 | m_Layer: 0
137 | m_Name: ObjectWithMissingComponent
138 | m_TagString: Untagged
139 | m_Icon: {fileID: 0}
140 | m_NavMeshLayer: 0
141 | m_StaticEditorFlags: 0
142 | m_IsActive: 1
143 | --- !u!4 &1878741851
144 | Transform:
145 | m_ObjectHideFlags: 0
146 | m_CorrespondingSourceObject: {fileID: 0}
147 | m_PrefabInstance: {fileID: 0}
148 | m_PrefabAsset: {fileID: 0}
149 | m_GameObject: {fileID: 1878741849}
150 | m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
151 | m_LocalPosition: {x: 0, y: 0, z: 0}
152 | m_LocalScale: {x: 1, y: 1, z: 1}
153 | m_Children: []
154 | m_Father: {fileID: 0}
155 | m_RootOrder: 0
156 | m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
157 | --- !u!114 &1878741853
158 | MonoBehaviour:
159 | m_ObjectHideFlags: 0
160 | m_CorrespondingSourceObject: {fileID: 0}
161 | m_PrefabInstance: {fileID: 0}
162 | m_PrefabAsset: {fileID: 0}
163 | m_GameObject: {fileID: 1878741849}
164 | m_Enabled: 1
165 | m_EditorHideFlags: 0
166 | m_Script: {fileID: 0}
167 | m_Name:
168 | m_EditorClassIdentifier: MyScriptWithProperties, com.needle.missing-component-info-shared-assets
169 | $ GlobalObjectId_V1-2-0b53a5f977bdf044498f5f33a6eca8bc-1878741853-0
170 | MyFloatValue: 42
171 | MyText: Hello
172 | MyBool: 0
173 | MyClass:
174 | MyBool: 0
175 | MyList:
176 |
--------------------------------------------------------------------------------
/projects/MissingComponent_2022/ProjectSettings/SceneTemplateSettings.json:
--------------------------------------------------------------------------------
1 | {
2 | "templatePinStates": [],
3 | "dependencyTypeInfos": [
4 | {
5 | "userAdded": false,
6 | "type": "UnityEngine.AnimationClip",
7 | "ignore": false,
8 | "defaultInstantiationMode": 0,
9 | "supportsModification": true
10 | },
11 | {
12 | "userAdded": false,
13 | "type": "UnityEditor.Animations.AnimatorController",
14 | "ignore": false,
15 | "defaultInstantiationMode": 0,
16 | "supportsModification": true
17 | },
18 | {
19 | "userAdded": false,
20 | "type": "UnityEngine.AnimatorOverrideController",
21 | "ignore": false,
22 | "defaultInstantiationMode": 0,
23 | "supportsModification": true
24 | },
25 | {
26 | "userAdded": false,
27 | "type": "UnityEditor.Audio.AudioMixerController",
28 | "ignore": false,
29 | "defaultInstantiationMode": 0,
30 | "supportsModification": true
31 | },
32 | {
33 | "userAdded": false,
34 | "type": "UnityEngine.ComputeShader",
35 | "ignore": true,
36 | "defaultInstantiationMode": 1,
37 | "supportsModification": true
38 | },
39 | {
40 | "userAdded": false,
41 | "type": "UnityEngine.Cubemap",
42 | "ignore": false,
43 | "defaultInstantiationMode": 0,
44 | "supportsModification": true
45 | },
46 | {
47 | "userAdded": false,
48 | "type": "UnityEngine.GameObject",
49 | "ignore": false,
50 | "defaultInstantiationMode": 0,
51 | "supportsModification": true
52 | },
53 | {
54 | "userAdded": false,
55 | "type": "UnityEditor.LightingDataAsset",
56 | "ignore": false,
57 | "defaultInstantiationMode": 0,
58 | "supportsModification": false
59 | },
60 | {
61 | "userAdded": false,
62 | "type": "UnityEngine.LightingSettings",
63 | "ignore": false,
64 | "defaultInstantiationMode": 0,
65 | "supportsModification": true
66 | },
67 | {
68 | "userAdded": false,
69 | "type": "UnityEngine.Material",
70 | "ignore": false,
71 | "defaultInstantiationMode": 0,
72 | "supportsModification": true
73 | },
74 | {
75 | "userAdded": false,
76 | "type": "UnityEditor.MonoScript",
77 | "ignore": true,
78 | "defaultInstantiationMode": 1,
79 | "supportsModification": true
80 | },
81 | {
82 | "userAdded": false,
83 | "type": "UnityEngine.PhysicMaterial",
84 | "ignore": false,
85 | "defaultInstantiationMode": 0,
86 | "supportsModification": true
87 | },
88 | {
89 | "userAdded": false,
90 | "type": "UnityEngine.PhysicsMaterial2D",
91 | "ignore": false,
92 | "defaultInstantiationMode": 0,
93 | "supportsModification": true
94 | },
95 | {
96 | "userAdded": false,
97 | "type": "UnityEngine.Rendering.PostProcessing.PostProcessProfile",
98 | "ignore": false,
99 | "defaultInstantiationMode": 0,
100 | "supportsModification": true
101 | },
102 | {
103 | "userAdded": false,
104 | "type": "UnityEngine.Rendering.PostProcessing.PostProcessResources",
105 | "ignore": false,
106 | "defaultInstantiationMode": 0,
107 | "supportsModification": true
108 | },
109 | {
110 | "userAdded": false,
111 | "type": "UnityEngine.Rendering.VolumeProfile",
112 | "ignore": false,
113 | "defaultInstantiationMode": 0,
114 | "supportsModification": true
115 | },
116 | {
117 | "userAdded": false,
118 | "type": "UnityEditor.SceneAsset",
119 | "ignore": false,
120 | "defaultInstantiationMode": 0,
121 | "supportsModification": false
122 | },
123 | {
124 | "userAdded": false,
125 | "type": "UnityEngine.Shader",
126 | "ignore": true,
127 | "defaultInstantiationMode": 1,
128 | "supportsModification": true
129 | },
130 | {
131 | "userAdded": false,
132 | "type": "UnityEngine.ShaderVariantCollection",
133 | "ignore": true,
134 | "defaultInstantiationMode": 1,
135 | "supportsModification": true
136 | },
137 | {
138 | "userAdded": false,
139 | "type": "UnityEngine.Texture",
140 | "ignore": false,
141 | "defaultInstantiationMode": 0,
142 | "supportsModification": true
143 | },
144 | {
145 | "userAdded": false,
146 | "type": "UnityEngine.Texture2D",
147 | "ignore": false,
148 | "defaultInstantiationMode": 0,
149 | "supportsModification": true
150 | },
151 | {
152 | "userAdded": false,
153 | "type": "UnityEngine.Timeline.TimelineAsset",
154 | "ignore": false,
155 | "defaultInstantiationMode": 0,
156 | "supportsModification": true
157 | }
158 | ],
159 | "defaultDependencyTypeInfo": {
160 | "userAdded": false,
161 | "type": "",
162 | "ignore": false,
163 | "defaultInstantiationMode": 1,
164 | "supportsModification": true
165 | },
166 | "newSceneOverride": 0
167 | }
--------------------------------------------------------------------------------
/projects/MissingComponent_2020_3/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 |
--------------------------------------------------------------------------------
/projects/MissingComponent_2021_3/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 | m_UsePhysicalKeys: 0
297 |
--------------------------------------------------------------------------------
/projects/MissingComponent_2022/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 | m_UsePhysicalKeys: 1
297 |
--------------------------------------------------------------------------------
/projects/MissingComponent_2020_3/ProjectSettings/QualitySettings.asset:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!47 &1
4 | QualitySettings:
5 | m_ObjectHideFlags: 0
6 | serializedVersion: 5
7 | m_CurrentQuality: 5
8 | m_QualitySettings:
9 | - serializedVersion: 2
10 | name: Very Low
11 | pixelLightCount: 0
12 | shadows: 0
13 | shadowResolution: 0
14 | shadowProjection: 1
15 | shadowCascades: 1
16 | shadowDistance: 15
17 | shadowNearPlaneOffset: 3
18 | shadowCascade2Split: 0.33333334
19 | shadowCascade4Split: {x: 0.06666667, y: 0.2, z: 0.46666667}
20 | shadowmaskMode: 0
21 | skinWeights: 1
22 | textureQuality: 1
23 | anisotropicTextures: 0
24 | antiAliasing: 0
25 | softParticles: 0
26 | softVegetation: 0
27 | realtimeReflectionProbes: 0
28 | billboardsFaceCameraPosition: 0
29 | vSyncCount: 0
30 | lodBias: 0.3
31 | maximumLODLevel: 0
32 | streamingMipmapsActive: 0
33 | streamingMipmapsAddAllCameras: 1
34 | streamingMipmapsMemoryBudget: 512
35 | streamingMipmapsRenderersPerFrame: 512
36 | streamingMipmapsMaxLevelReduction: 2
37 | streamingMipmapsMaxFileIORequests: 1024
38 | particleRaycastBudget: 4
39 | asyncUploadTimeSlice: 2
40 | asyncUploadBufferSize: 16
41 | asyncUploadPersistentBuffer: 1
42 | resolutionScalingFixedDPIFactor: 1
43 | customRenderPipeline: {fileID: 0}
44 | excludedTargetPlatforms: []
45 | - serializedVersion: 2
46 | name: Low
47 | pixelLightCount: 0
48 | shadows: 0
49 | shadowResolution: 0
50 | shadowProjection: 1
51 | shadowCascades: 1
52 | shadowDistance: 20
53 | shadowNearPlaneOffset: 3
54 | shadowCascade2Split: 0.33333334
55 | shadowCascade4Split: {x: 0.06666667, y: 0.2, z: 0.46666667}
56 | shadowmaskMode: 0
57 | skinWeights: 2
58 | textureQuality: 0
59 | anisotropicTextures: 0
60 | antiAliasing: 0
61 | softParticles: 0
62 | softVegetation: 0
63 | realtimeReflectionProbes: 0
64 | billboardsFaceCameraPosition: 0
65 | vSyncCount: 0
66 | lodBias: 0.4
67 | maximumLODLevel: 0
68 | streamingMipmapsActive: 0
69 | streamingMipmapsAddAllCameras: 1
70 | streamingMipmapsMemoryBudget: 512
71 | streamingMipmapsRenderersPerFrame: 512
72 | streamingMipmapsMaxLevelReduction: 2
73 | streamingMipmapsMaxFileIORequests: 1024
74 | particleRaycastBudget: 16
75 | asyncUploadTimeSlice: 2
76 | asyncUploadBufferSize: 16
77 | asyncUploadPersistentBuffer: 1
78 | resolutionScalingFixedDPIFactor: 1
79 | customRenderPipeline: {fileID: 0}
80 | excludedTargetPlatforms: []
81 | - serializedVersion: 2
82 | name: Medium
83 | pixelLightCount: 1
84 | shadows: 1
85 | shadowResolution: 0
86 | shadowProjection: 1
87 | shadowCascades: 1
88 | shadowDistance: 20
89 | shadowNearPlaneOffset: 3
90 | shadowCascade2Split: 0.33333334
91 | shadowCascade4Split: {x: 0.06666667, y: 0.2, z: 0.46666667}
92 | shadowmaskMode: 0
93 | skinWeights: 2
94 | textureQuality: 0
95 | anisotropicTextures: 1
96 | antiAliasing: 0
97 | softParticles: 0
98 | softVegetation: 0
99 | realtimeReflectionProbes: 0
100 | billboardsFaceCameraPosition: 0
101 | vSyncCount: 1
102 | lodBias: 0.7
103 | maximumLODLevel: 0
104 | streamingMipmapsActive: 0
105 | streamingMipmapsAddAllCameras: 1
106 | streamingMipmapsMemoryBudget: 512
107 | streamingMipmapsRenderersPerFrame: 512
108 | streamingMipmapsMaxLevelReduction: 2
109 | streamingMipmapsMaxFileIORequests: 1024
110 | particleRaycastBudget: 64
111 | asyncUploadTimeSlice: 2
112 | asyncUploadBufferSize: 16
113 | asyncUploadPersistentBuffer: 1
114 | resolutionScalingFixedDPIFactor: 1
115 | customRenderPipeline: {fileID: 0}
116 | excludedTargetPlatforms: []
117 | - serializedVersion: 2
118 | name: High
119 | pixelLightCount: 2
120 | shadows: 2
121 | shadowResolution: 1
122 | shadowProjection: 1
123 | shadowCascades: 2
124 | shadowDistance: 40
125 | shadowNearPlaneOffset: 3
126 | shadowCascade2Split: 0.33333334
127 | shadowCascade4Split: {x: 0.06666667, y: 0.2, z: 0.46666667}
128 | shadowmaskMode: 1
129 | skinWeights: 2
130 | textureQuality: 0
131 | anisotropicTextures: 1
132 | antiAliasing: 0
133 | softParticles: 0
134 | softVegetation: 1
135 | realtimeReflectionProbes: 1
136 | billboardsFaceCameraPosition: 1
137 | vSyncCount: 1
138 | lodBias: 1
139 | maximumLODLevel: 0
140 | streamingMipmapsActive: 0
141 | streamingMipmapsAddAllCameras: 1
142 | streamingMipmapsMemoryBudget: 512
143 | streamingMipmapsRenderersPerFrame: 512
144 | streamingMipmapsMaxLevelReduction: 2
145 | streamingMipmapsMaxFileIORequests: 1024
146 | particleRaycastBudget: 256
147 | asyncUploadTimeSlice: 2
148 | asyncUploadBufferSize: 16
149 | asyncUploadPersistentBuffer: 1
150 | resolutionScalingFixedDPIFactor: 1
151 | customRenderPipeline: {fileID: 0}
152 | excludedTargetPlatforms: []
153 | - serializedVersion: 2
154 | name: Very High
155 | pixelLightCount: 3
156 | shadows: 2
157 | shadowResolution: 2
158 | shadowProjection: 1
159 | shadowCascades: 2
160 | shadowDistance: 70
161 | shadowNearPlaneOffset: 3
162 | shadowCascade2Split: 0.33333334
163 | shadowCascade4Split: {x: 0.06666667, y: 0.2, z: 0.46666667}
164 | shadowmaskMode: 1
165 | skinWeights: 4
166 | textureQuality: 0
167 | anisotropicTextures: 2
168 | antiAliasing: 2
169 | softParticles: 1
170 | softVegetation: 1
171 | realtimeReflectionProbes: 1
172 | billboardsFaceCameraPosition: 1
173 | vSyncCount: 1
174 | lodBias: 1.5
175 | maximumLODLevel: 0
176 | streamingMipmapsActive: 0
177 | streamingMipmapsAddAllCameras: 1
178 | streamingMipmapsMemoryBudget: 512
179 | streamingMipmapsRenderersPerFrame: 512
180 | streamingMipmapsMaxLevelReduction: 2
181 | streamingMipmapsMaxFileIORequests: 1024
182 | particleRaycastBudget: 1024
183 | asyncUploadTimeSlice: 2
184 | asyncUploadBufferSize: 16
185 | asyncUploadPersistentBuffer: 1
186 | resolutionScalingFixedDPIFactor: 1
187 | customRenderPipeline: {fileID: 0}
188 | excludedTargetPlatforms: []
189 | - serializedVersion: 2
190 | name: Ultra
191 | pixelLightCount: 4
192 | shadows: 2
193 | shadowResolution: 2
194 | shadowProjection: 1
195 | shadowCascades: 4
196 | shadowDistance: 150
197 | shadowNearPlaneOffset: 3
198 | shadowCascade2Split: 0.33333334
199 | shadowCascade4Split: {x: 0.06666667, y: 0.2, z: 0.46666667}
200 | shadowmaskMode: 1
201 | skinWeights: 255
202 | textureQuality: 0
203 | anisotropicTextures: 2
204 | antiAliasing: 2
205 | softParticles: 1
206 | softVegetation: 1
207 | realtimeReflectionProbes: 1
208 | billboardsFaceCameraPosition: 1
209 | vSyncCount: 1
210 | lodBias: 2
211 | maximumLODLevel: 0
212 | streamingMipmapsActive: 0
213 | streamingMipmapsAddAllCameras: 1
214 | streamingMipmapsMemoryBudget: 512
215 | streamingMipmapsRenderersPerFrame: 512
216 | streamingMipmapsMaxLevelReduction: 2
217 | streamingMipmapsMaxFileIORequests: 1024
218 | particleRaycastBudget: 4096
219 | asyncUploadTimeSlice: 2
220 | asyncUploadBufferSize: 16
221 | asyncUploadPersistentBuffer: 1
222 | resolutionScalingFixedDPIFactor: 1
223 | customRenderPipeline: {fileID: 0}
224 | excludedTargetPlatforms: []
225 | m_PerPlatformDefaultQuality:
226 | Android: 2
227 | CloudRendering: 5
228 | GameCoreScarlett: 5
229 | GameCoreXboxOne: 5
230 | Lumin: 5
231 | Nintendo Switch: 5
232 | PS4: 5
233 | PS5: 5
234 | Stadia: 5
235 | Standalone: 5
236 | WebGL: 3
237 | Windows Store Apps: 5
238 | XboxOne: 5
239 | iPhone: 2
240 | tvOS: 2
241 |
--------------------------------------------------------------------------------
/projects/MissingComponent_2021_3/ProjectSettings/QualitySettings.asset:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!47 &1
4 | QualitySettings:
5 | m_ObjectHideFlags: 0
6 | serializedVersion: 5
7 | m_CurrentQuality: 5
8 | m_QualitySettings:
9 | - serializedVersion: 2
10 | name: Very Low
11 | pixelLightCount: 0
12 | shadows: 0
13 | shadowResolution: 0
14 | shadowProjection: 1
15 | shadowCascades: 1
16 | shadowDistance: 15
17 | shadowNearPlaneOffset: 3
18 | shadowCascade2Split: 0.33333334
19 | shadowCascade4Split: {x: 0.06666667, y: 0.2, z: 0.46666667}
20 | shadowmaskMode: 0
21 | skinWeights: 1
22 | textureQuality: 1
23 | anisotropicTextures: 0
24 | antiAliasing: 0
25 | softParticles: 0
26 | softVegetation: 0
27 | realtimeReflectionProbes: 0
28 | billboardsFaceCameraPosition: 0
29 | vSyncCount: 0
30 | lodBias: 0.3
31 | maximumLODLevel: 0
32 | streamingMipmapsActive: 0
33 | streamingMipmapsAddAllCameras: 1
34 | streamingMipmapsMemoryBudget: 512
35 | streamingMipmapsRenderersPerFrame: 512
36 | streamingMipmapsMaxLevelReduction: 2
37 | streamingMipmapsMaxFileIORequests: 1024
38 | particleRaycastBudget: 4
39 | asyncUploadTimeSlice: 2
40 | asyncUploadBufferSize: 16
41 | asyncUploadPersistentBuffer: 1
42 | resolutionScalingFixedDPIFactor: 1
43 | customRenderPipeline: {fileID: 0}
44 | excludedTargetPlatforms: []
45 | - serializedVersion: 2
46 | name: Low
47 | pixelLightCount: 0
48 | shadows: 0
49 | shadowResolution: 0
50 | shadowProjection: 1
51 | shadowCascades: 1
52 | shadowDistance: 20
53 | shadowNearPlaneOffset: 3
54 | shadowCascade2Split: 0.33333334
55 | shadowCascade4Split: {x: 0.06666667, y: 0.2, z: 0.46666667}
56 | shadowmaskMode: 0
57 | skinWeights: 2
58 | textureQuality: 0
59 | anisotropicTextures: 0
60 | antiAliasing: 0
61 | softParticles: 0
62 | softVegetation: 0
63 | realtimeReflectionProbes: 0
64 | billboardsFaceCameraPosition: 0
65 | vSyncCount: 0
66 | lodBias: 0.4
67 | maximumLODLevel: 0
68 | streamingMipmapsActive: 0
69 | streamingMipmapsAddAllCameras: 1
70 | streamingMipmapsMemoryBudget: 512
71 | streamingMipmapsRenderersPerFrame: 512
72 | streamingMipmapsMaxLevelReduction: 2
73 | streamingMipmapsMaxFileIORequests: 1024
74 | particleRaycastBudget: 16
75 | asyncUploadTimeSlice: 2
76 | asyncUploadBufferSize: 16
77 | asyncUploadPersistentBuffer: 1
78 | resolutionScalingFixedDPIFactor: 1
79 | customRenderPipeline: {fileID: 0}
80 | excludedTargetPlatforms: []
81 | - serializedVersion: 2
82 | name: Medium
83 | pixelLightCount: 1
84 | shadows: 1
85 | shadowResolution: 0
86 | shadowProjection: 1
87 | shadowCascades: 1
88 | shadowDistance: 20
89 | shadowNearPlaneOffset: 3
90 | shadowCascade2Split: 0.33333334
91 | shadowCascade4Split: {x: 0.06666667, y: 0.2, z: 0.46666667}
92 | shadowmaskMode: 0
93 | skinWeights: 2
94 | textureQuality: 0
95 | anisotropicTextures: 1
96 | antiAliasing: 0
97 | softParticles: 0
98 | softVegetation: 0
99 | realtimeReflectionProbes: 0
100 | billboardsFaceCameraPosition: 0
101 | vSyncCount: 1
102 | lodBias: 0.7
103 | maximumLODLevel: 0
104 | streamingMipmapsActive: 0
105 | streamingMipmapsAddAllCameras: 1
106 | streamingMipmapsMemoryBudget: 512
107 | streamingMipmapsRenderersPerFrame: 512
108 | streamingMipmapsMaxLevelReduction: 2
109 | streamingMipmapsMaxFileIORequests: 1024
110 | particleRaycastBudget: 64
111 | asyncUploadTimeSlice: 2
112 | asyncUploadBufferSize: 16
113 | asyncUploadPersistentBuffer: 1
114 | resolutionScalingFixedDPIFactor: 1
115 | customRenderPipeline: {fileID: 0}
116 | excludedTargetPlatforms: []
117 | - serializedVersion: 2
118 | name: High
119 | pixelLightCount: 2
120 | shadows: 2
121 | shadowResolution: 1
122 | shadowProjection: 1
123 | shadowCascades: 2
124 | shadowDistance: 40
125 | shadowNearPlaneOffset: 3
126 | shadowCascade2Split: 0.33333334
127 | shadowCascade4Split: {x: 0.06666667, y: 0.2, z: 0.46666667}
128 | shadowmaskMode: 1
129 | skinWeights: 2
130 | textureQuality: 0
131 | anisotropicTextures: 1
132 | antiAliasing: 0
133 | softParticles: 0
134 | softVegetation: 1
135 | realtimeReflectionProbes: 1
136 | billboardsFaceCameraPosition: 1
137 | vSyncCount: 1
138 | lodBias: 1
139 | maximumLODLevel: 0
140 | streamingMipmapsActive: 0
141 | streamingMipmapsAddAllCameras: 1
142 | streamingMipmapsMemoryBudget: 512
143 | streamingMipmapsRenderersPerFrame: 512
144 | streamingMipmapsMaxLevelReduction: 2
145 | streamingMipmapsMaxFileIORequests: 1024
146 | particleRaycastBudget: 256
147 | asyncUploadTimeSlice: 2
148 | asyncUploadBufferSize: 16
149 | asyncUploadPersistentBuffer: 1
150 | resolutionScalingFixedDPIFactor: 1
151 | customRenderPipeline: {fileID: 0}
152 | excludedTargetPlatforms: []
153 | - serializedVersion: 2
154 | name: Very High
155 | pixelLightCount: 3
156 | shadows: 2
157 | shadowResolution: 2
158 | shadowProjection: 1
159 | shadowCascades: 2
160 | shadowDistance: 70
161 | shadowNearPlaneOffset: 3
162 | shadowCascade2Split: 0.33333334
163 | shadowCascade4Split: {x: 0.06666667, y: 0.2, z: 0.46666667}
164 | shadowmaskMode: 1
165 | skinWeights: 4
166 | textureQuality: 0
167 | anisotropicTextures: 2
168 | antiAliasing: 2
169 | softParticles: 1
170 | softVegetation: 1
171 | realtimeReflectionProbes: 1
172 | billboardsFaceCameraPosition: 1
173 | vSyncCount: 1
174 | lodBias: 1.5
175 | maximumLODLevel: 0
176 | streamingMipmapsActive: 0
177 | streamingMipmapsAddAllCameras: 1
178 | streamingMipmapsMemoryBudget: 512
179 | streamingMipmapsRenderersPerFrame: 512
180 | streamingMipmapsMaxLevelReduction: 2
181 | streamingMipmapsMaxFileIORequests: 1024
182 | particleRaycastBudget: 1024
183 | asyncUploadTimeSlice: 2
184 | asyncUploadBufferSize: 16
185 | asyncUploadPersistentBuffer: 1
186 | resolutionScalingFixedDPIFactor: 1
187 | customRenderPipeline: {fileID: 0}
188 | excludedTargetPlatforms: []
189 | - serializedVersion: 2
190 | name: Ultra
191 | pixelLightCount: 4
192 | shadows: 2
193 | shadowResolution: 2
194 | shadowProjection: 1
195 | shadowCascades: 4
196 | shadowDistance: 150
197 | shadowNearPlaneOffset: 3
198 | shadowCascade2Split: 0.33333334
199 | shadowCascade4Split: {x: 0.06666667, y: 0.2, z: 0.46666667}
200 | shadowmaskMode: 1
201 | skinWeights: 255
202 | textureQuality: 0
203 | anisotropicTextures: 2
204 | antiAliasing: 2
205 | softParticles: 1
206 | softVegetation: 1
207 | realtimeReflectionProbes: 1
208 | billboardsFaceCameraPosition: 1
209 | vSyncCount: 1
210 | lodBias: 2
211 | maximumLODLevel: 0
212 | streamingMipmapsActive: 0
213 | streamingMipmapsAddAllCameras: 1
214 | streamingMipmapsMemoryBudget: 512
215 | streamingMipmapsRenderersPerFrame: 512
216 | streamingMipmapsMaxLevelReduction: 2
217 | streamingMipmapsMaxFileIORequests: 1024
218 | particleRaycastBudget: 4096
219 | asyncUploadTimeSlice: 2
220 | asyncUploadBufferSize: 16
221 | asyncUploadPersistentBuffer: 1
222 | resolutionScalingFixedDPIFactor: 1
223 | customRenderPipeline: {fileID: 0}
224 | excludedTargetPlatforms: []
225 | m_PerPlatformDefaultQuality:
226 | Android: 2
227 | CloudRendering: 5
228 | EmbeddedLinux: 5
229 | GameCoreScarlett: 5
230 | GameCoreXboxOne: 5
231 | Lumin: 5
232 | Nintendo Switch: 5
233 | PS4: 5
234 | PS5: 5
235 | Server: 5
236 | Stadia: 5
237 | Standalone: 5
238 | WebGL: 3
239 | Windows Store Apps: 5
240 | XboxOne: 5
241 | iPhone: 2
242 | tvOS: 2
243 |
--------------------------------------------------------------------------------
/projects/MissingComponent_2022/ProjectSettings/QualitySettings.asset:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!47 &1
4 | QualitySettings:
5 | m_ObjectHideFlags: 0
6 | serializedVersion: 5
7 | m_CurrentQuality: 5
8 | m_QualitySettings:
9 | - serializedVersion: 2
10 | name: Very Low
11 | pixelLightCount: 0
12 | shadows: 0
13 | shadowResolution: 0
14 | shadowProjection: 1
15 | shadowCascades: 1
16 | shadowDistance: 15
17 | shadowNearPlaneOffset: 3
18 | shadowCascade2Split: 0.33333334
19 | shadowCascade4Split: {x: 0.06666667, y: 0.2, z: 0.46666667}
20 | shadowmaskMode: 0
21 | skinWeights: 1
22 | textureQuality: 1
23 | anisotropicTextures: 0
24 | antiAliasing: 0
25 | softParticles: 0
26 | softVegetation: 0
27 | realtimeReflectionProbes: 0
28 | billboardsFaceCameraPosition: 0
29 | vSyncCount: 0
30 | lodBias: 0.3
31 | maximumLODLevel: 0
32 | streamingMipmapsActive: 0
33 | streamingMipmapsAddAllCameras: 1
34 | streamingMipmapsMemoryBudget: 512
35 | streamingMipmapsRenderersPerFrame: 512
36 | streamingMipmapsMaxLevelReduction: 2
37 | streamingMipmapsMaxFileIORequests: 1024
38 | particleRaycastBudget: 4
39 | asyncUploadTimeSlice: 2
40 | asyncUploadBufferSize: 16
41 | asyncUploadPersistentBuffer: 1
42 | resolutionScalingFixedDPIFactor: 1
43 | customRenderPipeline: {fileID: 0}
44 | excludedTargetPlatforms: []
45 | - serializedVersion: 2
46 | name: Low
47 | pixelLightCount: 0
48 | shadows: 0
49 | shadowResolution: 0
50 | shadowProjection: 1
51 | shadowCascades: 1
52 | shadowDistance: 20
53 | shadowNearPlaneOffset: 3
54 | shadowCascade2Split: 0.33333334
55 | shadowCascade4Split: {x: 0.06666667, y: 0.2, z: 0.46666667}
56 | shadowmaskMode: 0
57 | skinWeights: 2
58 | textureQuality: 0
59 | anisotropicTextures: 0
60 | antiAliasing: 0
61 | softParticles: 0
62 | softVegetation: 0
63 | realtimeReflectionProbes: 0
64 | billboardsFaceCameraPosition: 0
65 | vSyncCount: 0
66 | lodBias: 0.4
67 | maximumLODLevel: 0
68 | streamingMipmapsActive: 0
69 | streamingMipmapsAddAllCameras: 1
70 | streamingMipmapsMemoryBudget: 512
71 | streamingMipmapsRenderersPerFrame: 512
72 | streamingMipmapsMaxLevelReduction: 2
73 | streamingMipmapsMaxFileIORequests: 1024
74 | particleRaycastBudget: 16
75 | asyncUploadTimeSlice: 2
76 | asyncUploadBufferSize: 16
77 | asyncUploadPersistentBuffer: 1
78 | resolutionScalingFixedDPIFactor: 1
79 | customRenderPipeline: {fileID: 0}
80 | excludedTargetPlatforms: []
81 | - serializedVersion: 2
82 | name: Medium
83 | pixelLightCount: 1
84 | shadows: 1
85 | shadowResolution: 0
86 | shadowProjection: 1
87 | shadowCascades: 1
88 | shadowDistance: 20
89 | shadowNearPlaneOffset: 3
90 | shadowCascade2Split: 0.33333334
91 | shadowCascade4Split: {x: 0.06666667, y: 0.2, z: 0.46666667}
92 | shadowmaskMode: 0
93 | skinWeights: 2
94 | textureQuality: 0
95 | anisotropicTextures: 1
96 | antiAliasing: 0
97 | softParticles: 0
98 | softVegetation: 0
99 | realtimeReflectionProbes: 0
100 | billboardsFaceCameraPosition: 0
101 | vSyncCount: 1
102 | lodBias: 0.7
103 | maximumLODLevel: 0
104 | streamingMipmapsActive: 0
105 | streamingMipmapsAddAllCameras: 1
106 | streamingMipmapsMemoryBudget: 512
107 | streamingMipmapsRenderersPerFrame: 512
108 | streamingMipmapsMaxLevelReduction: 2
109 | streamingMipmapsMaxFileIORequests: 1024
110 | particleRaycastBudget: 64
111 | asyncUploadTimeSlice: 2
112 | asyncUploadBufferSize: 16
113 | asyncUploadPersistentBuffer: 1
114 | resolutionScalingFixedDPIFactor: 1
115 | customRenderPipeline: {fileID: 0}
116 | excludedTargetPlatforms: []
117 | - serializedVersion: 2
118 | name: High
119 | pixelLightCount: 2
120 | shadows: 2
121 | shadowResolution: 1
122 | shadowProjection: 1
123 | shadowCascades: 2
124 | shadowDistance: 40
125 | shadowNearPlaneOffset: 3
126 | shadowCascade2Split: 0.33333334
127 | shadowCascade4Split: {x: 0.06666667, y: 0.2, z: 0.46666667}
128 | shadowmaskMode: 1
129 | skinWeights: 2
130 | textureQuality: 0
131 | anisotropicTextures: 1
132 | antiAliasing: 0
133 | softParticles: 0
134 | softVegetation: 1
135 | realtimeReflectionProbes: 1
136 | billboardsFaceCameraPosition: 1
137 | vSyncCount: 1
138 | lodBias: 1
139 | maximumLODLevel: 0
140 | streamingMipmapsActive: 0
141 | streamingMipmapsAddAllCameras: 1
142 | streamingMipmapsMemoryBudget: 512
143 | streamingMipmapsRenderersPerFrame: 512
144 | streamingMipmapsMaxLevelReduction: 2
145 | streamingMipmapsMaxFileIORequests: 1024
146 | particleRaycastBudget: 256
147 | asyncUploadTimeSlice: 2
148 | asyncUploadBufferSize: 16
149 | asyncUploadPersistentBuffer: 1
150 | resolutionScalingFixedDPIFactor: 1
151 | customRenderPipeline: {fileID: 0}
152 | excludedTargetPlatforms: []
153 | - serializedVersion: 2
154 | name: Very High
155 | pixelLightCount: 3
156 | shadows: 2
157 | shadowResolution: 2
158 | shadowProjection: 1
159 | shadowCascades: 2
160 | shadowDistance: 70
161 | shadowNearPlaneOffset: 3
162 | shadowCascade2Split: 0.33333334
163 | shadowCascade4Split: {x: 0.06666667, y: 0.2, z: 0.46666667}
164 | shadowmaskMode: 1
165 | skinWeights: 4
166 | textureQuality: 0
167 | anisotropicTextures: 2
168 | antiAliasing: 2
169 | softParticles: 1
170 | softVegetation: 1
171 | realtimeReflectionProbes: 1
172 | billboardsFaceCameraPosition: 1
173 | vSyncCount: 1
174 | lodBias: 1.5
175 | maximumLODLevel: 0
176 | streamingMipmapsActive: 0
177 | streamingMipmapsAddAllCameras: 1
178 | streamingMipmapsMemoryBudget: 512
179 | streamingMipmapsRenderersPerFrame: 512
180 | streamingMipmapsMaxLevelReduction: 2
181 | streamingMipmapsMaxFileIORequests: 1024
182 | particleRaycastBudget: 1024
183 | asyncUploadTimeSlice: 2
184 | asyncUploadBufferSize: 16
185 | asyncUploadPersistentBuffer: 1
186 | resolutionScalingFixedDPIFactor: 1
187 | customRenderPipeline: {fileID: 0}
188 | excludedTargetPlatforms: []
189 | - serializedVersion: 2
190 | name: Ultra
191 | pixelLightCount: 4
192 | shadows: 2
193 | shadowResolution: 2
194 | shadowProjection: 1
195 | shadowCascades: 4
196 | shadowDistance: 150
197 | shadowNearPlaneOffset: 3
198 | shadowCascade2Split: 0.33333334
199 | shadowCascade4Split: {x: 0.06666667, y: 0.2, z: 0.46666667}
200 | shadowmaskMode: 1
201 | skinWeights: 255
202 | textureQuality: 0
203 | anisotropicTextures: 2
204 | antiAliasing: 2
205 | softParticles: 1
206 | softVegetation: 1
207 | realtimeReflectionProbes: 1
208 | billboardsFaceCameraPosition: 1
209 | vSyncCount: 1
210 | lodBias: 2
211 | maximumLODLevel: 0
212 | streamingMipmapsActive: 0
213 | streamingMipmapsAddAllCameras: 1
214 | streamingMipmapsMemoryBudget: 512
215 | streamingMipmapsRenderersPerFrame: 512
216 | streamingMipmapsMaxLevelReduction: 2
217 | streamingMipmapsMaxFileIORequests: 1024
218 | particleRaycastBudget: 4096
219 | asyncUploadTimeSlice: 2
220 | asyncUploadBufferSize: 16
221 | asyncUploadPersistentBuffer: 1
222 | resolutionScalingFixedDPIFactor: 1
223 | customRenderPipeline: {fileID: 0}
224 | excludedTargetPlatforms: []
225 | m_PerPlatformDefaultQuality:
226 | Android: 2
227 | CloudRendering: 5
228 | EmbeddedLinux: 5
229 | GameCoreScarlett: 5
230 | GameCoreXboxOne: 5
231 | Lumin: 5
232 | Nintendo Switch: 5
233 | PS4: 5
234 | PS5: 5
235 | QNX: 5
236 | Server: 5
237 | Stadia: 5
238 | Standalone: 5
239 | WebGL: 3
240 | Windows Store Apps: 5
241 | XboxOne: 5
242 | iPhone: 2
243 | tvOS: 2
244 |
--------------------------------------------------------------------------------
/projects/MissingComponent_2021_3/Assets/Scene.unity:
--------------------------------------------------------------------------------
1 | %YAML 1.1
2 | %TAG !u! tag:unity3d.com,2011:
3 | --- !u!29 &1
4 | OcclusionCullingSettings:
5 | m_ObjectHideFlags: 0
6 | serializedVersion: 2
7 | m_OcclusionBakeSettings:
8 | smallestOccluder: 5
9 | smallestHole: 0.25
10 | backfaceThreshold: 100
11 | m_SceneGUID: 00000000000000000000000000000000
12 | m_OcclusionCullingData: {fileID: 0}
13 | --- !u!104 &2
14 | RenderSettings:
15 | m_ObjectHideFlags: 0
16 | serializedVersion: 9
17 | m_Fog: 0
18 | m_FogColor: {r: 0.5, g: 0.5, b: 0.5, a: 1}
19 | m_FogMode: 3
20 | m_FogDensity: 0.01
21 | m_LinearFogStart: 0
22 | m_LinearFogEnd: 300
23 | m_AmbientSkyColor: {r: 0.212, g: 0.227, b: 0.259, a: 1}
24 | m_AmbientEquatorColor: {r: 0.114, g: 0.125, b: 0.133, a: 1}
25 | m_AmbientGroundColor: {r: 0.047, g: 0.043, b: 0.035, a: 1}
26 | m_AmbientIntensity: 1
27 | m_AmbientMode: 0
28 | m_SubtractiveShadowColor: {r: 0.42, g: 0.478, b: 0.627, a: 1}
29 | m_SkyboxMaterial: {fileID: 10304, guid: 0000000000000000f000000000000000, type: 0}
30 | m_HaloStrength: 0.5
31 | m_FlareStrength: 1
32 | m_FlareFadeSpeed: 3
33 | m_HaloTexture: {fileID: 0}
34 | m_SpotCookie: {fileID: 10001, guid: 0000000000000000e000000000000000, type: 0}
35 | m_DefaultReflectionMode: 0
36 | m_DefaultReflectionResolution: 128
37 | m_ReflectionBounces: 1
38 | m_ReflectionIntensity: 1
39 | m_CustomReflection: {fileID: 0}
40 | m_Sun: {fileID: 0}
41 | m_IndirectSpecularColor: {r: 0.37311953, g: 0.38074014, b: 0.3587274, a: 1}
42 | m_UseRadianceAmbientProbe: 0
43 | --- !u!157 &3
44 | LightmapSettings:
45 | m_ObjectHideFlags: 0
46 | serializedVersion: 12
47 | m_GIWorkflowMode: 1
48 | m_GISettings:
49 | serializedVersion: 2
50 | m_BounceScale: 1
51 | m_IndirectOutputScale: 1
52 | m_AlbedoBoost: 1
53 | m_EnvironmentLightingMode: 0
54 | m_EnableBakedLightmaps: 1
55 | m_EnableRealtimeLightmaps: 0
56 | m_LightmapEditorSettings:
57 | serializedVersion: 12
58 | m_Resolution: 2
59 | m_BakeResolution: 40
60 | m_AtlasSize: 1024
61 | m_AO: 0
62 | m_AOMaxDistance: 1
63 | m_CompAOExponent: 1
64 | m_CompAOExponentDirect: 0
65 | m_ExtractAmbientOcclusion: 0
66 | m_Padding: 2
67 | m_LightmapParameters: {fileID: 0}
68 | m_LightmapsBakeMode: 1
69 | m_TextureCompression: 1
70 | m_FinalGather: 0
71 | m_FinalGatherFiltering: 1
72 | m_FinalGatherRayCount: 256
73 | m_ReflectionCompression: 2
74 | m_MixedBakeMode: 2
75 | m_BakeBackend: 1
76 | m_PVRSampling: 1
77 | m_PVRDirectSampleCount: 32
78 | m_PVRSampleCount: 512
79 | m_PVRBounces: 2
80 | m_PVREnvironmentSampleCount: 256
81 | m_PVREnvironmentReferencePointCount: 2048
82 | m_PVRFilteringMode: 1
83 | m_PVRDenoiserTypeDirect: 1
84 | m_PVRDenoiserTypeIndirect: 1
85 | m_PVRDenoiserTypeAO: 1
86 | m_PVRFilterTypeDirect: 0
87 | m_PVRFilterTypeIndirect: 0
88 | m_PVRFilterTypeAO: 0
89 | m_PVREnvironmentMIS: 1
90 | m_PVRCulling: 1
91 | m_PVRFilteringGaussRadiusDirect: 1
92 | m_PVRFilteringGaussRadiusIndirect: 5
93 | m_PVRFilteringGaussRadiusAO: 2
94 | m_PVRFilteringAtrousPositionSigmaDirect: 0.5
95 | m_PVRFilteringAtrousPositionSigmaIndirect: 2
96 | m_PVRFilteringAtrousPositionSigmaAO: 1
97 | m_ExportTrainingData: 0
98 | m_TrainingDataDestination: TrainingData
99 | m_LightProbeSampleCountMultiplier: 4
100 | m_LightingDataAsset: {fileID: 0}
101 | m_LightingSettings: {fileID: 0}
102 | --- !u!196 &4
103 | NavMeshSettings:
104 | serializedVersion: 2
105 | m_ObjectHideFlags: 0
106 | m_BuildSettings:
107 | serializedVersion: 2
108 | agentTypeID: 0
109 | agentRadius: 0.5
110 | agentHeight: 2
111 | agentSlope: 45
112 | agentClimb: 0.4
113 | ledgeDropHeight: 0
114 | maxJumpAcrossDistance: 0
115 | minRegionArea: 2
116 | manualCellSize: 0
117 | cellSize: 0.16666667
118 | manualTileSize: 0
119 | tileSize: 256
120 | accuratePlacement: 0
121 | maxJobWorkers: 0
122 | preserveTilesOutsideBounds: 0
123 | debug:
124 | m_Flags: 0
125 | m_NavMeshData: {fileID: 0}
126 | --- !u!1 &1878741849
127 | GameObject:
128 | m_ObjectHideFlags: 0
129 | m_CorrespondingSourceObject: {fileID: 0}
130 | m_PrefabInstance: {fileID: 0}
131 | m_PrefabAsset: {fileID: 0}
132 | serializedVersion: 6
133 | m_Component:
134 | - component: {fileID: 1878741851}
135 | - component: {fileID: 1878741850}
136 | - component: {fileID: 1878741852}
137 | m_Layer: 0
138 | m_Name: ObjectWithMissingComponent
139 | m_TagString: Untagged
140 | m_Icon: {fileID: 0}
141 | m_NavMeshLayer: 0
142 | m_StaticEditorFlags: 0
143 | m_IsActive: 1
144 | --- !u!114 &1878741850
145 | MonoBehaviour:
146 | m_ObjectHideFlags: 0
147 | m_CorrespondingSourceObject: {fileID: 0}
148 | m_PrefabInstance: {fileID: 0}
149 | m_PrefabAsset: {fileID: 0}
150 | m_GameObject: {fileID: 1878741849}
151 | m_Enabled: 1
152 | m_EditorHideFlags: 0
153 | m_Script: {fileID: 11500000, guid: 6d01914368017764a8dc4f084b93d88c, type: 3}
154 | m_Name:
155 | m_EditorClassIdentifier: MyScript, Assembly-CSharp, Version=0.0.0.0, Culture=neutral,
156 | PublicKeyToken=null
157 | --- !u!4 &1878741851
158 | Transform:
159 | m_ObjectHideFlags: 0
160 | m_CorrespondingSourceObject: {fileID: 0}
161 | m_PrefabInstance: {fileID: 0}
162 | m_PrefabAsset: {fileID: 0}
163 | m_GameObject: {fileID: 1878741849}
164 | m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
165 | m_LocalPosition: {x: 0, y: 0, z: 0}
166 | m_LocalScale: {x: 1, y: 1, z: 1}
167 | m_Children: []
168 | m_Father: {fileID: 0}
169 | m_RootOrder: 0
170 | m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
171 | --- !u!114 &1878741852
172 | MonoBehaviour:
173 | m_ObjectHideFlags: 0
174 | m_CorrespondingSourceObject: {fileID: 0}
175 | m_PrefabInstance: {fileID: 0}
176 | m_PrefabAsset: {fileID: 0}
177 | m_GameObject: {fileID: 1878741849}
178 | m_Enabled: 1
179 | m_EditorHideFlags: 0
180 | m_Script: {fileID: 0}
181 | m_Name:
182 | m_EditorClassIdentifier: MyScriptWithProperties, Assembly-CSharp
183 | --- !u!1001 &403070074152375290
184 | PrefabInstance:
185 | m_ObjectHideFlags: 0
186 | serializedVersion: 2
187 | m_Modification:
188 | m_TransformParent: {fileID: 0}
189 | m_Modifications:
190 | - target: {fileID: 7034211870898048076, guid: b13396e9e094cc64ba016c91b7743682, type: 3}
191 | propertyPath: m_Name
192 | value: PrefabWithMissingComponent
193 | objectReference: {fileID: 0}
194 | - target: {fileID: 8876352013236570305, guid: b13396e9e094cc64ba016c91b7743682, type: 3}
195 | propertyPath: m_RootOrder
196 | value: 1
197 | objectReference: {fileID: 0}
198 | - target: {fileID: 8876352013236570305, guid: b13396e9e094cc64ba016c91b7743682, type: 3}
199 | propertyPath: m_LocalPosition.x
200 | value: 0
201 | objectReference: {fileID: 0}
202 | - target: {fileID: 8876352013236570305, guid: b13396e9e094cc64ba016c91b7743682, type: 3}
203 | propertyPath: m_LocalPosition.y
204 | value: 0
205 | objectReference: {fileID: 0}
206 | - target: {fileID: 8876352013236570305, guid: b13396e9e094cc64ba016c91b7743682, type: 3}
207 | propertyPath: m_LocalPosition.z
208 | value: 0
209 | objectReference: {fileID: 0}
210 | - target: {fileID: 8876352013236570305, guid: b13396e9e094cc64ba016c91b7743682, type: 3}
211 | propertyPath: m_LocalRotation.w
212 | value: 1
213 | objectReference: {fileID: 0}
214 | - target: {fileID: 8876352013236570305, guid: b13396e9e094cc64ba016c91b7743682, type: 3}
215 | propertyPath: m_LocalRotation.x
216 | value: 0
217 | objectReference: {fileID: 0}
218 | - target: {fileID: 8876352013236570305, guid: b13396e9e094cc64ba016c91b7743682, type: 3}
219 | propertyPath: m_LocalRotation.y
220 | value: 0
221 | objectReference: {fileID: 0}
222 | - target: {fileID: 8876352013236570305, guid: b13396e9e094cc64ba016c91b7743682, type: 3}
223 | propertyPath: m_LocalRotation.z
224 | value: 0
225 | objectReference: {fileID: 0}
226 | - target: {fileID: 8876352013236570305, guid: b13396e9e094cc64ba016c91b7743682, type: 3}
227 | propertyPath: m_LocalEulerAnglesHint.x
228 | value: 0
229 | objectReference: {fileID: 0}
230 | - target: {fileID: 8876352013236570305, guid: b13396e9e094cc64ba016c91b7743682, type: 3}
231 | propertyPath: m_LocalEulerAnglesHint.y
232 | value: 0
233 | objectReference: {fileID: 0}
234 | - target: {fileID: 8876352013236570305, guid: b13396e9e094cc64ba016c91b7743682, type: 3}
235 | propertyPath: m_LocalEulerAnglesHint.z
236 | value: 0
237 | objectReference: {fileID: 0}
238 | m_RemovedComponents: []
239 | m_SourcePrefab: {fileID: 100100000, guid: b13396e9e094cc64ba016c91b7743682, type: 3}
240 |
--------------------------------------------------------------------------------
/package/Editor/MissingComponentHelper.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.Linq;
4 | using System.Threading.Tasks;
5 | using UnityEditor;
6 | using UnityEditor.UIElements;
7 | using UnityEngine;
8 | using UnityEngine.UIElements;
9 | using Object = UnityEngine.Object;
10 |
11 | // ReSharper disable CheckNamespace
12 |
13 | namespace Needle.ComponentExtension
14 | {
15 | internal static class MissingComponentHelper
16 | {
17 | [InitializeOnLoadMethod]
18 | private static async void Init()
19 | {
20 | EditorApplication.hierarchyChanged += UpdateInspector;
21 | Selection.selectionChanged += UpdateInspector;
22 | do await Task.Delay(1000);
23 | while (EditorApplication.isCompiling || EditorApplication.isUpdating);
24 | UpdateInspector();
25 | }
26 |
27 | private const string InjectionClassName = "__needle_missingcomponent_helper";
28 |
29 | private static void UpdateInspector()
30 | {
31 | var openEditors = ActiveEditorTracker.sharedTracker.activeEditors;
32 | var inspectors = InspectorWindow.GetInspectors();
33 | foreach (var ed in openEditors)
34 | {
35 | foreach (var ins in inspectors)
36 | {
37 | ins.rootVisualElement.Query().ForEach(editorElement =>
38 | {
39 | if (editorElement.editor != ed) return;
40 | if (editorElement.ClassListContains(InjectionClassName)) return;
41 | editorElement.AddToClassList(InjectionClassName);
42 | try
43 | {
44 | OnInject(ed, editorElement);
45 | }
46 | catch (Exception e)
47 | {
48 | Debug.LogException(e);
49 | }
50 | });
51 | }
52 | }
53 | }
54 |
55 | private static GUIStyle style;
56 | private static Texture icon;
57 |
58 | private static readonly Dictionary> candidatesPerType = new Dictionary>();
59 |
60 | private static void OnInject(Editor editor, EditorElement element)
61 | {
62 | // capture script type and store it in the serialized property
63 | var serializedObject = editor.serializedObject;
64 | var prop = serializedObject.FindProperty("m_EditorClassIdentifier");
65 | if (editor.target)
66 | {
67 | if (prop != null)
68 | {
69 | var type = editor.target.GetType();
70 |
71 | var fullName = type.FullName;
72 | if (fullName == null || prop.stringValue.StartsWith(fullName))
73 | return;
74 |
75 | var identifier = type.AssemblyQualifiedName;
76 | if (identifier == null)
77 | return;
78 |
79 | identifier = string.Join(",", identifier.Split(',').Take(2));
80 | // var id = GlobalObjectId.GetGlobalObjectIdSlow(editor.target);
81 | // // Prevent serializing invalid asset guids
82 | // // see https://github.com/needle-tools/missing-component-info/issues/4
83 | // if (id.assetGUID.ToString().StartsWith("0000000000"))
84 | // {
85 | // return;
86 | // }
87 | prop.stringValue = $"{identifier}";//" $ " + id;
88 | serializedObject.ApplyModifiedProperties();
89 | EditorUtility.SetDirty(editor.target);
90 | }
91 | return;
92 | }
93 |
94 | // render missing script info
95 | if (prop != null)
96 | {
97 | if (string.IsNullOrEmpty(prop.stringValue)) return;
98 | if (style == null)
99 | {
100 | try
101 | {
102 | style = new GUIStyle(EditorStyles.helpBox);
103 | style.richText = true;
104 | }
105 | catch
106 | {
107 | // ignore - seems EditorStyles.helpBox can throw an exception in some cases
108 | style = null;
109 | return;
110 | }
111 | }
112 |
113 | if (!icon) icon = AssetDatabase.LoadAssetAtPath(AssetDatabase.GUIDToAssetPath("06824066cef43c446a81e7fc2ef35664"));
114 | var values = prop.stringValue.Split('$');
115 | var typeInfo = values[0];
116 | var message = "Missing Type: " + typeInfo;
117 | var container = new IMGUIContainer();
118 | element.Add(container);
119 |
120 | var serializedId = values.Length > 1 ? values[1] : string.Empty;
121 |
122 | var showMembers = false;
123 | var triedCollectingMembers = false;
124 | List members = default;
125 | const int offsetLeft = 16;
126 |
127 |
128 | void OnGUI()
129 | {
130 | var expanded = UnityEditorInternal.InternalEditorUtility.GetIsInspectorExpanded(editor.target);
131 | if (!expanded) return;
132 |
133 | try
134 | {
135 | // if (!prop.isValid) return;
136 | GUILayout.Space(-5);
137 | using (new GUILayout.HorizontalScope())
138 | {
139 | GUILayout.Space(offsetLeft);
140 | EditorGUILayout.LabelField(
141 | EditorGUIUtility.TrTextContentWithIcon(message, icon),
142 | style);
143 | GUILayout.Space(3);
144 | }
145 |
146 | // Since 1.6.0 we removed using Unity's GlobalObjectId because it returns a different Id depending on the context
147 | // and we most likely don't really need this feature anyways.
148 | // See https://github.com/needle-tools/missing-component-info/issues/4 for context
149 | if (Utils.CanShowProperties(editor.target) && !string.IsNullOrEmpty(serializedId))
150 | RenderSerializedProperties();
151 |
152 | GUILayout.Space(5);
153 | // using (new GUILayout.HorizontalScope())
154 | // {
155 | // GUILayout.Space(offsetLeft);
156 | // EditorGUILayout.LabelField("Experimental", EditorStyles.boldLabel);
157 | // }
158 | RenderCandidates();
159 | GUILayout.Space(8);
160 | }
161 | catch (Exception ex)
162 | {
163 | Debug.LogException(ex);
164 | container.onGUIHandler -= OnGUI;
165 | }
166 | }
167 |
168 | void RenderSerializedProperties()
169 | {
170 | using (new GUILayout.HorizontalScope())
171 | {
172 | GUILayout.Space(offsetLeft);
173 |
174 | if (triedCollectingMembers && (members == null || members.Count <= 0))
175 | {
176 | using (new EditorGUI.DisabledScope(true))
177 | EditorGUILayout.LabelField("No serialized properties found");
178 | }
179 | else
180 | showMembers = EditorGUILayout.Foldout(showMembers, "Serialized Properties");
181 | }
182 |
183 | if (showMembers)
184 | {
185 | if (!triedCollectingMembers)
186 | {
187 | triedCollectingMembers = true;
188 | Utils.CollectMembersInfo(editor.target, serializedId, serializedObject, out members);
189 | }
190 |
191 | if (members != null && members.Count > 0)
192 | {
193 | EditorGUI.indentLevel += 1;
194 | using (new EditorGUI.DisabledScope(true))
195 | {
196 | foreach (var member in members)
197 | {
198 | using (new GUILayout.HorizontalScope())
199 | {
200 | GUILayout.Space(offsetLeft);
201 | try
202 | {
203 | if (member.Property != null)
204 | EditorGUILayout.PropertyField(member.Property, true);
205 | else EditorGUILayout.LabelField(member.Name, member.Value);
206 | }
207 | catch (NullReferenceException)
208 | {
209 | // ignore
210 | EditorGUILayout.LabelField(member.Name, "Could not display");
211 | }
212 | }
213 | }
214 | }
215 | EditorGUI.indentLevel -= 1;
216 | }
217 | }
218 | }
219 |
220 |
221 | var didSearchCandidates = false;
222 | var isExpanded = new Func(() => SessionState.GetBool("ShowCandidates_" + typeInfo, false));
223 | var setExpanded = new Action(s => SessionState.SetBool("ShowCandidates_" + typeInfo, s));
224 | List candidates = default;
225 |
226 | void RenderCandidates()
227 | {
228 | try
229 | {
230 | using (new GUILayout.HorizontalScope())
231 | {
232 | GUILayout.Space(offsetLeft);
233 | var prev = isExpanded();
234 | var show = EditorGUILayout.Foldout(prev, new GUIContent("Candidates (experimental)", "When opened it attempts to find similar types in relevant assemblies"));
235 | if (prev != show)
236 | setExpanded(show);
237 | if (!show) return;
238 | }
239 |
240 | if (!didSearchCandidates)
241 | {
242 | didSearchCandidates = true;
243 |
244 | if (!candidatesPerType.TryGetValue(typeInfo, out candidates))
245 | {
246 | try
247 | {
248 | Utils.TryFindCandidatesInAssembly(typeInfo, out candidates);
249 | candidatesPerType.Add(typeInfo, candidates);
250 | }
251 | catch (Exception ex)
252 | {
253 | Debug.LogError("Error finding candidates for missing script. Please report here: https://github.com/needle-tools/missing-component-info/issues");
254 | Debug.LogException(ex);
255 | candidatesPerType.Add(typeInfo, null);
256 | }
257 | }
258 | }
259 |
260 | if (candidates != null && candidates.Count > 0)
261 | {
262 | EditorGUI.indentLevel += 1;
263 | foreach (var c in candidates)
264 | {
265 | using (new GUILayout.HorizontalScope())
266 | {
267 | GUILayout.Space(offsetLeft);
268 | // using (new GUIColorScope(Color.Lerp(Color.white, Color.gray, c.Distance01 * .3f)))
269 | EditorGUILayout.ObjectField(new GUIContent(c.Type.Name, "Distance: " + c.Distance + "\nFullName: " + c.Type.FullName +"\nFilePath: " + c.FilePath), c.Asset, typeof(Object), false);
270 | }
271 | }
272 | EditorGUI.indentLevel -= 1;
273 | }
274 | else
275 | {
276 | using (new GUILayout.HorizontalScope())
277 | {
278 | GUILayout.Space(offsetLeft);
279 | EditorGUI.indentLevel += 1;
280 | using (new EditorGUI.DisabledScope(true))
281 | EditorGUILayout.LabelField("None found");
282 | EditorGUI.indentLevel -= 1;
283 | }
284 | }
285 | }
286 | catch (ExitGUIException)
287 | {
288 | }
289 | }
290 |
291 | container.onGUIHandler += OnGUI;
292 | }
293 | }
294 | }
295 | }
--------------------------------------------------------------------------------
/package/Editor/Utils.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.IO;
4 | using System.Linq;
5 | using System.Reflection;
6 | using UnityEditor;
7 | using UnityEditor.TestTools.TestRunner.UnityTestProtocol;
8 | using UnityEngine;
9 | using UnityEngine.SceneManagement;
10 | using Object = UnityEngine.Object;
11 | #if UNITY_2021_3_OR_NEWER || UNITY_2022_1_OR_NEWER
12 | using UnityEditor.SceneManagement; // PrefabStageUtility
13 | #else
14 | using UnityEditor.Experimental.SceneManagement; // PrefabStageUtility
15 | #endif
16 |
17 | // ReSharper disable CheckNamespace
18 |
19 | namespace Needle.ComponentExtension
20 | {
21 | internal class MemberInfo
22 | {
23 | public string Name;
24 | public string Value;
25 | public SerializedProperty Property;
26 | }
27 |
28 | internal class ScriptCandidate
29 | {
30 | public Type Type;
31 | public string FilePath;
32 | public Object Asset;
33 | public float Distance;
34 | public float Distance01;
35 | }
36 |
37 | public static class Utils
38 | {
39 | internal static void CollectMembersInfo(Object obj, string identifier, SerializedObject serializedObject, out List members)
40 | {
41 | members = null;
42 | if (string.IsNullOrEmpty(identifier)) return;
43 | string path = null;
44 | string[] lines = null;
45 | if (IsInPrefabState(out path))
46 | {
47 | }
48 | else
49 | {
50 | if (PrefabUtility.IsPartOfPrefabInstance(obj)) return;
51 | var scene = SceneManager.GetActiveScene();
52 | path = scene.path;
53 | }
54 |
55 | if (path != null)
56 | lines = File.ReadAllLines(path);
57 |
58 | if (lines?.Length > 0)
59 | {
60 | // TODO: this is the naive version, a component could be multiple times on an object and we also need to check for the gameobject id first and find the correct component etc
61 | var foundStart = false;
62 | foreach (var line in lines)
63 | {
64 | if (foundStart && line.StartsWith("---")) break;
65 | if (foundStart)
66 | {
67 | if (!line.Contains(":")) continue;
68 | members ??= new List();
69 | var member = new MemberInfo();
70 | members.Add(member);
71 | var values = line.Split(':');
72 | member.Name = values[0].Trim();
73 | member.Value = values[1].Trim();
74 | member.Property = serializedObject.FindProperty(member.Name);
75 | }
76 | else if (line.Contains(identifier))
77 | {
78 | foundStart = true;
79 | }
80 | }
81 | }
82 | }
83 |
84 | internal static bool CanShowProperties(Object obj)
85 | {
86 | if (obj != null && !obj) return false;
87 | var isInPrefab = IsInPrefabState(out _);
88 | return isInPrefab || !PrefabUtility.IsPartOfPrefabInstance(obj);
89 | }
90 |
91 | private static bool IsInPrefabState(out string path)
92 | {
93 | path = null;
94 | var stage = PrefabStageUtility.GetCurrentPrefabStage();
95 | if (stage) path = stage.assetPath;
96 | return stage;
97 | }
98 |
99 | private static readonly Dictionary types = new Dictionary();
100 |
101 | internal static void TryFindCandidatesInAssembly(string typeInfo, out List candidates)
102 | {
103 | candidates = null;
104 | var parts = typeInfo.Split(',');
105 | if (parts.Length < 2) return;
106 | var assemblyName = parts[1].Trim();
107 | // Debug.Log("---SEARCH:" + assemblyName);
108 | if (string.IsNullOrWhiteSpace(assemblyName)) return;
109 | var assembly = AppDomain.CurrentDomain.GetAssemblies();
110 | var searchStart = DateTime.Now;
111 | var scriptName = parts.FirstOrDefault()?.Trim();
112 | if (string.IsNullOrWhiteSpace(scriptName)) return;
113 | var factor = (float)scriptName.Length;
114 | foreach (var asm in assembly)
115 | {
116 | var asmName = asm.GetName().Name;
117 | if (asmName.StartsWith("System") || asmName.StartsWith("mscorlib") || asmName.StartsWith("Bee") || asmName.StartsWith("netstandard") || asmName.StartsWith("nunit") || asmName.Contains("UnityEditor") || asmName == "log4net" || asmName.Contains("Unity.Cecil") || asmName == "unityplastic" || asmName.Contains("Unity.VisualScripting") || asmName.Contains("UnityEngine.UI") || asmName.EndsWith(".Editor") || asmName.Contains("UnityEngine.TestRunner") || asmName.StartsWith("UnityEngine.CoreModule") || asmName.StartsWith("UnityEngine.IMGUI"))
118 | continue;
119 | var checkAssembly = string.Equals(asmName, assemblyName, StringComparison.CurrentCultureIgnoreCase);
120 | if (!checkAssembly)
121 | {
122 | if ((DateTime.Now - searchStart).TotalSeconds < 3f)
123 | {
124 | var assemblyNameDist = ComputeLevenshteinDistance(asmName, assemblyName);
125 | if (assemblyNameDist < 50)
126 | {
127 | checkAssembly = true;
128 | }
129 | }
130 | }
131 | if (checkAssembly)
132 | {
133 | if (!types.TryGetValue(asm, out var typesList))
134 | {
135 | try
136 | {
137 | typesList = asm.GetExportedTypes();
138 | types.Add(asm, typesList);
139 | }
140 | catch (NotSupportedException)
141 | {
142 | // ignore
143 | }
144 | }
145 | if (typesList == null) continue;
146 | foreach (var t in typesList)
147 | {
148 | var dist = ComputeLevenshteinDistance(scriptName, t.Name);// / factor;
149 | const float maxDist = 10;// .666f;
150 | // Debug.Log(t.Name + ": " + dist + " to " + scriptName);
151 | if (dist < maxDist)
152 | {
153 | var assets = AssetDatabase.FindAssets(t.Name);
154 | var expectedPath = "/" + t.Name + ".cs";
155 | foreach (var r in assets)
156 | {
157 | var path = AssetDatabase.GUIDToAssetPath(r);
158 | if (path.EndsWith(expectedPath))
159 | {
160 | // Debug.Log(asmName + ": " + t);
161 | candidates ??= new List();
162 | var cand = new ScriptCandidate();
163 | candidates.Add(cand);
164 | cand.Asset = AssetDatabase.LoadAssetAtPath