public void GenerateNoiseMap() { float[,] noiseMap = Noise.GenerateNoiseMap(chunkSize, chunkSize, noiseScale, octaves, persistance, lacunarity, seed, offset); NoisePreview noisePreview = FindObjectOfType <NoisePreview>(); noisePreview.DrawNoiseMap(noiseMap); }
protected override bool DrawWizardGUI() { EditorGUILayout.HelpBox("IMPORTANT: Make sure the texture is marked as readable and not a normal map (hack for now) in the import settings", MessageType.Warning); displayPreviews = EditorGUILayout.Foldout(displayPreviews, "Display Previews"); if (displayPreviews) { var lastRect = GUILayoutUtility.GetLastRect(); Rect preview1 = new Rect(new Vector2(previewSize / 8f - 5f, lastRect.yMax + 20), new Vector2(previewSize, previewSize)); Rect preview2 = new Rect(new Vector2(previewSize + previewSize / 8f + 5f, lastRect.yMax + 20), new Vector2(previewSize, previewSize)); NoisePreview.DrawTexture(editSettings.editedTexture, preview1, previewSize); NoisePreview.DrawTexture(normalToEdit, preview2, previewSize); GUILayout.Space(previewSize + 25f); } return(base.DrawWizardGUI()); }
public override void OnInspectorGUI() { DrawDefaultInspector(); var script = target as NoiseSettings; EditorGUILayout.Space(); DisplayPreview = EditorGUILayout.Foldout(DisplayPreview, "Preview Noise Result"); if (DisplayPreview) { if (!gridInitialized) { previewSeed = GetCurrentSeed(); UpdateCheck(script); gridInitialized = true; EditorCoroutine.StartEditorCoroutine(CheckForUpdates(script)); } var lastRect = GUILayoutUtility.GetLastRect(); float previewPixelSize = (float)previewSize * previewScale; previewWindowRect = new Rect(new Vector2(lastRect.center.x - previewPixelSize / 2f, lastRect.yMin + 20), new Vector2(previewPixelSize, previewPixelSize)); float previewOutputRange = 0f; if (script.passOperationType == NoiseSettings.PassOperation.ADD) { previewOutputRange = script.outputCurve.maxOutputValue - script.outputCurve.minOutputValue; } else if (script.passOperationType == NoiseSettings.PassOperation.MULTIPLY) { previewOutputRange = 1f; } NoisePreview.DrawNoise(script.debugPreviewGrid, previewWindowRect, previewOutputRange); GUILayout.Space(previewPixelSize + 5f); EditorGUI.indentLevel++; previewSeed = EditorGUILayout.IntField("Preview Seed: ", previewSeed); EditorGUILayout.BeginHorizontal(); if (GUILayout.Button("Get Current Seed")) { previewSeed = GetCurrentSeed(); GeneratePreview(script); } if (GUILayout.Button("Randomize Seed")) { previewSeed = CustomMathf.GetRandomSeed(); GeneratePreview(script); } EditorGUILayout.EndHorizontal(); EditorGUI.indentLevel--; } EditorGUILayout.Space(); EditorGUILayout.Space(); EditorGUILayout.Space(); if (GUILayout.Button("--- Generate Terrain ---")) { GameObject.FindObjectOfType <TerrainGenerator>().GenerateMesh(); } }