From 1a4daf3fa6e6a7178fe42bcaa247ce434baf6881 Mon Sep 17 00:00:00 2001 From: yum Date: Tue, 6 Jan 2026 16:30:28 -0800 Subject: Fold: drop NodeGraphProcessor --- Scripts/Fold/Editor/FoldGraph.cs | 152 ++++++++++++++++++++++++++++++++++++++- 1 file changed, 149 insertions(+), 3 deletions(-) (limited to 'Scripts/Fold/Editor/FoldGraph.cs') diff --git a/Scripts/Fold/Editor/FoldGraph.cs b/Scripts/Fold/Editor/FoldGraph.cs index f1fc290..ca985f4 100644 --- a/Scripts/Fold/Editor/FoldGraph.cs +++ b/Scripts/Fold/Editor/FoldGraph.cs @@ -1,5 +1,151 @@ +using System; +using System.Collections.Generic; using UnityEngine; -using GraphProcessor; -[System.Serializable] -public class FoldGraph : BaseGraph {} +[Serializable] +public class FoldEdge +{ + public string outputNodeGuid; + public string outputPortName; + public string inputNodeGuid; + public string inputPortName; +} + +[Serializable] +public abstract class FoldNodeData +{ + public string guid = Guid.NewGuid().ToString(); + public Vector2 position; + public virtual string Title => GetType().Name; +} + +[Serializable] +public abstract class FoldOperationData : FoldNodeData +{ + public abstract FoldNodeSerialized Serialize(FoldGraphView graphView); +} + +[Serializable] +public class FloatValueNodeData : FoldNodeData +{ + public float value; + public override string Title => "Float"; +} + +[Serializable] +public class VectorValueNodeData : FoldNodeData +{ + public Vector4 value; + public override string Title => "Vector"; +} + +[Serializable] +public class GameObjectNodeData : FoldNodeData +{ + public GameObject output; + public override string Title => "GameObject"; +} + +[Serializable] +public class AxisAlignNodeData : FoldOperationData +{ + public Vector4 po; + public Vector4 pp; + public Vector4 r; + public float t; + + public override string Title => "Axis Align"; + + public override FoldNodeSerialized Serialize(FoldGraphView graphView) + { + return new FoldNodeSerialized + { + opcode = 4, + float0 = graphView.GetInputValue(guid, "t", t), + vec0 = graphView.GetInputValue(guid, "po", po), + vec1 = graphView.GetInputValue(guid, "pp", pp), + vec2 = graphView.GetInputValue(guid, "r", r), + }; + } +} + +[Serializable] +public class PlaneToTubeNodeData : FoldOperationData +{ + public Vector4 p; + public Vector4 r; + public Vector4 s; + public float t; + + public override string Title => "Plane to Tube"; + + public override FoldNodeSerialized Serialize(FoldGraphView graphView) + { + return new FoldNodeSerialized + { + opcode = 2, + float0 = graphView.GetInputValue(guid, "t", t), + vec0 = graphView.GetInputValue(guid, "p", p), + vec1 = graphView.GetInputValue(guid, "r", r), + vec2 = graphView.GetInputValue(guid, "s", s), + }; + } +} + +[Serializable] +public class PointAlignNodeData : FoldOperationData +{ + public Vector4 po; + public Vector4 pp; + public Vector4 r; + public float t; + + public override string Title => "Point Align"; + + public override FoldNodeSerialized Serialize(FoldGraphView graphView) + { + return new FoldNodeSerialized + { + opcode = 3, + float0 = graphView.GetInputValue(guid, "t", t), + vec0 = graphView.GetInputValue(guid, "po", po), + vec1 = graphView.GetInputValue(guid, "pp", pp), + vec2 = graphView.GetInputValue(guid, "r", r), + }; + } +} + +[Serializable] +public class TubeToPlaneNodeData : FoldOperationData +{ + public Vector4 p; + public Vector4 r; + public Vector4 s; + public float t; + + public override string Title => "Tube to Plane"; + + public override FoldNodeSerialized Serialize(FoldGraphView graphView) + { + return new FoldNodeSerialized + { + opcode = 1, + float0 = graphView.GetInputValue(guid, "t", t), + vec0 = graphView.GetInputValue(guid, "p", p), + vec1 = graphView.GetInputValue(guid, "r", r), + vec2 = graphView.GetInputValue(guid, "s", s), + }; + } +} + +[Serializable] +public class KeyframeNodeData : FoldNodeData +{ + public override string Title => "Keyframe"; +} + +public class FoldGraph : ScriptableObject +{ + [SerializeReference] public List nodes = new(); + public List edges = new(); +} -- cgit v1.2.3