本文整理汇总了C#中UnityEngine.Object.Union方法的典型用法代码示例。如果您正苦于以下问题:C# Object.Union方法的具体用法?C# Object.Union怎么用?C# Object.Union使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类UnityEngine.Object
的用法示例。
在下文中一共展示了Object.Union方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: DrawSearch
private void DrawSearch()
{
IncludeValues = EditorGUILayout.Toggle("Include Values", IncludeValues);
IncludeTypes = EditorGUILayout.Toggle("Include Types", IncludeTypes);
AllObjects = EditorGUILayout.Toggle("All Objects", AllObjects);
search = EditorGUILayout.TextField("search", search);
EditorGUIUtility.LookLikeInspector();
var ago = Selection.activeGameObject;
var ao = Selection.activeObject;
if (search.Length > 2 && types.Contains(ao.GetType()) && !(ago != null && ago.camera != null))
{
IEnumerable<Object> array = new Object[] { ao };
if (ago != null)
{
array = array.Union(ago.GetComponents<Component>());
if (ago.renderer != null)
array = array.Union(new[] { ago.renderer.sharedMaterial });
}
foreach (Object m in array)
{
ForeachComponents(m);
}
}
}
示例2: DrawSearch
private void DrawSearch()
{
search = EditorGUILayout.TextField("search", search);
EditorGUIUtility.LookLikeInspector();
var ago = Selection.activeGameObject;
var ao = Selection.activeObject;
if (search.Length > 0 && types.Contains(ao.GetType()) && ao != null && !(ago != null && ago.camera != null))
{
IEnumerable<Object> array = new Object[] { ao };
if (ago != null)
{
array = array.Union(ago.GetComponents<Component>());
if (ago.renderer != null)
array = array.Union(new[] { ago.renderer.sharedMaterial });
}
foreach (var m in array)
{
SerializedObject so = new SerializedObject(m);
SerializedProperty pr = so.GetIterator();
pr.NextVisible(true);
do
{
if (pr.propertyPath.ToLower().Contains(search.ToLower())
|| (pr.propertyType == SerializedPropertyType.String && pr.stringValue.ToLower().Contains(search.ToLower()))
|| (pr.propertyType == SerializedPropertyType.Enum && pr.enumNames.Length >= 0 && pr.enumNames[pr.enumValueIndex].ToLower().Contains(search.ToLower()))
&& pr.editable)
EditorGUILayout.PropertyField(pr);
if (so.ApplyModifiedProperties())
{
//Debug.Log(pr.name);
SetMultiSelect(m, pr);
}
}
while (pr.NextVisible(true));
}
}
}