728x90
반응형
using System.Collections;
using System.Collections.Generic;
using UnityEditor;
using UnityEngine;
public static class ClearNullScript
{
#if UNITY_EDITOR
[MenuItem("CleanUp/Remove Missing Scripts Recursively Visit Prefabs")]
private static void FindAndRemoveMissingInSelected()
{
var deepSelection = EditorUtility.CollectDeepHierarchy(Selection.gameObjects);
int compCount = 0;
int goCount = 0;
foreach (var o in deepSelection)
{
if (o is GameObject go)
{
int count = GameObjectUtility.GetMonoBehavioursWithMissingScriptCount(go);
if (count > 0)
{
// Edit: use undo record object, since undo destroy wont work with missing
Undo.RegisterCompleteObjectUndo(go, "Remove missing scripts");
GameObjectUtility.RemoveMonoBehavioursWithMissingScript(go);
compCount += count;
goCount++;
}
}
}
}
#endif
}
스크립트 생성 후 위의 코드를 붙여준 후에 원하는 씬 혹은 프리팹을 열어주고 타겟들을 모두 선택해주세요
그리고 unity menu창(프로그램 상단)을 보시면 CleanUp이 있습니다
실행해 주면 끝 일일히 확인해가며 안지워도 오케이..?
728x90
반응형
'Unity' 카테고리의 다른 글
[Unity] 펌_ Addressable #2 (0) | 2020.12.15 |
---|---|
[Unity] 펌_ Addressable#1 (0) | 2020.12.15 |
[Unity] 현실 시간에 기반한 타이머 만들기 (0) | 2020.11.18 |
[Univr] Collaborate에서 문제가 생긴다면 우선적으로 먼저 해볼 일 (0) | 2020.10.22 |
[Unity] AR Foundation 의 물건 배치 (4) | 2020.10.19 |