文档

Unity Engine

Unity Engine

Scene

Use this API to perform searches in the Scene. Engines for this type of search implement the ISceneSearchEngineV2 interface.
阅读时间1 分钟最后更新于 1 个月前

Definition

警告
Removed. Scene has been deprecated. Use SceneSearch instead
Upgrade to SceneSearch
public static class Scene

Remarks

Registered Scene engines are called during searches in the Scene hierarchy. When the default object selector is used, they are also called for GameObject searches.
The following example creates a Scene engine:
using System;using System.Collections.Generic;using System.Linq;using UnityEditor;using UnityEditor.SearchService;using UnityEngine;using Object = UnityEngine.Object;[SceneSearchEngine]class TestSceneFilterEngine : ISceneSearchEngineV2{ public string name => "My Custom Engine"; public void BeginSession(ISearchContext context) { } public void EndSession(ISearchContext context) { } public void BeginSearch(ISearchContext context, string query) { } public void EndSearch(ISearchContext context) { } public bool Filter(ISearchContext context, string query, HierarchyIterator objectToFilter) { var entityId = objectToFilter.entityId; var obj = Object.FindObjectsOfType<GameObject>().FirstOrDefault(o => o.GetEntityId() == entityId); return obj != null && obj.name.IndexOf(query, StringComparison.InvariantCultureIgnoreCase) >= 0; }}

Static Fields

Value

Description

EngineScopeA enum that indicates the search scope for Scene engines. It is used by SceneSearchContext.

Static Methods

Method

Description

RegisterEngineRegisters a Scene search engine dynamically.
UnregisterEngineUnregisters a dynamically registered engine.