예제 #1
0
    void OnWizardCreate()
    {
        if (obj == null)
        {
            EditorUtility.DisplayDialog("错误警告", "必须拖入物体", "OK");

            return;
        }

        Mesh       resultMesh;
        GameObject resultObj;
        Material   resultMaterial;

        GameObjectTools.MeshAddOutline(obj, lightningTexture, outline, out resultMesh, out resultObj, out resultMaterial, fixNormals);

        string path = EditorUtility.SaveFilePanelInProject("保存文件", "", "prefab", "aaaa");

        int    start    = path.LastIndexOf("/");
        int    end      = path.LastIndexOf(".");
        string saveName = path.Substring(start + 1, end - start - 1);

        string qian = path.Substring(0, start + 1);

        AssetDatabase.CreateAsset(resultMesh, qian + saveName + "_mesh.asset");

        AssetDatabase.CreateAsset(resultMaterial, qian + saveName + "_mat.mat");

        PrefabUtility.CreatePrefab(qian + saveName + ".prefab", resultObj);

        AssetBundleTools.SetAssetBundleName(qian + saveName + ".prefab", saveName);

        GameObject.DestroyImmediate(resultObj);
    }