mirror of
https://github.com/Xevion/procedural-placement.git
synced 2025-12-06 01:15:56 -06:00
begin work on new sampling methods editor allowing better control over point generation
This commit is contained in:
@@ -1,9 +1,6 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Net;
|
||||
using UnityEditor;
|
||||
using UnityEngine;
|
||||
using UnityEngine.Serialization;
|
||||
|
||||
public enum SamplingTypes {
|
||||
Random,
|
||||
|
||||
28
procedural-placement/Assets/SamplingEditor.cs
Normal file
28
procedural-placement/Assets/SamplingEditor.cs
Normal file
@@ -0,0 +1,28 @@
|
||||
using System.Collections;
|
||||
using System.Collections.Generic;
|
||||
using UnityEditor;
|
||||
using UnityEngine;
|
||||
|
||||
[CustomEditor(typeof(PointRendering))]
|
||||
public class SamplingEditor : Editor
|
||||
{
|
||||
public override void OnInspectorGUI()
|
||||
{
|
||||
// The Point Rendering Editor must allow simple and easy adjustments of the points
|
||||
// allowing complete control over when and how points are generated.
|
||||
// - Point Generation can be turned off and be done manually (or automatically, when changes are detected)
|
||||
// - Sampling Methods can change, and different fields will be visible depending on the active sampling method.
|
||||
// - 'Random' requires no 'Radius' or 'Retry Attempts' field
|
||||
// - 'Poisson' and 'Improved Poisson' require no 'Num Points' field (but they should have a text area)
|
||||
// - A 'seed' field should be given, a checkbox for seed auto re-picking (edits of other fields can cause said seed to be randomized,
|
||||
// allowing one to observe the effect of different sampling methods or arguments with the same seed being used.)
|
||||
// - A simple text field showing how many points were generated and how long it took to do so.
|
||||
// - Limits for negative values
|
||||
// - Safeguards for dangerous/laggy values, possibly?
|
||||
|
||||
PointRendering pr = (PointRendering) target;
|
||||
DrawDefaultInspector();
|
||||
|
||||
EditorGUILayout.HelpBox("This is a help box", MessageType.Info);
|
||||
}
|
||||
}
|
||||
11
procedural-placement/Assets/SamplingEditor.cs.meta
Normal file
11
procedural-placement/Assets/SamplingEditor.cs.meta
Normal file
@@ -0,0 +1,11 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 3f824584e6118704c99fc0c09497f661
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -149,12 +149,12 @@ MonoBehaviour:
|
||||
m_Script: {fileID: 11500000, guid: 95149e3ad64fa7149affeaeb9f8e273b, type: 3}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
samplingMethod: 1
|
||||
numPoints: 23
|
||||
sphereSize: 4.3
|
||||
regionSize: {x: 1945, y: 1000}
|
||||
radius: 266.86
|
||||
retryAttempts: 1503
|
||||
samplingMethod: 2
|
||||
numPoints: 14878
|
||||
sphereSize: 0.4
|
||||
regionSize: {x: 194, y: 100}
|
||||
radius: 1
|
||||
retryAttempts: 10
|
||||
drawSphere: 0
|
||||
--- !u!4 &2048189740
|
||||
Transform:
|
||||
|
||||
Reference in New Issue
Block a user