Version: 2021.1

TypeCache

class in UnityEditor

切换到手册

描述

提供从加载到 Unity 域的程序集中进行快速类型提取的方法。

使用 TypeCache 可访问属性和派生的类型信息。此缓存允许从原生缓存数据中利用任意编辑器代码。

常见用例是在构建或扩展 Unity 编辑器时提取用特定属性标记的类型或用于扩展或实现特定类型的类。 在当前域中迭代类型的操作通常很慢,速度与类型数成线性关系。

为加速类型提取,编辑器在原生侧构建一个加速表,其中包含有关类型属性和派生类的信息。

using UnityEditor;
using System;
using System.Collections.Generic;
using System.Linq;

public class VolumeComponent {}

public class Example { static List<Type> s_VolumeComponents; static Example() { s_VolumeComponents = TypeCache.GetTypesDerivedFrom<VolumeComponent>().ToList(); } }

静态函数

GetFieldsWithAttributeRetrieves a collection of fields marked with the T attribute.
GetMethodsWithAttribute获取用 T 属性标记的方法的集合。
GetTypesDerivedFrom获取从 T 类型派生的类型的集合。
GetTypesWithAttribute获取用 T 属性标记的类型的集合。
Copyright © 2023 Unity Technologies
优美缔软件(上海)有限公司 版权所有
"Unity"、Unity 徽标及其他 Unity 商标是 Unity Technologies 或其附属机构在美国及其他地区的商标或注册商标。其他名称或品牌是其各自所有者的商标。
公安部备案号:
31010902002961