From 49b25e755b70ec412feaaf0b898d6f7e09d2bea6 Mon Sep 17 00:00:00 2001 From: chai Date: Tue, 28 Jun 2022 09:40:37 +0800 Subject: +node example --- .../Nodes/OperatorNodes/CurveNode.cs | 32 ++++++++++++++++++++ .../Nodes/OperatorNodes/CurveNode.cs.meta | 12 ++++++++ .../Nodes/OperatorNodes/SelectNode.cs | 34 ++++++++++++++++++++++ .../Nodes/OperatorNodes/SelectNode.cs.meta | 12 ++++++++ 4 files changed, 90 insertions(+) create mode 100644 Other/NodeEditorExamples/Assets/Examples/LibNoiseEditor/Nodes/OperatorNodes/CurveNode.cs create mode 100644 Other/NodeEditorExamples/Assets/Examples/LibNoiseEditor/Nodes/OperatorNodes/CurveNode.cs.meta create mode 100644 Other/NodeEditorExamples/Assets/Examples/LibNoiseEditor/Nodes/OperatorNodes/SelectNode.cs create mode 100644 Other/NodeEditorExamples/Assets/Examples/LibNoiseEditor/Nodes/OperatorNodes/SelectNode.cs.meta (limited to 'Other/NodeEditorExamples/Assets/Examples/LibNoiseEditor/Nodes/OperatorNodes') diff --git a/Other/NodeEditorExamples/Assets/Examples/LibNoiseEditor/Nodes/OperatorNodes/CurveNode.cs b/Other/NodeEditorExamples/Assets/Examples/LibNoiseEditor/Nodes/OperatorNodes/CurveNode.cs new file mode 100644 index 00000000..7babc539 --- /dev/null +++ b/Other/NodeEditorExamples/Assets/Examples/LibNoiseEditor/Nodes/OperatorNodes/CurveNode.cs @@ -0,0 +1,32 @@ + +using UnityEngine; +using UnityEditor; +using UNEB; + +public class CurveNode : Node +{ + private AnimationCurve _curve = new AnimationCurve(); + private readonly Rect kCurveRange = new Rect(-1, -1, 2, 2); + + private const float kBodyHeight = 100f; + + public override void Init() + { + var input = AddInput(); + input.name = "Input"; + + var output = AddOutput(); + output.name = "Output"; + + FitKnobs(); + + bodyRect.height += kBodyHeight; + bodyRect.width = 150f; + } + + public override void OnBodyGUI() + { + float boxHeight = kBodyHeight - kHeaderHeight; + _curve = EditorGUILayout.CurveField(_curve, Color.cyan, kCurveRange, GUILayout.Height(boxHeight), GUILayout.ExpandWidth(true)); + } +} diff --git a/Other/NodeEditorExamples/Assets/Examples/LibNoiseEditor/Nodes/OperatorNodes/CurveNode.cs.meta b/Other/NodeEditorExamples/Assets/Examples/LibNoiseEditor/Nodes/OperatorNodes/CurveNode.cs.meta new file mode 100644 index 00000000..e797acc3 --- /dev/null +++ b/Other/NodeEditorExamples/Assets/Examples/LibNoiseEditor/Nodes/OperatorNodes/CurveNode.cs.meta @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: ed443b489ef3d2345a35685cf3a9e1e5 +timeCreated: 1502703666 +licenseType: Free +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Other/NodeEditorExamples/Assets/Examples/LibNoiseEditor/Nodes/OperatorNodes/SelectNode.cs b/Other/NodeEditorExamples/Assets/Examples/LibNoiseEditor/Nodes/OperatorNodes/SelectNode.cs new file mode 100644 index 00000000..8e568bf6 --- /dev/null +++ b/Other/NodeEditorExamples/Assets/Examples/LibNoiseEditor/Nodes/OperatorNodes/SelectNode.cs @@ -0,0 +1,34 @@ +using LibNoise.Operator; + +using UnityEngine; +using UnityEditor; +using UNEB; + +public class SelectNode : Node +{ + private Select _op = new Select(); + + public override void Init() + { + var inputA = AddInput(); + inputA.name = "Input A"; + + var inputB = AddInput(); + inputB.name = "Input B"; + + var output = AddOutput(); + output.name = "Output"; + + FitKnobs(); + + bodyRect.height += 60f; + bodyRect.width = 150f; + } + + public override void OnBodyGUI() + { + _op.FallOff = EditorGUILayout.DoubleField("Fall Off", _op.FallOff); + _op.Minimum = EditorGUILayout.DoubleField("Min Bound", _op.Minimum); + _op.Maximum = EditorGUILayout.DoubleField("Max Bound", _op.Maximum); + } +} diff --git a/Other/NodeEditorExamples/Assets/Examples/LibNoiseEditor/Nodes/OperatorNodes/SelectNode.cs.meta b/Other/NodeEditorExamples/Assets/Examples/LibNoiseEditor/Nodes/OperatorNodes/SelectNode.cs.meta new file mode 100644 index 00000000..8b89c28c --- /dev/null +++ b/Other/NodeEditorExamples/Assets/Examples/LibNoiseEditor/Nodes/OperatorNodes/SelectNode.cs.meta @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: 2ff619b535e53e74a94aa5c56dfc462b +timeCreated: 1502702570 +licenseType: Free +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: -- cgit v1.1-26-g67d0