Пример #1
0
    static void exportScene()
    {
        var scene = SceneManager.GetActiveScene();

        if (null != scene)
        {
            SerializeObject.ExportScene(scene);
        }


        /*
         *
         *
         * var list = scene.GetRootGameObjects();
         *
         * PrefabData prefabData = new PrefabData(null);
         * prefabData.matrix = Export.Matrix4x4ToBytes(new Matrix4x4());
         * prefabData.name = "scene";
         * List<PrefabData> prefabs = new List<PrefabData>();
         *
         * foreach (var item in list)
         * {
         *
         *  if(item.tag == "MainCamera"){
         *      //todo Camera Setting
         *  }
         *
         *
         *
         *  var prefabType=PrefabUtility.GetPrefabAssetType(item);
         *  if(prefabType!=PrefabAssetType.NotAPrefab){
         *
         *
         *
         *      PrefabData data = createPrefabData(item);
         *      if(null != data){
         *          prefabs.Add(data);
         *      }
         *
         *
         *
         *
         *      var len= item.transform.childCount;
         *      Debug.Log("item length:" + len);
         *
         * // for (int i = 0; i < len; i++)
         * // {
         * //    var child= item.transform.GetChild(i);
         *
         *
         * //             if(prefabType==PrefabAssetType.NotAPrefab){
         *
         * //             }else{
         *
         * // PrefabUtility.GetPrefabParent()
         *
         * //             }
         * //     child.name;
         * //     child.refName;
         * //     child.transform;
         *
         * // }
         *  }
         *
         *
         *  // exportMesh(item);
         *
         *  // var render = item.GetComponentInChildren<MeshRenderer>();
         *  // if (render)
         *  // {
         *  //     EditorGUILayout.ObjectField(render.gameObject, typeof(MeshRenderer), false);
         *  //     mesh = render.GetComponent<MeshFilter>().mesh;
         *  // }
         *  // else
         *  // {
         *  //     var skinRender = item.GetComponentInChildren<SkinnedMeshRenderer>();
         *
         *  //     if (skinRender)
         *  //     {
         *  //         EditorGUILayout.ObjectField(skinRender.gameObject, typeof(SkinnedMeshRenderer), false);
         *  //         mesh=skinRender.sharedMesh;
         *  //             //skinRender.bones;
         *  //     }
         *  // }
         *
         *
         *  // if(mesh){
         *  //     exportMesh(mesh);
         *  // }
         *
         * }
         *
         * prefabData.childrens = prefabs.ToArray();
         *
         */
    }