获取预制和获取gameObject

using UnityEngine;

using System.Collections;

using System.Collections.Generic;

using UnityEditor;



public class selectionFn : ScriptableObject {



    [MenuItem("Learn/selection")]

    static void _selection()

    {

        //获取预制的方法

        ArrayList getPrefabs = new ArrayList();

        Object[] objs = Selection.GetFiltered(typeof(Object),SelectionMode.DeepAssets);



        foreach(Object c in objs)

        {

            string _Path =  AssetDatabase.GetAssetPath(c);

            if(_Path.Contains(".prefab"))

            {

                getPrefabs.Add(c);

                //Debug.Log(_Path);

            }

        }

        //Debug.Log(getPrefabs.Count.ToString());



        //2写的获取project里资产的方法

        Object[] _objs = Selection.GetFiltered(typeof(UnityEngine.Object), SelectionMode.Assets | SelectionMode.DeepAssets);

        foreach(var obj in _objs)

        {

            if (obj is GameObject)

            {

                GameObject go = obj as GameObject;

                Debug.Log("Asset:" + go.name);

            }

        }

    }

}

 

你可能感兴趣的:(object)