public static void registerSample(PersistentSample3D sample)
 {
     if (repository.ContainsKey(sample.getName()))
     {
         return;
     }
     repository.Add(sample.getName(), sample.getSample());
 }
 public static void registerSample(string key, PersistentSample3D sample)
 {
     if (repository.ContainsKey(key))
     {
         return;
     }
     repository.Add(key, sample.getSample());
 }
    void OnGUI()
    {
        name = EditorGUILayout.TextField ("Asset Name: ", name);
        scale = EditorGUILayout.Vector3Field ("Scale", scale);
        weight = EditorGUILayout.FloatField ("Weight", weight);
        saturation = EditorGUILayout.ObjectField ("Saturation:", saturation, typeof(Saturation), false) as Saturation;
        sample = EditorGUILayout.ObjectField ("Sample3D:", sample, typeof(PersistentSample3D), false) as PersistentSample3D;

        EditorGUILayout.BeginHorizontal ();
        {
            if (GUILayout.Button ("Accept")) {
                createNoiseAsset();
                this.Close ();
                EditorUtility.DisplayDialog ("Alert",  "Prefab "+name+".prefab has been created successfully.", "Accept");
            }
            if (GUILayout.Button ("Cancel")) {
                cancel();
            }
        }
    }
    private void createPerlinPrefab()
    {
        /*GameObject instance = getGameObject ();
        *  Object prefab = EditorUtility.CreateEmptyPrefab("Assets/Resources/Prefab/Sample3D/"+name+".prefab");
        *  EditorUtility.ReplacePrefab(instance, prefab, ReplacePrefabOptions.ConnectToPrefab);
        *  GameObject.DestroyImmediate (instance);*/

        PersistentSample3D sample3D = ScriptableObject.CreateInstance <PersistentSample3D>();

        sample3D.setSample(NoiseGenerator.Perlin(octave));
        sample3D.setName(name);
        checkPath();
        AssetDatabase.CreateAsset(sample3D, "Assets/ProcedureTerrain/Sample3D/" + name + ".asset");

        EditorUtility.SetDirty(sample3D);

        AssetDatabase.SaveAssets();

        /*EditorUtility.FocusProjectWindow ();
         * Selection.activeObject = asset;*/
    }
    void OnGUI()
    {
        name       = EditorGUILayout.TextField("Asset Name: ", name);
        scale      = EditorGUILayout.Vector3Field("Scale", scale);
        weight     = EditorGUILayout.FloatField("Weight", weight);
        saturation = EditorGUILayout.ObjectField("Saturation:", saturation, typeof(Saturation), false) as Saturation;
        sample     = EditorGUILayout.ObjectField("Sample3D:", sample, typeof(PersistentSample3D), false) as PersistentSample3D;

        EditorGUILayout.BeginHorizontal();
        {
            if (GUILayout.Button("Accept"))
            {
                createNoiseAsset();
                this.Close();
                EditorUtility.DisplayDialog("Alert", "Prefab " + name + ".prefab has been created successfully.", "Accept");
            }
            if (GUILayout.Button("Cancel"))
            {
                cancel();
            }
        }
    }
 public void setPersistentSample(PersistentSample3D sample)
 {
     this.sample = sample;
 }
 public static void registerSample(string key, PersistentSample3D sample)
 {
     if (repository.ContainsKey (key))
         return;
     repository.Add (key, sample.getSample());
 }
 public static void registerSample(PersistentSample3D sample)
 {
     if (repository.ContainsKey (sample.getName ()))
         return;
     repository.Add (sample.getName(), sample.getSample());
 }