Вбиваем текст, нажимаем кнопку "Search" - получаем список ГО (не забудьте развернуть вкладку), который можно жмякать и таким образом пинговать объекты в сцене.
Немного неудобно тем, что нужно разворачивать список ГО вручную (если он не открыт) и не работает кнопка Enter .
А так вполне замечательно!
- Код: Выделить всё
///###############################################################
/// Scene Asset Search Wizard
///###############################################################
/// Author: gnoblin (gnoblin@gmail.com)
/// Special thanks to: neodrop
///###############################################################
#pragma warning disable
using UnityEditor;
using UnityEngine;
using System.IO;
//using System.Collections;
using System.Collections.Generic;
class SearchScene : ScriptableWizard
{
public string text_to_search = "";
[MenuItem("Custom/Search Scene &s")]
static void CreateWizard()
{
ScriptableWizard.DisplayWizard("Search Assets", typeof(SearchScene),
"Ok","Search");
}
void OnWizardCreate()
{
}
void OnWizardUpdate()
{
helpString = "Please set the search text!";
}
static string path;
static DirectoryInfo dir;
static FileInfo[] file_info;
Object[] tmp_gos;
/// <summary>
/// искать еще что-то кроме ГО?
/// </summary>
public List<GameObject> found_list;
void Search()
{
GameObject[] scene_gos = GameObject.FindSceneObjectsOfType(typeof(GameObject)) as GameObject[];
found_list = new List<GameObject>();
foreach (GameObject go in scene_gos)
{
if (go.name.ToLower().Contains(text_to_search.ToLower()))
{
found_list.Add(go);
Debug.Log("searching scene... found: " + go.name);
}
}
Debug.Log("Search complete.");
}
void OnWizardOtherButton()
{
Search();
}
}