├── Demo.meta ├── Demo ├── Calucte.meta ├── Calucte │ ├── CalcuteType.cs │ ├── CalcuteType.cs.meta │ ├── CalulateUtility.cs │ ├── CalulateUtility.cs.meta │ ├── Editor.meta │ ├── Editor │ │ ├── CalculateCtrl.cs │ │ ├── CalculateCtrl.cs.meta │ │ ├── CalcuteConnectiodrawer.cs │ │ ├── CalcuteConnectiodrawer.cs.meta │ │ ├── FloatNodeDrawer.cs │ │ └── FloatNodeDrawer.cs.meta │ ├── ExportConnection.cs │ ├── ExportConnection.cs.meta │ ├── FloatNode.cs │ ├── FloatNode.cs.meta │ ├── IntNode.cs │ ├── IntNode.cs.meta │ ├── Node Graph.asset │ ├── Node Graph.asset.meta │ ├── NodePorts.cs │ ├── NodePorts.cs.meta │ ├── OperationConnection.cs │ ├── OperationConnection.cs.meta │ ├── ResoltNode.cs │ ├── ResoltNode.cs.meta │ ├── calcute.json │ └── calcute.json.meta ├── Dialog.meta ├── Dialog │ ├── DialogEntryNode.cs │ ├── DialogEntryNode.cs.meta │ ├── DialogNode.cs │ ├── DialogNode.cs.meta │ ├── DialogPanel.cs │ ├── DialogPanel.cs.meta │ ├── DialogPanel.prefab │ ├── DialogPanel.prefab.meta │ ├── DialogSeletor.cs │ ├── DialogSeletor.cs.meta │ ├── DiaogSelectNode.cs │ ├── DiaogSelectNode.cs.meta │ ├── Editor.meta │ ├── Editor │ │ ├── DialogCtrl.cs │ │ ├── DialogCtrl.cs.meta │ │ ├── Drawers.meta │ │ └── Drawers │ │ │ ├── DialogSelectDrawer.cs │ │ │ └── DialogSelectDrawer.cs.meta │ ├── Text.prefab │ ├── Text.prefab.meta │ ├── d.unity │ ├── d.unity.meta │ ├── dialog.asset │ └── dialog.asset.meta ├── GenerateRundomConnect.meta └── GenerateRundomConnect │ ├── Editor.meta │ ├── Editor │ ├── ObjectNodeDrawer.cs │ └── ObjectNodeDrawer.cs.meta │ ├── Line_connection.cs │ ├── Line_connection.cs.meta │ ├── ObjectlNode.cs │ ├── ObjectlNode.cs.meta │ ├── RunTime.cs │ ├── RunTime.cs.meta │ ├── generate.asset │ ├── generate.asset.meta │ ├── s.unity │ └── s.unity.meta ├── Node Graph.json ├── Node Graph.json.meta ├── NodeGraph.meta ├── NodeGraph ├── Core.meta ├── Core │ ├── Attributes.meta │ ├── Attributes │ │ ├── CustomNode.cs │ │ ├── CustomNode.cs.meta │ │ ├── CutomConnection.cs │ │ └── CutomConnection.cs.meta │ ├── DataModel.meta │ ├── DataModel │ │ ├── Connection.cs │ │ ├── Connection.cs.meta │ │ ├── ConnectionData.cs │ │ ├── ConnectionData.cs.meta │ │ ├── ConnectionPointData.cs │ │ ├── ConnectionPointData.cs.meta │ │ ├── CustomConnectionInfo.cs │ │ ├── CustomConnectionInfo.cs.meta │ │ ├── CustomNodeInfo.cs │ │ ├── CustomNodeInfo.cs.meta │ │ ├── Node.cs │ │ ├── Node.cs.meta │ │ ├── NodeData.cs │ │ ├── NodeData.cs.meta │ │ ├── NodeGraphObj.cs │ │ ├── NodeGraphObj.cs.meta │ │ ├── Point.cs │ │ └── Point.cs.meta │ ├── Exception.meta │ ├── Exception │ │ ├── AssetBundleGraphException.cs │ │ ├── AssetBundleGraphException.cs.meta │ │ ├── AssetReferenceException.cs │ │ ├── AssetReferenceException.cs.meta │ │ ├── NodeException.cs │ │ └── NodeException.cs.meta │ ├── Libs.meta │ ├── Libs │ │ ├── CustomScriptUtility.cs │ │ ├── CustomScriptUtility.cs.meta │ │ ├── MiniJSONForAssetGraph.cs │ │ ├── MiniJSONForAssetGraph.cs.meta │ │ ├── Settings.cs │ │ └── Settings.cs.meta │ ├── Utilitys.meta │ └── Utilitys │ │ ├── LogUtility.cs │ │ ├── LogUtility.cs.meta │ │ ├── ScriptObjectCatchUtil.cs │ │ ├── ScriptObjectCatchUtil.cs.meta │ │ ├── SerializeUtil.cs │ │ └── SerializeUtil.cs.meta ├── Editor.meta └── Editor │ ├── Attribute.meta │ ├── Attribute │ ├── CustomNodeDrawer.cs │ └── CustomNodeDrawer.cs.meta │ ├── DefultSkin.meta │ ├── DefultSkin │ ├── NodeImage.meta │ ├── NodeImage │ │ ├── node0.png │ │ ├── node0.png.meta │ │ ├── node0@2x.png │ │ ├── node0@2x.png.meta │ │ ├── node1.png │ │ ├── node1.png.meta │ │ ├── node1@2x.png │ │ ├── node1@2x.png.meta │ │ ├── node2.png │ │ ├── node2.png.meta │ │ ├── node2@2x.png │ │ ├── node2@2x.png.meta │ │ ├── node3.png │ │ ├── node3.png.meta │ │ ├── node3@2x.png │ │ ├── node3@2x.png.meta │ │ ├── node4.png │ │ ├── node4.png.meta │ │ ├── node4@2x.png │ │ ├── node4@2x.png.meta │ │ ├── node5.png │ │ ├── node5.png.meta │ │ ├── node5@2x.png │ │ ├── node5@2x.png.meta │ │ ├── node6.png │ │ ├── node6.png.meta │ │ ├── node6@2x.png │ │ ├── node6@2x.png.meta │ │ ├── node7.png │ │ ├── node7.png.meta │ │ ├── node7@2x.png │ │ ├── node7@2x.png.meta │ │ ├── node8.png │ │ ├── node8.png.meta │ │ ├── node8@2x.png │ │ ├── node8@2x.png.meta │ │ ├── node_images_source.psd │ │ ├── node_images_source.psd.meta │ │ ├── node_images_source@2x.psd │ │ ├── node_images_source@2x.psd.meta │ │ ├── on_node0.png │ │ ├── on_node0.png.meta │ │ ├── on_node0@2x.png │ │ ├── on_node0@2x.png.meta │ │ ├── on_node1.png │ │ ├── on_node1.png.meta │ │ ├── on_node1@2x.png │ │ ├── on_node1@2x.png.meta │ │ ├── on_node2.png │ │ ├── on_node2.png.meta │ │ ├── on_node2@2x.png │ │ ├── on_node2@2x.png.meta │ │ ├── on_node3.png │ │ ├── on_node3.png.meta │ │ ├── on_node3@2x.png │ │ ├── on_node3@2x.png.meta │ │ ├── on_node4.png │ │ ├── on_node4.png.meta │ │ ├── on_node4@2x.png │ │ ├── on_node4@2x.png.meta │ │ ├── on_node5.png │ │ ├── on_node5.png.meta │ │ ├── on_node5@2x.png │ │ ├── on_node5@2x.png.meta │ │ ├── on_node6.png │ │ ├── on_node6.png.meta │ │ ├── on_node6@2x.png │ │ ├── on_node6@2x.png.meta │ │ ├── on_node7.png │ │ ├── on_node7.png.meta │ │ ├── on_node7@2x.png │ │ ├── on_node7@2x.png.meta │ │ ├── on_node8.png │ │ ├── on_node8.png.meta │ │ ├── on_node8@2x.png │ │ └── on_node8@2x.png.meta │ ├── NodeStyle.guiskin │ ├── NodeStyle.guiskin.meta │ ├── Viewer.meta │ └── Viewer │ │ ├── DefultSkinNodeView.cs │ │ └── DefultSkinNodeView.cs.meta │ ├── EmptyController.cs │ ├── EmptyController.cs.meta │ ├── GUI.meta │ ├── GUI │ ├── ConnectionEvent.cs │ ├── ConnectionEvent.cs.meta │ ├── ConnectionGUI.cs │ ├── ConnectionGUI.cs.meta │ ├── ConnectionGUIEditor.cs │ ├── ConnectionGUIEditor.cs.meta │ ├── ConnectionGUIInspectorHelper.cs │ ├── ConnectionGUIInspectorHelper.cs.meta │ ├── ConnectionGUIUtility.cs │ ├── ConnectionGUIUtility.cs.meta │ ├── ConnectionView.cs │ ├── ConnectionView.cs.meta │ ├── DefultDrawer.cs │ ├── DefultDrawer.cs.meta │ ├── GraphBackground.cs │ ├── GraphBackground.cs.meta │ ├── GraphicResources.meta │ ├── GraphicResources │ │ ├── ConnectionPoint.png │ │ ├── ConnectionPoint.png.meta │ │ ├── InputBG.png │ │ ├── InputBG.png.meta │ │ ├── LineDraw.shader │ │ ├── LineDraw.shader.meta │ │ ├── OutputBG.png │ │ └── OutputBG.png.meta │ ├── NodeEvent.cs │ ├── NodeEvent.cs.meta │ ├── NodeGUI.cs │ ├── NodeGUI.cs.meta │ ├── NodeGUIEditor.cs │ ├── NodeGUIEditor.cs.meta │ ├── NodeGUIInspectorHelper.cs │ ├── NodeGUIInspectorHelper.cs.meta │ ├── NodeGUIUtility.cs │ ├── NodeGUIUtility.cs.meta │ ├── NodeGraphController.cs │ ├── NodeGraphController.cs.meta │ ├── NodeGraphObjDrawer.cs │ ├── NodeGraphObjDrawer.cs.meta │ ├── NodeGraphWindow.cs │ ├── NodeGraphWindow.cs.meta │ ├── NodeView.cs │ ├── NodeView.cs.meta │ ├── ProjectSettingsWindow.cs │ ├── ProjectSettingsWindow.cs.meta │ ├── ScrollViewContainer.cs │ ├── ScrollViewContainer.cs.meta │ ├── UserPreference.cs │ └── UserPreference.cs.meta │ ├── Utility.meta │ └── Utility │ ├── AssetBundleGraphUtility.cs │ ├── AssetBundleGraphUtility.cs.meta │ ├── BesierUtil.cs │ ├── BesierUtil.cs.meta │ ├── BuildTargetUtility.cs │ ├── BuildTargetUtility.cs.meta │ ├── CUIUtility.cs │ ├── CUIUtility.cs.meta │ ├── ConnectionPointDataUtility.cs │ ├── ConnectionPointDataUtility.cs.meta │ ├── FileUtility.cs │ ├── FileUtility.cs.meta │ ├── JSONGraphUtility.cs │ ├── JSONGraphUtility.cs.meta │ ├── NGEditorSettings.cs │ ├── NGEditorSettings.cs.meta │ ├── NodeConnectionUtility.cs │ ├── NodeConnectionUtility.cs.meta │ ├── RecordUndoScope.cs │ ├── RecordUndoScope.cs.meta │ ├── SaveScope.cs │ ├── SaveScope.cs.meta │ ├── ScriptableObjUtility.cs │ ├── ScriptableObjUtility.cs.meta │ ├── TypeUtility.cs │ ├── TypeUtility.cs.meta │ ├── UserDefineUtility.cs │ └── UserDefineUtility.cs.meta ├── Pics.meta ├── Pics ├── autoDraw.png ├── autoDraw.png.meta ├── connection.png ├── connection.png.meta ├── controller.png ├── controller.png.meta ├── node.png └── node.png.meta ├── ReadMe.md └── ReadMe.md.meta /Demo.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 1554c1e133de2f04c84c2c4df28ffe58 3 | folderAsset: yes 4 | timeCreated: 1513218621 5 | licenseType: Pro 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /Demo/Calucte.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: a36976120fc34db4290a45a77aadba67 3 | folderAsset: yes 4 | timeCreated: 1513570765 5 | licenseType: Pro 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /Demo/Calucte/CalcuteType.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | using System.Collections; 3 | 4 | public enum CalcuteType { 5 | Add, 6 | Sub, 7 | Mut, 8 | Div 9 | } 10 | -------------------------------------------------------------------------------- /Demo/Calucte/CalcuteType.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: fd76972281fc76843a4228db13df808a 3 | timeCreated: 1513691686 4 | licenseType: Free 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Demo/Calucte/CalulateUtility.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | using System.Collections; 3 | 4 | public class CalulateUtility : MonoBehaviour { 5 | 6 | // Use this for initialization 7 | void Start () { 8 | 9 | } 10 | 11 | // Update is called once per frame 12 | void Update () { 13 | 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /Demo/Calucte/CalulateUtility.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 60a90465ad3c43a49864e1781efbc547 3 | timeCreated: 1513691174 4 | licenseType: Free 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Demo/Calucte/Editor.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: ec317fb07103a95429d3f4524652507f 3 | folderAsset: yes 4 | timeCreated: 1513691201 5 | licenseType: Free 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /Demo/Calucte/Editor/CalculateCtrl.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | using System.Collections; 3 | 4 | using NodeGraph; 5 | using NodeGraph.DataModel; 6 | using UnityEditor; 7 | using NodeGraph.DefultSkin; 8 | using System; 9 | 10 | public class CalculateCtrl : NodeGraphController 11 | { 12 | public override string Group { get { return "Calculate"; } } 13 | 14 | 15 | //internal override string GetConnectType(NodeData from, NodeData to) 16 | //{ 17 | // //var outType = from.Operation.Object.NodeOutputType; 18 | // var inType = to.Operation.Object.NodeInputType; 19 | // if(inType == NodePorts.stringData) 20 | // { 21 | // return "exprot"; 22 | // } 23 | // else 24 | // { 25 | // return "calcute"; 26 | // } 27 | //} 28 | } 29 | -------------------------------------------------------------------------------- /Demo/Calucte/Editor/CalculateCtrl.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: d598b005287b1c544b2b05ba0341a74a 3 | timeCreated: 1513691193 4 | licenseType: Free 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Demo/Calucte/Editor/CalcuteConnectiodrawer.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | using System.Collections; 3 | using UnityEditor; 4 | using NodeGraph; 5 | using NodeGraph.DataModel; 6 | 7 | [CustomNodeView(typeof(OperationConnection))] 8 | public class CalcuteConnectiodrawer : ConnectionView 9 | { 10 | internal override Color LineColor { 11 | get { return Color.green; } 12 | } 13 | internal override int LineWidth { get { return 1; } } 14 | 15 | protected string Label { get { return (target as OperationConnection).calcuteType.ToString().Substring(0,1); } } 16 | } 17 | -------------------------------------------------------------------------------- /Demo/Calucte/Editor/CalcuteConnectiodrawer.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: d4fab01cad2c93245a84b1662c9f03f3 3 | timeCreated: 1513692719 4 | licenseType: Free 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Demo/Calucte/Editor/FloatNodeDrawer.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | using System.Collections; 3 | using UnityEditor; 4 | using NodeGraph; 5 | using NodeGraph.DataModel; 6 | using NodeGraph.DefultSkin; 7 | 8 | [CustomNodeView(typeof(FloatNode), typeof(IntNode))] 9 | public class FloatNodeDrawer : DefultSkinNodeView 10 | { 11 | public override float CustomNodeHeight { get { return EditorGUIUtility.singleLineHeight * 2; } } 12 | IntNode iNode; 13 | FloatNode fNode; 14 | 15 | public override void OnNodeGUI(Rect position, NodeData data) 16 | { 17 | base.OnNodeGUI(position, data); 18 | position = new Rect(12, position.y + 10, position.width - 24, EditorGUIUtility.singleLineHeight); 19 | if (data.Object is IntNode) 20 | { 21 | iNode = data.Object as IntNode; 22 | iNode.value = EditorGUI.IntField(position, iNode.value); 23 | } 24 | if (data.Object is FloatNode) 25 | { 26 | fNode = data.Object as FloatNode; 27 | fNode.value = EditorGUI.FloatField(position, fNode.value); 28 | } 29 | 30 | } 31 | } 32 | -------------------------------------------------------------------------------- /Demo/Calucte/Editor/FloatNodeDrawer.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 977f278beb40e444b8cc9c32b18ca870 3 | timeCreated: 1513691783 4 | licenseType: Free 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Demo/Calucte/ExportConnection.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | using System.Collections; 3 | using NodeGraph; 4 | using NodeGraph.DataModel; 5 | 6 | [CustomConnection("exprot")] 7 | public class ExportConnection : Connection { 8 | 9 | } 10 | -------------------------------------------------------------------------------- /Demo/Calucte/ExportConnection.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: fbaa3f8441233d74489a5baad8e44a00 3 | timeCreated: 1513693390 4 | licenseType: Free 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Demo/Calucte/FloatNode.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | using System.Collections; 3 | using NodeGraph; 4 | using NodeGraph.DataModel; 5 | using System.Collections.Generic; 6 | 7 | [CustomNode("Node/Float",1,"Calculate")] 8 | public class FloatNode : Node 9 | { 10 | public float value; 11 | protected override IEnumerable inPoints 12 | { 13 | get 14 | { 15 | return new Point[] { new Point("f", "Number", 2) }; 16 | } 17 | } 18 | protected override IEnumerable outPoints 19 | { 20 | get 21 | { 22 | return new Point[] { new Point("f", "Number", 2) }; 23 | } 24 | } 25 | } 26 | -------------------------------------------------------------------------------- /Demo/Calucte/FloatNode.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 2f0d266f2124ea346898f633f81fd238 3 | timeCreated: 1513691142 4 | licenseType: Free 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Demo/Calucte/IntNode.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | using System.Collections; 3 | 4 | using NodeGraph; 5 | using NodeGraph.DataModel; 6 | using System.Collections.Generic; 7 | 8 | 9 | [CustomNode("Node/Short", 2, "Calculate")] 10 | public class ShortNode : Node 11 | { 12 | public short value; 13 | } 14 | 15 | 16 | [CustomNode("Node/Int", 2, "Calculate")] 17 | public class IntNode : Node 18 | { 19 | public int value; 20 | protected override IEnumerable inPoints 21 | { 22 | get 23 | { 24 | return new Point[] { new Point("i", "Number", 2) }; 25 | } 26 | } 27 | protected override IEnumerable outPoints 28 | { 29 | get 30 | { 31 | return new Point[] { new Point("i", "Number", 2) }; 32 | } 33 | } 34 | } 35 | -------------------------------------------------------------------------------- /Demo/Calucte/IntNode.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: c672d17fdb145314eae1de9ff41def0a 3 | timeCreated: 1513691133 4 | licenseType: Free 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Demo/Calucte/Node Graph.asset.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 6ef4d390d32b44f499b8906087a9ea6d 3 | timeCreated: 1515472257 4 | licenseType: Pro 5 | NativeFormatImporter: 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Demo/Calucte/NodePorts.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | using System.Collections; 3 | 4 | public static class NodePorts { 5 | public const string floatData = "f"; 6 | public const string intData = "i"; 7 | public const string stringData = "s"; 8 | } 9 | -------------------------------------------------------------------------------- /Demo/Calucte/NodePorts.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 138ca173baf14844a88949df0e3c8d7f 3 | timeCreated: 1513693259 4 | licenseType: Free 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Demo/Calucte/OperationConnection.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | using System.Collections; 3 | using NodeGraph; 4 | using NodeGraph.DataModel; 5 | 6 | [CustomConnection("Number")] 7 | public class OperationConnection : Connection { 8 | public CalcuteType calcuteType; 9 | } 10 | 11 | 12 | -------------------------------------------------------------------------------- /Demo/Calucte/OperationConnection.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: a31fa444bfa96fe46bcf3e293e2c277d 3 | timeCreated: 1513691158 4 | licenseType: Free 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Demo/Calucte/ResoltNode.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | using System.Collections; 3 | using NodeGraph; 4 | using NodeGraph.DataModel; 5 | [CustomNode("Result", 10, "Calculate")] 6 | public class ResultNode : Node 7 | { 8 | public string value; 9 | } 10 | -------------------------------------------------------------------------------- /Demo/Calucte/ResoltNode.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 9819f9c90dbfe3644a54657e946815ae 3 | timeCreated: 1513692966 4 | licenseType: Free 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Demo/Calucte/calcute.json: -------------------------------------------------------------------------------- 1 | {"m_allNodes":[{"m_name":"Float","m_id":"48f33b8a-acc7-4f1c-b0e3-1b32b403276d","m_x":36.0,"m_y":96.0,"m_node":{"instanceID":-24048},"m_inputPoints":[{"id":"fe774a37-2c07-4672-bacd-2973b76c4e0c","label":"f","parentId":"48f33b8a-acc7-4f1c-b0e3-1b32b403276d","isInput":true,"buttonRect":{"serializedVersion":"2","x":0.0,"y":18.5,"width":21.0,"height":29.0},"max":2,"type":"Number"}],"m_outputPoints":[{"id":"457a1371-c8db-4924-916c-0e9dc38721d3","label":"f","parentId":"48f33b8a-acc7-4f1c-b0e3-1b32b403276d","isInput":false,"buttonRect":{"serializedVersion":"2","x":111.0,"y":21.5,"width":10.0,"height":23.0},"max":2,"type":"Number"}]},{"m_name":"Float","m_id":"2d99bafe-b6ea-459b-af1b-68596b3aebc3","m_x":216.0,"m_y":96.0,"m_node":{"instanceID":-24224},"m_inputPoints":[{"id":"ac4f20c2-e889-4a68-9c16-a5e52b246814","label":"f","parentId":"2d99bafe-b6ea-459b-af1b-68596b3aebc3","isInput":true,"buttonRect":{"serializedVersion":"2","x":0.0,"y":18.5,"width":21.0,"height":29.0},"max":2,"type":"Number"}],"m_outputPoints":[{"id":"d20cb30a-9603-4d33-af90-cdb7aaf6aab6","label":"f","parentId":"2d99bafe-b6ea-459b-af1b-68596b3aebc3","isInput":false,"buttonRect":{"serializedVersion":"2","x":111.0,"y":21.5,"width":10.0,"height":23.0},"max":2,"type":"Number"}]}],"m_allConnections":[{"m_id":"e0ae87d7-4cee-4d99-a276-1b7091bfc31a","m_fromNodeId":"48f33b8a-acc7-4f1c-b0e3-1b32b403276d","m_fromNodeConnectionPointId":"457a1371-c8db-4924-916c-0e9dc38721d3","m_toNodeId":"2d99bafe-b6ea-459b-af1b-68596b3aebc3","m_toNodeConnectionPoiontId":"ac4f20c2-e889-4a68-9c16-a5e52b246814","m_type":"Number","m_connection":{"instanceID":-24370}}],"m_lastModified":"131598944127647147","m_graphDescription":"","m_controllerType":"CalculateCtrl"} -------------------------------------------------------------------------------- /Demo/Calucte/calcute.json.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: e602616d2c7c6c34bb74a2f95bd982d5 3 | timeCreated: 1515420837 4 | licenseType: Free 5 | TextScriptImporter: 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Demo/Dialog.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: df1bff763c2562e44b0fbbaa5d0a3af9 3 | folderAsset: yes 4 | timeCreated: 1513570712 5 | licenseType: Pro 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /Demo/Dialog/DialogEntryNode.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | using System.Collections; 3 | using NodeGraph; 4 | using NodeGraph.DataModel; 5 | using System.Collections.Generic; 6 | 7 | [CustomNode("Dialog/Entry", 0, "Dialog")] 8 | public class DialogEntryNode : Node 9 | { 10 | public string person; 11 | public string infomation; 12 | protected override IEnumerable outPoints 13 | { 14 | get 15 | { 16 | return new Point[] { new Point("->","",1) }; 17 | } 18 | } 19 | } 20 | -------------------------------------------------------------------------------- /Demo/Dialog/DialogEntryNode.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 59b3c8f2bd6bb9b4886086d29101dc39 3 | timeCreated: 1513682173 4 | licenseType: Free 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Demo/Dialog/DialogNode.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | using System.Collections; 3 | 4 | using NodeGraph; 5 | using System.Collections.Generic; 6 | using NodeGraph.DataModel; 7 | [CustomNode("Dialog/Normal", 0, "Dialog")] 8 | public class DialogNode : DialogEntryNode 9 | { 10 | protected override IEnumerable inPoints 11 | { 12 | get 13 | { 14 | return new Point[] { new Point("->", "", 1) }; 15 | } 16 | } 17 | protected override IEnumerable outPoints 18 | { 19 | get 20 | { 21 | return new Point[] { new Point("->", "", 1) }; 22 | } 23 | } 24 | } 25 | -------------------------------------------------------------------------------- /Demo/Dialog/DialogNode.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 9102e7526854e4d4abf9f27c05b43c1e 3 | timeCreated: 1513681567 4 | licenseType: Free 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Demo/Dialog/DialogPanel.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: de115579dbceffd4ea8eba4fbf17b376 3 | timeCreated: 1513686654 4 | licenseType: Free 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Demo/Dialog/DialogPanel.prefab.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 5105fe28f13feb44cb4f649bddedefcd 3 | timeCreated: 1513689895 4 | licenseType: Free 5 | NativeFormatImporter: 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Demo/Dialog/DialogSeletor.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | using UnityEngine.UI; 3 | using UnityEngine.EventSystems; 4 | using System.Collections; 5 | using System; 6 | using System.Collections.Generic; 7 | 8 | public class DialogSeletor : MonoBehaviour { 9 | 10 | public Dropdown.DropdownEvent callback; 11 | [SerializeField] 12 | private Text prefab; 13 | private Queue hideItems = new Queue(); 14 | private List showing = new List(); 15 | internal void ChargeSelecton(List infomation) 16 | { 17 | HideItems(); 18 | ShowItems(infomation); 19 | } 20 | private void HideItems() 21 | { 22 | foreach (var item in showing) 23 | { 24 | item.gameObject.SetActive(false); 25 | hideItems.Enqueue(item); 26 | } 27 | showing.Clear(); 28 | } 29 | private void ShowItems(List infomation) 30 | { 31 | for (int i = 0; i < infomation.Count; i++) 32 | { 33 | var item = infomation[i]; 34 | Text instence = null; 35 | if(hideItems.Count > 0) 36 | { 37 | instence = hideItems.Dequeue(); 38 | } 39 | else 40 | { 41 | var index = i; 42 | instence = CreateNewItem(index); 43 | } 44 | instence.text = item; 45 | instence.gameObject.SetActive(true); 46 | showing.Add(instence); 47 | } 48 | } 49 | private Text CreateNewItem(int index) 50 | { 51 | var textItem = Instantiate(prefab); 52 | textItem.transform.SetParent(transform, false); 53 | var entry = new EventTrigger.Entry(); 54 | entry.eventID = EventTriggerType.PointerClick; 55 | entry.callback.AddListener((x)=>callback.Invoke(index)); 56 | textItem.GetComponent().triggers.Add(entry); 57 | return textItem; 58 | } 59 | 60 | } 61 | -------------------------------------------------------------------------------- /Demo/Dialog/DialogSeletor.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: dc39349aa71c6b8429a064e08891d681 3 | timeCreated: 1513687604 4 | licenseType: Free 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Demo/Dialog/DiaogSelectNode.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | using System.Collections.Generic; 3 | using NodeGraph; 4 | using NodeGraph.DataModel; 5 | [CustomNode("Dialog/Select", 0, "Dialog")] 6 | public class DialogSelectNode : Node 7 | { 8 | public string person; 9 | public List infomation; 10 | 11 | protected override IEnumerable inPoints 12 | { 13 | get 14 | { 15 | return new Point[] { new Point("->", "", 1) }; 16 | } 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /Demo/Dialog/DiaogSelectNode.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 9a492c53130b9304f91f2efeea0da064 3 | timeCreated: 1513682189 4 | licenseType: Free 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Demo/Dialog/Editor.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: fb35efb3aeea84842b1c046d550dea71 3 | folderAsset: yes 4 | timeCreated: 1510916577 5 | licenseType: Pro 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /Demo/Dialog/Editor/DialogCtrl.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | using System.Collections; 3 | using NodeGraph; 4 | using NodeGraph.DataModel; 5 | using System; 6 | 7 | public class DialogCtrl : NodeGraphController 8 | { 9 | public override string Group { get { return "Dialog"; } } 10 | } 11 | -------------------------------------------------------------------------------- /Demo/Dialog/Editor/DialogCtrl.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 8c9faaa36ed84cb419996c5d40dcca4f 3 | timeCreated: 1513606684 4 | licenseType: Free 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Demo/Dialog/Editor/Drawers.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: dde3e315e34db5f4ba204dd1fe18c0d5 3 | folderAsset: yes 4 | timeCreated: 1513245223 5 | licenseType: Pro 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /Demo/Dialog/Editor/Drawers/DialogSelectDrawer.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | using System.Collections; 3 | using NodeGraph; 4 | using NodeGraph.DataModel; 5 | using UnityEditor; 6 | using NodeGraph.DefultSkin; 7 | 8 | [CustomNodeView(typeof(DialogSelectNode))] 9 | public class DialogSelectDrawer : DefultSkinNodeView 10 | { 11 | DialogSelectNode node; 12 | public override int Style { get { return 1; } } 13 | public override void OnInspectorGUI(NodeGUI gui) 14 | { 15 | base.OnInspectorGUI(gui); 16 | if (node == null) 17 | { 18 | node = target as DialogSelectNode; 19 | if (node.infomation == null) 20 | { 21 | node.infomation = new System.Collections.Generic.List(); 22 | } 23 | } 24 | if (GUILayout.Button("+", EditorStyles.toolbarDropDown)) 25 | { 26 | node.infomation.Add(""); 27 | gui.Data.AddOutputPoint(((char)(node.infomation.Count + 64)).ToString(),""); 28 | } 29 | for (int i = 0; i < node.infomation.Count; i++) 30 | { 31 | using (var hor = new EditorGUILayout.HorizontalScope()) 32 | { 33 | GUILayout.Label(((char)(65 + i)).ToString(), GUILayout.Width(20)); 34 | node.infomation[i] = EditorGUILayout.TextField(node.infomation[i]); 35 | } 36 | } 37 | if (GUILayout.Button("-", EditorStyles.toolbarDropDown)) 38 | { 39 | if (node.infomation.Count > 0) 40 | { 41 | var id = node.infomation.Count - 1; 42 | gui.Data.OutputPoints.RemoveAt(id); 43 | node.infomation.RemoveAt(id); 44 | } 45 | return; 46 | } 47 | } 48 | } 49 | -------------------------------------------------------------------------------- /Demo/Dialog/Editor/Drawers/DialogSelectDrawer.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 9cebf5ef6e0893942a49ec4d502d8ac9 3 | timeCreated: 1513682336 4 | licenseType: Free 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Demo/Dialog/Text.prefab.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 6b86ed5a10e888b449a82d49c8aff376 3 | timeCreated: 1513690044 4 | licenseType: Free 5 | NativeFormatImporter: 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Demo/Dialog/d.unity.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: cd58aded17221c540b790d1cbf745e26 3 | timeCreated: 1513689392 4 | licenseType: Free 5 | DefaultImporter: 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Demo/Dialog/dialog.asset.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 89d31222d4396564da940c02bc65a0f9 3 | timeCreated: 1513605953 4 | licenseType: Free 5 | NativeFormatImporter: 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Demo/GenerateRundomConnect.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 510678d5a2fa5d744bc875d5076f76c4 3 | folderAsset: yes 4 | timeCreated: 1513243659 5 | licenseType: Pro 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /Demo/GenerateRundomConnect/Editor.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: c2daf9417be9ad54eb0f4d4dfbbfffb7 3 | folderAsset: yes 4 | timeCreated: 1513605360 5 | licenseType: Free 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /Demo/GenerateRundomConnect/Editor/ObjectNodeDrawer.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | using UnityEditor; 3 | 4 | using System; 5 | using System.Linq; 6 | using System.Collections.Generic; 7 | using NodeGraph.DataModel; 8 | using NodeGraph; 9 | using NodeGraph.DefultSkin; 10 | 11 | 12 | [CustomNodeView(typeof(ObjectNode))] 13 | public class ObjectNodeDrawer : DefultSkinNodeView 14 | { 15 | public override int Style { get { return 1; } } 16 | 17 | public override string Category 18 | { 19 | get 20 | { 21 | return "panel"; 22 | } 23 | } 24 | public override float CustomNodeHeight 25 | { 26 | get 27 | { 28 | return EditorGUIUtility.singleLineHeight * 1; 29 | } 30 | } 31 | public override void OnNodeGUI(Rect position,NodeData data) 32 | { 33 | base.OnNodeGUI(position, data); 34 | (target as ObjectNode).type = (PrimitiveType)EditorGUI.EnumPopup(position,(target as ObjectNode).type); 35 | } 36 | public override void OnInspectorGUI(NodeGUI gui) 37 | { 38 | base.OnInspectorGUI(gui); 39 | gui.Name = (target as ObjectNode).type.ToString(); 40 | } 41 | 42 | } -------------------------------------------------------------------------------- /Demo/GenerateRundomConnect/Editor/ObjectNodeDrawer.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: dd4614b79699faa4783b0f53d2fa3312 3 | timeCreated: 1513245249 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Demo/GenerateRundomConnect/Line_connection.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | using NodeGraph; 3 | using System; 4 | using NodeGraph.DataModel; 5 | [CustomConnection("line_connection")] 6 | public class Line_connection : Connection 7 | { 8 | public bool asChild; 9 | 10 | } 11 | -------------------------------------------------------------------------------- /Demo/GenerateRundomConnect/Line_connection.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 6f95574bfde345b4ca9c13aa8c2dd20c 3 | timeCreated: 1513227051 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Demo/GenerateRundomConnect/ObjectlNode.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | using UnityEngine.UI; 3 | using UnityEngine.Audio; 4 | using UnityEngine.Events; 5 | using UnityEngine.Sprites; 6 | using UnityEngine.Scripting; 7 | using UnityEngine.Assertions; 8 | using UnityEngine.EventSystems; 9 | using UnityEngine.Assertions.Must; 10 | using UnityEngine.Assertions.Comparers; 11 | using System.Collections; 12 | using System.Collections.Generic; 13 | using NodeGraph; 14 | using NodeGraph.DataModel; 15 | using System; 16 | 17 | [CustomNode("RundomConnect/Node", 1)] 18 | public class ObjectNode : Node { 19 | public PrimitiveType type; 20 | protected override IEnumerable inPoints 21 | { 22 | get 23 | { 24 | return new Point[] { new Point("a", "line_connection",1) }; 25 | } 26 | } 27 | protected override IEnumerable outPoints 28 | { 29 | get 30 | { 31 | return new Point[] { new Point("b", "line_connection", 3) }; 32 | } 33 | } 34 | } 35 | -------------------------------------------------------------------------------- /Demo/GenerateRundomConnect/ObjectlNode.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 7947594a418bede459985fdab60e52ea 3 | timeCreated: 1513243741 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Demo/GenerateRundomConnect/RunTime.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | using UnityEngine.UI; 3 | using UnityEngine.Audio; 4 | using UnityEngine.Events; 5 | using UnityEngine.Sprites; 6 | using UnityEngine.Scripting; 7 | using UnityEngine.Assertions; 8 | using UnityEngine.EventSystems; 9 | using UnityEngine.Assertions.Must; 10 | using UnityEngine.Assertions.Comparers; 11 | using System.Collections; 12 | using System.Collections.Generic; 13 | using NodeGraph.DataModel; 14 | 15 | public class RunTime : MonoBehaviour 16 | { 17 | public NodeGraphObj graph; 18 | private Dictionary nodeDic = new Dictionary(); 19 | private Queue created = new Queue(); 20 | private void OnGUI() 21 | { 22 | if (GUILayout.Button("Init")) 23 | { 24 | RandomGenerate(); 25 | } 26 | } 27 | 28 | private void RandomGenerate() 29 | { 30 | while (created.Count > 0) 31 | { 32 | var item = created.Dequeue(); 33 | GameObject.Destroy(item); 34 | } 35 | nodeDic.Clear(); 36 | 37 | foreach (var item in graph.Nodes) 38 | { 39 | if (item.Object is ObjectNode) 40 | { 41 | var node = item.Object as ObjectNode; 42 | var go = GameObject.CreatePrimitive(node.type); 43 | created.Enqueue(go); 44 | go.name = item.Name; 45 | go.transform.position = Random.insideUnitSphere * 5; 46 | nodeDic.Add(item.Id, go); 47 | } 48 | 49 | } 50 | 51 | foreach (var item in graph.Connections) 52 | { 53 | var line = new GameObject(); 54 | created.Enqueue(line); 55 | var render = line.AddComponent(); 56 | #if UNITY_2018 57 | render.positionCount = 2; 58 | render.startWidth = render.endWidth = 0.1f; 59 | #elif UNITY_2017 60 | render.SetVertexCount(2); 61 | render.SetWidth(0.1f, 0.1f); 62 | #elif UNITY_5_6 63 | render.positionCount = 2; 64 | render.startWidth = render.endWidth = 0.1f; 65 | #else 66 | 输入对应的设置方式 67 | #endif 68 | 69 | render.SetPosition(0, nodeDic[item.FromNodeId].transform.position); 70 | render.SetPosition(1, nodeDic[item.ToNodeId].transform.position); 71 | } 72 | } 73 | } 74 | -------------------------------------------------------------------------------- /Demo/GenerateRundomConnect/RunTime.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 324ab28a7bb50fd4e962c54ae102839a 3 | timeCreated: 1513303403 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Demo/GenerateRundomConnect/generate.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!114 &11400000 4 | MonoBehaviour: 5 | m_ObjectHideFlags: 0 6 | m_PrefabParentObject: {fileID: 0} 7 | m_PrefabInternal: {fileID: 0} 8 | m_GameObject: {fileID: 0} 9 | m_Enabled: 1 10 | m_EditorHideFlags: 0 11 | m_Script: {fileID: 11500000, guid: eec4882d68a9346b3b5f8ecf1e38a534, type: 3} 12 | m_Name: generate 13 | m_EditorClassIdentifier: 14 | m_allNodes: [] 15 | m_allConnections: [] 16 | m_lastModified: 131765562280369021 17 | m_graphDescription: 18 | m_controllerType: NodeGraph.EmptyController 19 | -------------------------------------------------------------------------------- /Demo/GenerateRundomConnect/generate.asset.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 86bcc0442610d994d89e181388254eac 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 11400000 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Demo/GenerateRundomConnect/s.unity.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 84a7cff51ec26f14498409adc9571077 3 | timeCreated: 1513303510 4 | licenseType: Pro 5 | DefaultImporter: 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Node Graph.json: -------------------------------------------------------------------------------- 1 | {"m_allNodes":[{"m_name":"Luncher","m_id":"cd607f27-29b9-474d-90fd-3bbeb29229c6","m_x":27.0,"m_y":121.0,"m_nodeInstance":{"m_className":"Luncher, Assembly-CSharp, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null","m_instanceData":"B64|eyJ0ZXN0c3RyIjoiIiwidGVzdGludCI6MH0="},"m_inputPoints":[],"m_outputPoints":[{"id":"ad13fa21-543a-47e7-abf7-c555405289ec","label":"+","parentId":"cd607f27-29b9-474d-90fd-3bbeb29229c6","isInput":false,"buttonRect":{"serializedVersion":"2","x":111.0,"y":21.5,"width":10.0,"height":23.0}}]},{"m_name":"PanelNode","m_id":"38d2d69c-6c55-44a7-900a-d504774ea691","m_x":228.0,"m_y":72.0,"m_nodeInstance":{"m_className":"PanelNode, Assembly-CSharp, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null","m_instanceData":"B64|eyJrZXkiOiIifQ=="},"m_inputPoints":[{"id":"3dd9ec34-1afc-472a-9988-d500b7c4f6ed","label":"-","parentId":"38d2d69c-6c55-44a7-900a-d504774ea691","isInput":true,"buttonRect":{"serializedVersion":"2","x":0.0,"y":18.5,"width":21.0,"height":29.0}}],"m_outputPoints":[{"id":"ad24cd16-460f-4010-9b08-d6fd84ed1477","label":"+","parentId":"38d2d69c-6c55-44a7-900a-d504774ea691","isInput":false,"buttonRect":{"serializedVersion":"2","x":111.0,"y":21.5,"width":10.0,"height":23.0}}]}],"m_allConnections":[{"m_id":"ee9d200f-1c04-4ef4-a29a-113e17db5cea","m_fromNodeId":"cd607f27-29b9-474d-90fd-3bbeb29229c6","m_fromNodeConnectionPointId":"ad13fa21-543a-47e7-abf7-c555405289ec","m_toNodeId":"38d2d69c-6c55-44a7-900a-d504774ea691","m_toNodeConnectionPoiontId":"3dd9ec34-1afc-472a-9988-d500b7c4f6ed","m_label":"+","m_connectionInstance":{"m_className":"BridgeConnection, Assembly-CSharp, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null","m_instanceData":"B64|eyJ0ZXh0U3RyaW5nIjoiIn0="}}],"m_lastModified":"131577913013083846","m_version":2,"m_graphDescription":"","m_useAsAssetPostprocessor":false,"m_controllerType":"UIGraphController"} -------------------------------------------------------------------------------- /Node Graph.json.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 851fa5f95cf38334281c307263e05ad8 3 | timeCreated: 1513318170 4 | licenseType: Pro 5 | TextScriptImporter: 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /NodeGraph.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 596a419fa5d2b8d4391c2b3ba9822a7d 3 | folderAsset: yes 4 | timeCreated: 1513239432 5 | licenseType: Pro 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /NodeGraph/Core.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 5ade24fe19753334d9cc4813f4540a10 3 | folderAsset: yes 4 | timeCreated: 1527037670 5 | licenseType: Pro 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /NodeGraph/Core/Attributes.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: ee0e2e7b6a209c542a8193702ad1ab1b 3 | folderAsset: yes 4 | timeCreated: 1513222315 5 | licenseType: Pro 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /NodeGraph/Core/Attributes/CustomNode.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | using UnityEngine.UI; 3 | using UnityEngine.Audio; 4 | using UnityEngine.Events; 5 | using UnityEngine.Sprites; 6 | using UnityEngine.Scripting; 7 | using UnityEngine.Assertions; 8 | using UnityEngine.EventSystems; 9 | using UnityEngine.Assertions.Must; 10 | using UnityEngine.Assertions.Comparers; 11 | using System.Collections; 12 | using System.Collections.Generic; 13 | using System; 14 | namespace NodeGraph { 15 | /// 16 | /// Custom node attribute for custom nodes. 17 | /// 18 | [AttributeUsage(AttributeTargets.Class)] 19 | public class CustomNode : Attribute 20 | { 21 | private string m_name; 22 | private int m_orderPriority; 23 | private string m_group; 24 | 25 | public static readonly int kDEFAULT_PRIORITY = 1000; 26 | public static readonly string kDEFAULT_GROUP = "Empty"; 27 | /// 28 | /// Gets the name. 29 | /// 30 | /// The name. 31 | public string Name 32 | { 33 | get 34 | { 35 | return m_name; 36 | } 37 | } 38 | public string Group 39 | { 40 | get 41 | { 42 | return m_group; 43 | } 44 | } 45 | 46 | /// 47 | /// Gets the order priority. 48 | /// 49 | /// The order priority. 50 | public int OrderPriority 51 | { 52 | get 53 | { 54 | return m_orderPriority; 55 | } 56 | } 57 | 58 | public CustomNode(string name) 59 | { 60 | m_name = name; 61 | m_orderPriority = kDEFAULT_PRIORITY; 62 | m_group = kDEFAULT_GROUP; 63 | } 64 | 65 | public CustomNode(string name, int orderPriority) 66 | { 67 | m_name = name; 68 | m_orderPriority = orderPriority; 69 | m_group = kDEFAULT_GROUP; 70 | } 71 | public CustomNode(string name, int orderPriority, string group) 72 | { 73 | m_name = name; 74 | m_orderPriority = orderPriority; 75 | m_group = group; 76 | } 77 | } } 78 | -------------------------------------------------------------------------------- /NodeGraph/Core/Attributes/CustomNode.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 2255c805113a2ea4da5d37b9264110c2 3 | timeCreated: 1513222471 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /NodeGraph/Core/Attributes/CutomConnection.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | using UnityEngine.UI; 3 | using UnityEngine.Audio; 4 | using UnityEngine.Events; 5 | using UnityEngine.Sprites; 6 | using UnityEngine.Scripting; 7 | using UnityEngine.Assertions; 8 | using UnityEngine.EventSystems; 9 | using UnityEngine.Assertions.Must; 10 | using UnityEngine.Assertions.Comparers; 11 | using System.Collections; 12 | using System; 13 | /// 14 | /// Custom node attribute for custom nodes. 15 | /// 16 | [AttributeUsage(AttributeTargets.Class)] 17 | public class CustomConnection : Attribute 18 | { 19 | private string m_name; 20 | /// 21 | /// Gets the name. 22 | /// 23 | /// The name. 24 | public string Name 25 | { 26 | get 27 | { 28 | return m_name; 29 | } 30 | } 31 | 32 | 33 | public CustomConnection(string name) 34 | { 35 | m_name = name; 36 | } 37 | } 38 | -------------------------------------------------------------------------------- /NodeGraph/Core/Attributes/CutomConnection.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 7bb3f9b03000b89408c1a6ad4e8dabe4 3 | timeCreated: 1513227170 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /NodeGraph/Core/DataModel.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 357dba0de306645a3992bbd2621d71bc 3 | folderAsset: yes 4 | timeCreated: 1494625784 5 | licenseType: Pro 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /NodeGraph/Core/DataModel/Connection.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | 3 | namespace NodeGraph.DataModel 4 | { 5 | 6 | public class Connection : ScriptableObject { 7 | } 8 | } -------------------------------------------------------------------------------- /NodeGraph/Core/DataModel/Connection.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 2397e5c633e6cee47a71ee7b79131967 3 | timeCreated: 1513222431 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /NodeGraph/Core/DataModel/ConnectionData.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 4ff65a093e87f482b91a6ccf343a1f76 3 | timeCreated: 1494625784 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /NodeGraph/Core/DataModel/ConnectionPointData.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zouhunter/unity-nodegraph-frame/f5c6f781e164e515bedd73d906b9989fb2dad7f4/NodeGraph/Core/DataModel/ConnectionPointData.cs -------------------------------------------------------------------------------- /NodeGraph/Core/DataModel/ConnectionPointData.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: b929608ac59544de3a587ffc4080d2fd 3 | timeCreated: 1494625785 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /NodeGraph/Core/DataModel/CustomConnectionInfo.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | 3 | namespace NodeGraph.DataModel 4 | { 5 | public struct CustomConnectionInfo 6 | { 7 | public CustomConnection connection; 8 | public Type type; 9 | 10 | public CustomConnectionInfo(Type t, CustomConnection n) 11 | { 12 | connection = n; 13 | type = t; 14 | } 15 | 16 | public Connection CreateInstance() 17 | { 18 | if (type == null || string.IsNullOrEmpty(type.FullName)) 19 | { 20 | type = typeof(Connection); 21 | } 22 | var c = Connection.CreateInstance(type) as Connection; 23 | c.name = type.FullName; 24 | return c; 25 | } 26 | } 27 | } -------------------------------------------------------------------------------- /NodeGraph/Core/DataModel/CustomConnectionInfo.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 6062d230f3e8ab541a311aa4b932b502 3 | timeCreated: 1513227832 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /NodeGraph/Core/DataModel/CustomNodeInfo.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | 3 | namespace NodeGraph.DataModel 4 | { 5 | public struct CustomNodeInfo : IComparable 6 | { 7 | public CustomNode node; 8 | public Type type; 9 | 10 | public CustomNodeInfo(Type t, CustomNode n) 11 | { 12 | node = n; 13 | type = t; 14 | } 15 | 16 | public Node CreateInstance() 17 | { 18 | Node o = UnityEngine.ScriptableObject.CreateInstance(type) as Node; 19 | o.name = type.FullName; 20 | return o; 21 | } 22 | 23 | public int CompareTo(object obj) 24 | { 25 | if (obj == null) 26 | { 27 | return 1; 28 | } 29 | 30 | CustomNodeInfo rhs = (CustomNodeInfo)obj; 31 | return node.OrderPriority - rhs.node.OrderPriority; 32 | } 33 | } 34 | } -------------------------------------------------------------------------------- /NodeGraph/Core/DataModel/CustomNodeInfo.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 9dea25b49bf254840a7234b6c7fa69a8 3 | timeCreated: 1513222710 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /NodeGraph/Core/DataModel/Node.cs: -------------------------------------------------------------------------------- 1 | using System.Collections; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using UnityEngine; 5 | 6 | namespace NodeGraph.DataModel 7 | { 8 | /// 9 | /// Node. 10 | /// 11 | public abstract class Node:ScriptableObject{ 12 | public virtual void Initialize(NodeData data) 13 | { 14 | InitInputPoints(data); 15 | InitOutPoints(data); 16 | } 17 | protected void InitInputPoints(NodeData data) 18 | { 19 | if (inPoints != null) 20 | { 21 | var updated = new List(); 22 | foreach (var point in inPoints) 23 | { 24 | var old = data.InputPoints.Find(x => x.Label == point.label && !updated.Contains(x)); 25 | if (old != null) 26 | { 27 | updated.Add(old); 28 | old.Max = point.max; 29 | old.Type = point.type; 30 | } 31 | else 32 | { 33 | old = data.AddInputPoint(point.label, point.type, point.max); 34 | updated.Add(old); 35 | } 36 | } 37 | data.InputPoints.Clear(); 38 | data.InputPoints.AddRange(updated); 39 | } 40 | } 41 | protected void InitOutPoints(NodeData data) 42 | { 43 | if (outPoints != null) 44 | { 45 | var updated = new List(); 46 | foreach (var point in outPoints) 47 | { 48 | var old = data.OutputPoints.Find(x => (x.Label == point.label /*|| x.Type == point.type*/) && !updated.Contains(x)); 49 | if (old != null) 50 | { 51 | updated.Add(old); 52 | old.Label = point.label; 53 | old.Max = point.max; 54 | old.Type = point.type; 55 | } 56 | else 57 | { 58 | old = data.AddOutputPoint(point.label, point.type, point.max); 59 | updated.Add(old); 60 | } 61 | } 62 | data.OutputPoints.Clear(); 63 | data.OutputPoints.AddRange(updated); 64 | } 65 | } 66 | protected virtual IEnumerable inPoints { get { return null; } } 67 | protected virtual IEnumerable outPoints { get{ return null; } } 68 | } 69 | 70 | } 71 | -------------------------------------------------------------------------------- /NodeGraph/Core/DataModel/Node.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: c0ef623add767445284d290e629624fe 3 | timeCreated: 1494625785 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /NodeGraph/Core/DataModel/NodeData.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: e92b488a6e4e44b0ba8022885f55f087 3 | timeCreated: 1494625785 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /NodeGraph/Core/DataModel/NodeGraphObj.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: eec4882d68a9346b3b5f8ecf1e38a534 3 | timeCreated: 1494625785 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /NodeGraph/Core/DataModel/Point.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | using UnityEngine.UI; 3 | using UnityEngine.Audio; 4 | using UnityEngine.Events; 5 | using UnityEngine.Sprites; 6 | using UnityEngine.Scripting; 7 | using UnityEngine.Assertions; 8 | using UnityEngine.EventSystems; 9 | using UnityEngine.Assertions.Must; 10 | using UnityEngine.Assertions.Comparers; 11 | using System.Collections; 12 | using System.Collections.Generic; 13 | 14 | namespace NodeGraph.DataModel 15 | { 16 | [System.Serializable] 17 | public struct Point 18 | { 19 | public string label; 20 | public string type; 21 | public int max; 22 | public Point(string label, string type, int max = 1) 23 | { 24 | this.label = label; 25 | this.type = type; 26 | this.max = max; 27 | } 28 | } 29 | } -------------------------------------------------------------------------------- /NodeGraph/Core/DataModel/Point.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 6c41c6a57ac7e9641a06aff005561dbc 3 | timeCreated: 1515403516 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /NodeGraph/Core/Exception.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 8e3a3bf53490948d1ad369577a66b263 3 | folderAsset: yes 4 | timeCreated: 1494625784 5 | licenseType: Pro 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /NodeGraph/Core/Exception/AssetBundleGraphException.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using UnityEngine; 3 | using System.Collections; 4 | 5 | namespace NodeGraph { 6 | 7 | public class DataModelException : Exception { 8 | public DataModelException(string message) : base(message) { 9 | } 10 | } 11 | } -------------------------------------------------------------------------------- /NodeGraph/Core/Exception/AssetBundleGraphException.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 4f4afbfedc128456c8531368b170d036 3 | timeCreated: 1494625784 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /NodeGraph/Core/Exception/AssetReferenceException.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using UnityEngine; 3 | using System.Collections; 4 | 5 | -------------------------------------------------------------------------------- /NodeGraph/Core/Exception/AssetReferenceException.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: a41d2c466f24e42bc8aea8a0a0a45eb4 3 | timeCreated: 1494625785 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /NodeGraph/Core/Exception/NodeException.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | 3 | namespace NodeGraph { 4 | public class NodeException : Exception { 5 | public readonly string reason; 6 | public readonly string Id; 7 | 8 | public NodeException (string reason, string nodeId) { 9 | this.reason = reason; 10 | this.Id = nodeId; 11 | } 12 | } 13 | } -------------------------------------------------------------------------------- /NodeGraph/Core/Exception/NodeException.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 220bd545cb0f64493b48cad989fd4fae 3 | timeCreated: 1494625784 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /NodeGraph/Core/Libs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 19f44f51e63d849839580c465de537a1 3 | folderAsset: yes 4 | timeCreated: 1494625784 5 | licenseType: Pro 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /NodeGraph/Core/Libs/CustomScriptUtility.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | 3 | namespace NodeGraph { 4 | public static class CustomScriptUtility { 5 | 6 | static readonly bool debug = false; 7 | 8 | public static string DecodeString(string data) { 9 | if(data.StartsWith(NGSettings.BASE64_IDENTIFIER)) { 10 | var bytes = Convert.FromBase64String(data.Substring(NGSettings.BASE64_IDENTIFIER.Length)); 11 | data = System.Text.Encoding.UTF8.GetString(bytes); 12 | } 13 | return data; 14 | } 15 | public static string EncodeString(string data) { 16 | if(debug) { 17 | return data; 18 | } else { 19 | return NGSettings.BASE64_IDENTIFIER + 20 | Convert.ToBase64String( System.Text.Encoding.UTF8.GetBytes(data)); 21 | } 22 | } 23 | } 24 | } 25 | -------------------------------------------------------------------------------- /NodeGraph/Core/Libs/CustomScriptUtility.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: dab20ed5a5e3e40d8a69e2f6cee60fe2 3 | timeCreated: 1494625785 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /NodeGraph/Core/Libs/MiniJSONForAssetGraph.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 785a88dedbaea4eb5b50019325ee54b1 3 | timeCreated: 1494625784 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /NodeGraph/Core/Libs/Settings.cs: -------------------------------------------------------------------------------- 1 | using System.IO; 2 | using UnityEngine; 3 | 4 | namespace NodeGraph 5 | { 6 | public class NGSettings 7 | { 8 | /* 9 | if true, ignore .meta files inside NodeGraph.DataModel. 10 | */ 11 | public const bool IGNORE_META = true; 12 | 13 | 14 | 15 | public const string GUI_TEXT_SETTINGTEMPLATE_MODEL = "Model"; 16 | public const string GUI_TEXT_SETTINGTEMPLATE_AUDIO = "Audio"; 17 | public const string GUI_TEXT_SETTINGTEMPLATE_TEXTURE = "Texture"; 18 | public const string GUI_TEXT_SETTINGTEMPLATE_VIDEO = "Video"; 19 | 20 | public const string UNITY_METAFILE_EXTENSION = ".meta"; 21 | public const string DOTSTART_HIDDEN_FILE_HEADSTRING = "."; 22 | public const string MANIFEST_FOOTER = ".manifest"; 23 | public const char UNITY_FOLDER_SEPARATOR = '/';// Mac/Windows/Linux can use '/' in Unity. 24 | public const char KEYWORD_WILDCARD = '*'; 25 | 26 | 27 | 28 | public const float WINDOW_SPAN = 20f; 29 | 30 | public const string GROUPING_KEYWORD_DEFAULT = "/Group_*/"; 31 | public const string BUNDLECONFIG_BUNDLENAME_TEMPLATE_DEFAULT = "bundle_*"; 32 | 33 | // by default, NodeGraph.DataModel's node has only 1 InputPoint. and 34 | // this is only one definition of it's label. 35 | public const string BASE64_IDENTIFIER = "B64|"; 36 | public const string BUNDLECONFIG_BUNDLE_OUTPUTPOINT_LABEL = "bundles"; 37 | public const string BUNDLECONFIG_VARIANTNAME_DEFAULT = ""; 38 | 39 | public const string DEFAULT_FILTER_KEYWORD = ""; 40 | public const string DEFAULT_FILTER_KEYTYPE = "Any"; 41 | 42 | public const string FILTER_KEYWORD_WILDCARD = "*"; 43 | 44 | public const string NODE_INPUTPOINT_FIXED_LABEL = "FIXED_INPUTPOINT_ID"; 45 | 46 | public static string GRAPH_SEARCH_CONDITION { get { return "t:" + typeof(NodeGraph.DataModel.NodeGraphObj).FullName; } } 47 | } 48 | } 49 | -------------------------------------------------------------------------------- /NodeGraph/Core/Libs/Settings.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 0dc4e5f7e0a4ccc41a239f6cadcb1e7d 3 | timeCreated: 1513242162 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /NodeGraph/Core/Utilitys.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 3d63e522ddeb2414980c56cb717d3780 3 | folderAsset: yes 4 | timeCreated: 1513243612 5 | licenseType: Pro 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /NodeGraph/Core/Utilitys/LogUtility.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | using System; 3 | using System.Collections; 4 | 5 | namespace NodeGraph { 6 | 7 | public class LogUtility { 8 | 9 | public static readonly string kTag = "Node"; 10 | 11 | private static Logger s_logger; 12 | 13 | public static Logger Logger { 14 | get { 15 | if(s_logger == null) { 16 | #if UNITY_2017_1_OR_NEWER 17 | s_logger = new Logger(Debug.unityLogger.logHandler); 18 | #else 19 | s_logger = new Logger(Debug.logger.logHandler); 20 | #endif 21 | } 22 | 23 | return s_logger; 24 | } 25 | } 26 | } 27 | } 28 | -------------------------------------------------------------------------------- /NodeGraph/Core/Utilitys/LogUtility.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: a58617e7f893049179cb9ed32310dbfc 3 | timeCreated: 1494625785 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /NodeGraph/Core/Utilitys/ScriptObjectCatchUtil.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | using UnityEngine.UI; 3 | using UnityEngine.Events; 4 | using System.Collections; 5 | using System.Collections.Generic; 6 | namespace NodeGraph { 7 | public class ScriptObjectCatchUtil 8 | { 9 | private static Dictionary typeCatch = new Dictionary(); 10 | private static Dictionary jsonCatch = new Dictionary(); 11 | 12 | public static void Catch(string id,ScriptableObject data) 13 | { 14 | if (data != null){ 15 | Catch(id, data.GetType().FullName, JsonUtility.ToJson(data)); 16 | } 17 | } 18 | public static ScriptableObject Revert(string id) 19 | { 20 | try 21 | { 22 | var json = GetJson(id); 23 | var type = GetType(id); 24 | if (!string.IsNullOrEmpty(json) && !string.IsNullOrEmpty(type)) 25 | { 26 | var m_node = ScriptableObject.CreateInstance(type); 27 | JsonUtility.FromJsonOverwrite(json, m_node); 28 | return m_node; 29 | } 30 | return null; 31 | } 32 | catch (System.Exception) 33 | { 34 | throw; 35 | } 36 | 37 | } 38 | 39 | private static string GetType(string hash) 40 | { 41 | string type = null; 42 | typeCatch.TryGetValue(hash, out type); 43 | return type; 44 | } 45 | private static string GetJson(string hash) 46 | { 47 | string json = null; 48 | jsonCatch.TryGetValue(hash, out json); 49 | return json; 50 | } 51 | private static void Catch(string hash, string type, string json) 52 | { 53 | typeCatch[hash] = type; 54 | jsonCatch[hash] = json; 55 | } 56 | } 57 | } -------------------------------------------------------------------------------- /NodeGraph/Core/Utilitys/ScriptObjectCatchUtil.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 13dfb53dbf1ac364694310089a904c66 3 | timeCreated: 1533792172 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /NodeGraph/Core/Utilitys/SerializeUtil.cs: -------------------------------------------------------------------------------- 1 | using System.Collections; 2 | using System.Collections.Generic; 3 | using UnityEngine; 4 | 5 | using Model = NodeGraph.DataModel; 6 | 7 | namespace NodeGraph 8 | { 9 | /// 10 | /// 从JsonGraphUtility简化,只能用于运行时 11 | /// 12 | public class SerializeUtil 13 | { 14 | public static List DeserializeGraphs(string json) where T : Model.NodeGraphObj 15 | { 16 | List graphs = new List(); 17 | var jsonnode = JSON.Parse(json); 18 | Debug.Log(jsonnode); 19 | 20 | if (jsonnode.AsArray != null) 21 | { 22 | foreach (var node in jsonnode.AsArray) 23 | { 24 | var graph = NodeGraph.SerializeUtil.DeserializeGraph(node.ToString()); 25 | if(graph != null){ 26 | graphs.Add(graph); 27 | } 28 | } 29 | } 30 | else 31 | { 32 | var graph= NodeGraph.SerializeUtil.DeserializeGraph(json); 33 | if (graph != null) 34 | { 35 | graphs.Add(graph); 36 | } 37 | } 38 | return graphs; 39 | } 40 | 41 | public static T DeserializeGraph(string json) where T: Model.NodeGraphObj 42 | { 43 | var jsonNode = JSONClass.Parse(json); 44 | var graph = ScriptableObject.CreateInstance(); 45 | 46 | json = json.Replace("bool", "Boolean"); 47 | JsonUtility.FromJsonOverwrite(json, graph); 48 | 49 | for (int i = 0; i < jsonNode["m_allNodes"].AsArray.Count; i++) 50 | { 51 | var item = jsonNode["m_allNodes"][i]["m_node"]; 52 | var obj = ScriptableObject.CreateInstance(item["type"].Value) as Model.Node; 53 | JsonUtility.FromJsonOverwrite(item["json"], obj); 54 | obj.name = obj.GetType().FullName; 55 | graph.Nodes[i].Object = (obj); 56 | } 57 | 58 | 59 | for (int i = 0; i < jsonNode["m_allConnections"].AsArray.Count; i++) 60 | { 61 | var item = jsonNode["m_allConnections"][i]["m_connection"]; 62 | var obj = ScriptableObject.CreateInstance(item["type"].Value) as Model.Connection; 63 | JsonUtility.FromJsonOverwrite(item["json"], obj); 64 | obj.name = obj.GetType().FullName; 65 | graph.Connections[i].Object = (obj); 66 | } 67 | 68 | return graph; 69 | } 70 | } 71 | } -------------------------------------------------------------------------------- /NodeGraph/Core/Utilitys/SerializeUtil.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 4a6a91a12dd56c544ae7b2b6d63089a3 3 | timeCreated: 1533952436 4 | licenseType: Free 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /NodeGraph/Editor.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 88597510841601f49aa72ec7a10c1905 3 | folderAsset: yes 4 | timeCreated: 1527037670 5 | licenseType: Pro 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /NodeGraph/Editor/Attribute.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 366222bb0648fb14db1b2046c2498a2d 3 | folderAsset: yes 4 | timeCreated: 1513240069 5 | licenseType: Pro 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /NodeGraph/Editor/Attribute/CustomNodeDrawer.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | using UnityEngine.UI; 3 | using UnityEngine.Audio; 4 | using UnityEngine.Events; 5 | using UnityEngine.Sprites; 6 | using UnityEngine.Scripting; 7 | using UnityEngine.Assertions; 8 | using UnityEngine.EventSystems; 9 | using UnityEngine.Assertions.Must; 10 | using UnityEngine.Assertions.Comparers; 11 | using System.Collections; 12 | using System.Collections.Generic; 13 | 14 | using System; 15 | namespace NodeGraph 16 | { 17 | [AttributeUsage(AttributeTargets.Class)] 18 | public class CustomNodeView : Attribute 19 | { 20 | public List targetTypes; 21 | public CustomNodeView(params Type[] types) 22 | { 23 | targetTypes = new List(); 24 | this.targetTypes.AddRange(types); 25 | } 26 | } 27 | 28 | } -------------------------------------------------------------------------------- /NodeGraph/Editor/Attribute/CustomNodeDrawer.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: c3ee9a75fcbee154e86e2da3a580d481 3 | timeCreated: 1513240081 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /NodeGraph/Editor/DefultSkin.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: e6d0f69d8dee8f847b4989fd332351ac 3 | folderAsset: yes 4 | timeCreated: 1529903721 5 | licenseType: Pro 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /NodeGraph/Editor/DefultSkin/NodeImage.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: b9ba3c3f58d8248e5b038dc004496686 3 | folderAsset: yes 4 | timeCreated: 1488091594 5 | licenseType: Pro 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /NodeGraph/Editor/DefultSkin/NodeImage/node0.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zouhunter/unity-nodegraph-frame/f5c6f781e164e515bedd73d906b9989fb2dad7f4/NodeGraph/Editor/DefultSkin/NodeImage/node0.png -------------------------------------------------------------------------------- /NodeGraph/Editor/DefultSkin/NodeImage/node0.png.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 7e74ddcb4e22c4cfc94b454f0aeb1573 3 | timeCreated: 1488108326 4 | licenseType: Pro 5 | TextureImporter: 6 | fileIDToRecycleName: {} 7 | serializedVersion: 2 8 | mipmaps: 9 | mipMapMode: 0 10 | enableMipMap: 0 11 | linearTexture: 1 12 | correctGamma: 0 13 | fadeOut: 0 14 | borderMipMap: 0 15 | mipMapFadeDistanceStart: 1 16 | mipMapFadeDistanceEnd: 3 17 | bumpmap: 18 | convertToNormalMap: 0 19 | externalNormalMap: 0 20 | heightScale: 0.25 21 | normalMapFilter: 0 22 | isReadable: 0 23 | grayScaleToAlpha: 0 24 | generateCubemap: 0 25 | cubemapConvolution: 0 26 | cubemapConvolutionSteps: 7 27 | cubemapConvolutionExponent: 1.5 28 | seamlessCubemap: 0 29 | textureFormat: -3 30 | maxTextureSize: 2048 31 | textureSettings: 32 | filterMode: 1 33 | aniso: 1 34 | mipBias: -1 35 | wrapMode: 1 36 | nPOTScale: 0 37 | lightmap: 0 38 | rGBM: 0 39 | compressionQuality: 50 40 | allowsAlphaSplitting: 0 41 | spriteMode: 0 42 | spriteExtrude: 1 43 | spriteMeshType: 1 44 | alignment: 0 45 | spritePivot: {x: 0.5, y: 0.5} 46 | spriteBorder: {x: 0, y: 0, z: 0, w: 0} 47 | spritePixelsToUnits: 100 48 | alphaIsTransparency: 1 49 | spriteTessellationDetail: -1 50 | textureType: 2 51 | buildTargetSettings: [] 52 | spriteSheet: 53 | serializedVersion: 2 54 | sprites: [] 55 | outline: [] 56 | spritePackingTag: 57 | userData: 58 | assetBundleName: 59 | assetBundleVariant: 60 | -------------------------------------------------------------------------------- /NodeGraph/Editor/DefultSkin/NodeImage/node0@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zouhunter/unity-nodegraph-frame/f5c6f781e164e515bedd73d906b9989fb2dad7f4/NodeGraph/Editor/DefultSkin/NodeImage/node0@2x.png -------------------------------------------------------------------------------- /NodeGraph/Editor/DefultSkin/NodeImage/node0@2x.png.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: a5b60c4c9c31a48de997f40e86fce8dd 3 | timeCreated: 1488107595 4 | licenseType: Pro 5 | TextureImporter: 6 | fileIDToRecycleName: {} 7 | serializedVersion: 2 8 | mipmaps: 9 | mipMapMode: 0 10 | enableMipMap: 0 11 | linearTexture: 1 12 | correctGamma: 0 13 | fadeOut: 0 14 | borderMipMap: 0 15 | mipMapFadeDistanceStart: 1 16 | mipMapFadeDistanceEnd: 3 17 | bumpmap: 18 | convertToNormalMap: 0 19 | externalNormalMap: 0 20 | heightScale: 0.25 21 | normalMapFilter: 0 22 | isReadable: 0 23 | grayScaleToAlpha: 0 24 | generateCubemap: 0 25 | cubemapConvolution: 0 26 | cubemapConvolutionSteps: 7 27 | cubemapConvolutionExponent: 1.5 28 | seamlessCubemap: 0 29 | textureFormat: -3 30 | maxTextureSize: 2048 31 | textureSettings: 32 | filterMode: 1 33 | aniso: 1 34 | mipBias: -1 35 | wrapMode: 1 36 | nPOTScale: 0 37 | lightmap: 0 38 | rGBM: 0 39 | compressionQuality: 50 40 | allowsAlphaSplitting: 0 41 | spriteMode: 0 42 | spriteExtrude: 1 43 | spriteMeshType: 1 44 | alignment: 0 45 | spritePivot: {x: 0.5, y: 0.5} 46 | spriteBorder: {x: 0, y: 0, z: 0, w: 0} 47 | spritePixelsToUnits: 100 48 | alphaIsTransparency: 1 49 | spriteTessellationDetail: -1 50 | textureType: 2 51 | buildTargetSettings: [] 52 | spriteSheet: 53 | serializedVersion: 2 54 | sprites: [] 55 | outline: [] 56 | spritePackingTag: 57 | userData: 58 | assetBundleName: 59 | assetBundleVariant: 60 | -------------------------------------------------------------------------------- /NodeGraph/Editor/DefultSkin/NodeImage/node1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zouhunter/unity-nodegraph-frame/f5c6f781e164e515bedd73d906b9989fb2dad7f4/NodeGraph/Editor/DefultSkin/NodeImage/node1.png -------------------------------------------------------------------------------- /NodeGraph/Editor/DefultSkin/NodeImage/node1.png.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 4dff96b374bd7441c8ad7f91fc6a3591 3 | timeCreated: 1488108326 4 | licenseType: Pro 5 | TextureImporter: 6 | fileIDToRecycleName: {} 7 | serializedVersion: 2 8 | mipmaps: 9 | mipMapMode: 0 10 | enableMipMap: 0 11 | linearTexture: 1 12 | correctGamma: 0 13 | fadeOut: 0 14 | borderMipMap: 0 15 | mipMapFadeDistanceStart: 1 16 | mipMapFadeDistanceEnd: 3 17 | bumpmap: 18 | convertToNormalMap: 0 19 | externalNormalMap: 0 20 | heightScale: 0.25 21 | normalMapFilter: 0 22 | isReadable: 0 23 | grayScaleToAlpha: 0 24 | generateCubemap: 0 25 | cubemapConvolution: 0 26 | cubemapConvolutionSteps: 7 27 | cubemapConvolutionExponent: 1.5 28 | seamlessCubemap: 0 29 | textureFormat: -3 30 | maxTextureSize: 2048 31 | textureSettings: 32 | filterMode: 1 33 | aniso: 1 34 | mipBias: -1 35 | wrapMode: 1 36 | nPOTScale: 0 37 | lightmap: 0 38 | rGBM: 0 39 | compressionQuality: 50 40 | allowsAlphaSplitting: 0 41 | spriteMode: 0 42 | spriteExtrude: 1 43 | spriteMeshType: 1 44 | alignment: 0 45 | spritePivot: {x: 0.5, y: 0.5} 46 | spriteBorder: {x: 0, y: 0, z: 0, w: 0} 47 | spritePixelsToUnits: 100 48 | alphaIsTransparency: 1 49 | spriteTessellationDetail: -1 50 | textureType: 2 51 | buildTargetSettings: [] 52 | spriteSheet: 53 | serializedVersion: 2 54 | sprites: [] 55 | outline: [] 56 | spritePackingTag: 57 | userData: 58 | assetBundleName: 59 | assetBundleVariant: 60 | -------------------------------------------------------------------------------- /NodeGraph/Editor/DefultSkin/NodeImage/node1@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zouhunter/unity-nodegraph-frame/f5c6f781e164e515bedd73d906b9989fb2dad7f4/NodeGraph/Editor/DefultSkin/NodeImage/node1@2x.png -------------------------------------------------------------------------------- /NodeGraph/Editor/DefultSkin/NodeImage/node1@2x.png.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 4b51c3dc205df425bb581cfc489b2380 3 | timeCreated: 1488107595 4 | licenseType: Pro 5 | TextureImporter: 6 | fileIDToRecycleName: {} 7 | serializedVersion: 2 8 | mipmaps: 9 | mipMapMode: 0 10 | enableMipMap: 0 11 | linearTexture: 1 12 | correctGamma: 0 13 | fadeOut: 0 14 | borderMipMap: 0 15 | mipMapFadeDistanceStart: 1 16 | mipMapFadeDistanceEnd: 3 17 | bumpmap: 18 | convertToNormalMap: 0 19 | externalNormalMap: 0 20 | heightScale: 0.25 21 | normalMapFilter: 0 22 | isReadable: 0 23 | grayScaleToAlpha: 0 24 | generateCubemap: 0 25 | cubemapConvolution: 0 26 | cubemapConvolutionSteps: 7 27 | cubemapConvolutionExponent: 1.5 28 | seamlessCubemap: 0 29 | textureFormat: -3 30 | maxTextureSize: 2048 31 | textureSettings: 32 | filterMode: 1 33 | aniso: 1 34 | mipBias: -1 35 | wrapMode: 1 36 | nPOTScale: 0 37 | lightmap: 0 38 | rGBM: 0 39 | compressionQuality: 50 40 | allowsAlphaSplitting: 0 41 | spriteMode: 0 42 | spriteExtrude: 1 43 | spriteMeshType: 1 44 | alignment: 0 45 | spritePivot: {x: 0.5, y: 0.5} 46 | spriteBorder: {x: 0, y: 0, z: 0, w: 0} 47 | spritePixelsToUnits: 100 48 | alphaIsTransparency: 1 49 | spriteTessellationDetail: -1 50 | textureType: 2 51 | buildTargetSettings: [] 52 | spriteSheet: 53 | serializedVersion: 2 54 | sprites: [] 55 | outline: [] 56 | spritePackingTag: 57 | userData: 58 | assetBundleName: 59 | assetBundleVariant: 60 | -------------------------------------------------------------------------------- /NodeGraph/Editor/DefultSkin/NodeImage/node2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zouhunter/unity-nodegraph-frame/f5c6f781e164e515bedd73d906b9989fb2dad7f4/NodeGraph/Editor/DefultSkin/NodeImage/node2.png -------------------------------------------------------------------------------- /NodeGraph/Editor/DefultSkin/NodeImage/node2.png.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 7136d73e8820d4135bcd6720bf5f3721 3 | timeCreated: 1488108326 4 | licenseType: Pro 5 | TextureImporter: 6 | fileIDToRecycleName: {} 7 | serializedVersion: 2 8 | mipmaps: 9 | mipMapMode: 0 10 | enableMipMap: 0 11 | linearTexture: 1 12 | correctGamma: 0 13 | fadeOut: 0 14 | borderMipMap: 0 15 | mipMapFadeDistanceStart: 1 16 | mipMapFadeDistanceEnd: 3 17 | bumpmap: 18 | convertToNormalMap: 0 19 | externalNormalMap: 0 20 | heightScale: 0.25 21 | normalMapFilter: 0 22 | isReadable: 0 23 | grayScaleToAlpha: 0 24 | generateCubemap: 0 25 | cubemapConvolution: 0 26 | cubemapConvolutionSteps: 7 27 | cubemapConvolutionExponent: 1.5 28 | seamlessCubemap: 0 29 | textureFormat: -3 30 | maxTextureSize: 2048 31 | textureSettings: 32 | filterMode: 1 33 | aniso: 1 34 | mipBias: -1 35 | wrapMode: 1 36 | nPOTScale: 0 37 | lightmap: 0 38 | rGBM: 0 39 | compressionQuality: 50 40 | allowsAlphaSplitting: 0 41 | spriteMode: 0 42 | spriteExtrude: 1 43 | spriteMeshType: 1 44 | alignment: 0 45 | spritePivot: {x: 0.5, y: 0.5} 46 | spriteBorder: {x: 0, y: 0, z: 0, w: 0} 47 | spritePixelsToUnits: 100 48 | alphaIsTransparency: 1 49 | spriteTessellationDetail: -1 50 | textureType: 2 51 | buildTargetSettings: [] 52 | spriteSheet: 53 | serializedVersion: 2 54 | sprites: [] 55 | outline: [] 56 | spritePackingTag: 57 | userData: 58 | assetBundleName: 59 | assetBundleVariant: 60 | -------------------------------------------------------------------------------- /NodeGraph/Editor/DefultSkin/NodeImage/node2@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zouhunter/unity-nodegraph-frame/f5c6f781e164e515bedd73d906b9989fb2dad7f4/NodeGraph/Editor/DefultSkin/NodeImage/node2@2x.png -------------------------------------------------------------------------------- /NodeGraph/Editor/DefultSkin/NodeImage/node2@2x.png.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 9464586463c434f4a9ca322dc0df1350 3 | timeCreated: 1488107595 4 | licenseType: Pro 5 | TextureImporter: 6 | fileIDToRecycleName: {} 7 | serializedVersion: 2 8 | mipmaps: 9 | mipMapMode: 0 10 | enableMipMap: 0 11 | linearTexture: 1 12 | correctGamma: 0 13 | fadeOut: 0 14 | borderMipMap: 0 15 | mipMapFadeDistanceStart: 1 16 | mipMapFadeDistanceEnd: 3 17 | bumpmap: 18 | convertToNormalMap: 0 19 | externalNormalMap: 0 20 | heightScale: 0.25 21 | normalMapFilter: 0 22 | isReadable: 0 23 | grayScaleToAlpha: 0 24 | generateCubemap: 0 25 | cubemapConvolution: 0 26 | cubemapConvolutionSteps: 7 27 | cubemapConvolutionExponent: 1.5 28 | seamlessCubemap: 0 29 | textureFormat: -3 30 | maxTextureSize: 2048 31 | textureSettings: 32 | filterMode: 1 33 | aniso: 1 34 | mipBias: -1 35 | wrapMode: 1 36 | nPOTScale: 0 37 | lightmap: 0 38 | rGBM: 0 39 | compressionQuality: 50 40 | allowsAlphaSplitting: 0 41 | spriteMode: 0 42 | spriteExtrude: 1 43 | spriteMeshType: 1 44 | alignment: 0 45 | spritePivot: {x: 0.5, y: 0.5} 46 | spriteBorder: {x: 0, y: 0, z: 0, w: 0} 47 | spritePixelsToUnits: 100 48 | alphaIsTransparency: 1 49 | spriteTessellationDetail: -1 50 | textureType: 2 51 | buildTargetSettings: [] 52 | spriteSheet: 53 | serializedVersion: 2 54 | sprites: [] 55 | outline: [] 56 | spritePackingTag: 57 | userData: 58 | assetBundleName: 59 | assetBundleVariant: 60 | -------------------------------------------------------------------------------- /NodeGraph/Editor/DefultSkin/NodeImage/node3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zouhunter/unity-nodegraph-frame/f5c6f781e164e515bedd73d906b9989fb2dad7f4/NodeGraph/Editor/DefultSkin/NodeImage/node3.png -------------------------------------------------------------------------------- /NodeGraph/Editor/DefultSkin/NodeImage/node3.png.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: ed27888e1684140fe8f6cb05957e5b6b 3 | timeCreated: 1488108326 4 | licenseType: Pro 5 | TextureImporter: 6 | fileIDToRecycleName: {} 7 | serializedVersion: 2 8 | mipmaps: 9 | mipMapMode: 0 10 | enableMipMap: 0 11 | linearTexture: 1 12 | correctGamma: 0 13 | fadeOut: 0 14 | borderMipMap: 0 15 | mipMapFadeDistanceStart: 1 16 | mipMapFadeDistanceEnd: 3 17 | bumpmap: 18 | convertToNormalMap: 0 19 | externalNormalMap: 0 20 | heightScale: 0.25 21 | normalMapFilter: 0 22 | isReadable: 0 23 | grayScaleToAlpha: 0 24 | generateCubemap: 0 25 | cubemapConvolution: 0 26 | cubemapConvolutionSteps: 7 27 | cubemapConvolutionExponent: 1.5 28 | seamlessCubemap: 0 29 | textureFormat: -3 30 | maxTextureSize: 2048 31 | textureSettings: 32 | filterMode: 1 33 | aniso: 1 34 | mipBias: -1 35 | wrapMode: 1 36 | nPOTScale: 0 37 | lightmap: 0 38 | rGBM: 0 39 | compressionQuality: 50 40 | allowsAlphaSplitting: 0 41 | spriteMode: 0 42 | spriteExtrude: 1 43 | spriteMeshType: 1 44 | alignment: 0 45 | spritePivot: {x: 0.5, y: 0.5} 46 | spriteBorder: {x: 0, y: 0, z: 0, w: 0} 47 | spritePixelsToUnits: 100 48 | alphaIsTransparency: 1 49 | spriteTessellationDetail: -1 50 | textureType: 2 51 | buildTargetSettings: [] 52 | spriteSheet: 53 | serializedVersion: 2 54 | sprites: [] 55 | outline: [] 56 | spritePackingTag: 57 | userData: 58 | assetBundleName: 59 | assetBundleVariant: 60 | -------------------------------------------------------------------------------- /NodeGraph/Editor/DefultSkin/NodeImage/node3@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zouhunter/unity-nodegraph-frame/f5c6f781e164e515bedd73d906b9989fb2dad7f4/NodeGraph/Editor/DefultSkin/NodeImage/node3@2x.png -------------------------------------------------------------------------------- /NodeGraph/Editor/DefultSkin/NodeImage/node3@2x.png.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 5fa5a4d85cee44cc3a050e131b9b6098 3 | timeCreated: 1488107595 4 | licenseType: Pro 5 | TextureImporter: 6 | fileIDToRecycleName: {} 7 | serializedVersion: 2 8 | mipmaps: 9 | mipMapMode: 0 10 | enableMipMap: 0 11 | linearTexture: 1 12 | correctGamma: 0 13 | fadeOut: 0 14 | borderMipMap: 0 15 | mipMapFadeDistanceStart: 1 16 | mipMapFadeDistanceEnd: 3 17 | bumpmap: 18 | convertToNormalMap: 0 19 | externalNormalMap: 0 20 | heightScale: 0.25 21 | normalMapFilter: 0 22 | isReadable: 0 23 | grayScaleToAlpha: 0 24 | generateCubemap: 0 25 | cubemapConvolution: 0 26 | cubemapConvolutionSteps: 7 27 | cubemapConvolutionExponent: 1.5 28 | seamlessCubemap: 0 29 | textureFormat: -3 30 | maxTextureSize: 2048 31 | textureSettings: 32 | filterMode: 1 33 | aniso: 1 34 | mipBias: -1 35 | wrapMode: 1 36 | nPOTScale: 0 37 | lightmap: 0 38 | rGBM: 0 39 | compressionQuality: 50 40 | allowsAlphaSplitting: 0 41 | spriteMode: 0 42 | spriteExtrude: 1 43 | spriteMeshType: 1 44 | alignment: 0 45 | spritePivot: {x: 0.5, y: 0.5} 46 | spriteBorder: {x: 0, y: 0, z: 0, w: 0} 47 | spritePixelsToUnits: 100 48 | alphaIsTransparency: 1 49 | spriteTessellationDetail: -1 50 | textureType: 2 51 | buildTargetSettings: [] 52 | spriteSheet: 53 | serializedVersion: 2 54 | sprites: [] 55 | outline: [] 56 | spritePackingTag: 57 | userData: 58 | assetBundleName: 59 | assetBundleVariant: 60 | -------------------------------------------------------------------------------- /NodeGraph/Editor/DefultSkin/NodeImage/node4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zouhunter/unity-nodegraph-frame/f5c6f781e164e515bedd73d906b9989fb2dad7f4/NodeGraph/Editor/DefultSkin/NodeImage/node4.png -------------------------------------------------------------------------------- /NodeGraph/Editor/DefultSkin/NodeImage/node4.png.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: e85ee2947fe44422d90dab56e1efdd91 3 | timeCreated: 1488108326 4 | licenseType: Pro 5 | TextureImporter: 6 | fileIDToRecycleName: {} 7 | serializedVersion: 2 8 | mipmaps: 9 | mipMapMode: 0 10 | enableMipMap: 0 11 | linearTexture: 1 12 | correctGamma: 0 13 | fadeOut: 0 14 | borderMipMap: 0 15 | mipMapFadeDistanceStart: 1 16 | mipMapFadeDistanceEnd: 3 17 | bumpmap: 18 | convertToNormalMap: 0 19 | externalNormalMap: 0 20 | heightScale: 0.25 21 | normalMapFilter: 0 22 | isReadable: 0 23 | grayScaleToAlpha: 0 24 | generateCubemap: 0 25 | cubemapConvolution: 0 26 | cubemapConvolutionSteps: 7 27 | cubemapConvolutionExponent: 1.5 28 | seamlessCubemap: 0 29 | textureFormat: -3 30 | maxTextureSize: 2048 31 | textureSettings: 32 | filterMode: 1 33 | aniso: 1 34 | mipBias: -1 35 | wrapMode: 1 36 | nPOTScale: 0 37 | lightmap: 0 38 | rGBM: 0 39 | compressionQuality: 50 40 | allowsAlphaSplitting: 0 41 | spriteMode: 0 42 | spriteExtrude: 1 43 | spriteMeshType: 1 44 | alignment: 0 45 | spritePivot: {x: 0.5, y: 0.5} 46 | spriteBorder: {x: 0, y: 0, z: 0, w: 0} 47 | spritePixelsToUnits: 100 48 | alphaIsTransparency: 1 49 | spriteTessellationDetail: -1 50 | textureType: 2 51 | buildTargetSettings: [] 52 | spriteSheet: 53 | serializedVersion: 2 54 | sprites: [] 55 | outline: [] 56 | spritePackingTag: 57 | userData: 58 | assetBundleName: 59 | assetBundleVariant: 60 | -------------------------------------------------------------------------------- /NodeGraph/Editor/DefultSkin/NodeImage/node4@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zouhunter/unity-nodegraph-frame/f5c6f781e164e515bedd73d906b9989fb2dad7f4/NodeGraph/Editor/DefultSkin/NodeImage/node4@2x.png -------------------------------------------------------------------------------- /NodeGraph/Editor/DefultSkin/NodeImage/node4@2x.png.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 026474f5e29544af185a526bd1aebdf6 3 | timeCreated: 1488107595 4 | licenseType: Pro 5 | TextureImporter: 6 | fileIDToRecycleName: {} 7 | serializedVersion: 2 8 | mipmaps: 9 | mipMapMode: 0 10 | enableMipMap: 0 11 | linearTexture: 1 12 | correctGamma: 0 13 | fadeOut: 0 14 | borderMipMap: 0 15 | mipMapFadeDistanceStart: 1 16 | mipMapFadeDistanceEnd: 3 17 | bumpmap: 18 | convertToNormalMap: 0 19 | externalNormalMap: 0 20 | heightScale: 0.25 21 | normalMapFilter: 0 22 | isReadable: 0 23 | grayScaleToAlpha: 0 24 | generateCubemap: 0 25 | cubemapConvolution: 0 26 | cubemapConvolutionSteps: 7 27 | cubemapConvolutionExponent: 1.5 28 | seamlessCubemap: 0 29 | textureFormat: -3 30 | maxTextureSize: 2048 31 | textureSettings: 32 | filterMode: 1 33 | aniso: 1 34 | mipBias: -1 35 | wrapMode: 1 36 | nPOTScale: 0 37 | lightmap: 0 38 | rGBM: 0 39 | compressionQuality: 50 40 | allowsAlphaSplitting: 0 41 | spriteMode: 0 42 | spriteExtrude: 1 43 | spriteMeshType: 1 44 | alignment: 0 45 | spritePivot: {x: 0.5, y: 0.5} 46 | spriteBorder: {x: 0, y: 0, z: 0, w: 0} 47 | spritePixelsToUnits: 100 48 | alphaIsTransparency: 1 49 | spriteTessellationDetail: -1 50 | textureType: 2 51 | buildTargetSettings: [] 52 | spriteSheet: 53 | serializedVersion: 2 54 | sprites: [] 55 | outline: [] 56 | spritePackingTag: 57 | userData: 58 | assetBundleName: 59 | assetBundleVariant: 60 | -------------------------------------------------------------------------------- /NodeGraph/Editor/DefultSkin/NodeImage/node5.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zouhunter/unity-nodegraph-frame/f5c6f781e164e515bedd73d906b9989fb2dad7f4/NodeGraph/Editor/DefultSkin/NodeImage/node5.png -------------------------------------------------------------------------------- /NodeGraph/Editor/DefultSkin/NodeImage/node5.png.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 89baa4f52fa38496e8d0d6808762034f 3 | timeCreated: 1488108326 4 | licenseType: Pro 5 | TextureImporter: 6 | fileIDToRecycleName: {} 7 | serializedVersion: 2 8 | mipmaps: 9 | mipMapMode: 0 10 | enableMipMap: 0 11 | linearTexture: 1 12 | correctGamma: 0 13 | fadeOut: 0 14 | borderMipMap: 0 15 | mipMapFadeDistanceStart: 1 16 | mipMapFadeDistanceEnd: 3 17 | bumpmap: 18 | convertToNormalMap: 0 19 | externalNormalMap: 0 20 | heightScale: 0.25 21 | normalMapFilter: 0 22 | isReadable: 0 23 | grayScaleToAlpha: 0 24 | generateCubemap: 0 25 | cubemapConvolution: 0 26 | cubemapConvolutionSteps: 7 27 | cubemapConvolutionExponent: 1.5 28 | seamlessCubemap: 0 29 | textureFormat: -3 30 | maxTextureSize: 2048 31 | textureSettings: 32 | filterMode: 1 33 | aniso: 1 34 | mipBias: -1 35 | wrapMode: 1 36 | nPOTScale: 0 37 | lightmap: 0 38 | rGBM: 0 39 | compressionQuality: 50 40 | allowsAlphaSplitting: 0 41 | spriteMode: 0 42 | spriteExtrude: 1 43 | spriteMeshType: 1 44 | alignment: 0 45 | spritePivot: {x: 0.5, y: 0.5} 46 | spriteBorder: {x: 0, y: 0, z: 0, w: 0} 47 | spritePixelsToUnits: 100 48 | alphaIsTransparency: 1 49 | spriteTessellationDetail: -1 50 | textureType: 2 51 | buildTargetSettings: [] 52 | spriteSheet: 53 | serializedVersion: 2 54 | sprites: [] 55 | outline: [] 56 | spritePackingTag: 57 | userData: 58 | assetBundleName: 59 | assetBundleVariant: 60 | -------------------------------------------------------------------------------- /NodeGraph/Editor/DefultSkin/NodeImage/node5@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zouhunter/unity-nodegraph-frame/f5c6f781e164e515bedd73d906b9989fb2dad7f4/NodeGraph/Editor/DefultSkin/NodeImage/node5@2x.png -------------------------------------------------------------------------------- /NodeGraph/Editor/DefultSkin/NodeImage/node5@2x.png.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: b8034c807692d4dc8975b8b0df202123 3 | timeCreated: 1488107595 4 | licenseType: Pro 5 | TextureImporter: 6 | fileIDToRecycleName: {} 7 | serializedVersion: 2 8 | mipmaps: 9 | mipMapMode: 0 10 | enableMipMap: 0 11 | linearTexture: 1 12 | correctGamma: 0 13 | fadeOut: 0 14 | borderMipMap: 0 15 | mipMapFadeDistanceStart: 1 16 | mipMapFadeDistanceEnd: 3 17 | bumpmap: 18 | convertToNormalMap: 0 19 | externalNormalMap: 0 20 | heightScale: 0.25 21 | normalMapFilter: 0 22 | isReadable: 0 23 | grayScaleToAlpha: 0 24 | generateCubemap: 0 25 | cubemapConvolution: 0 26 | cubemapConvolutionSteps: 7 27 | cubemapConvolutionExponent: 1.5 28 | seamlessCubemap: 0 29 | textureFormat: -3 30 | maxTextureSize: 2048 31 | textureSettings: 32 | filterMode: 1 33 | aniso: 1 34 | mipBias: -1 35 | wrapMode: 1 36 | nPOTScale: 0 37 | lightmap: 0 38 | rGBM: 0 39 | compressionQuality: 50 40 | allowsAlphaSplitting: 0 41 | spriteMode: 0 42 | spriteExtrude: 1 43 | spriteMeshType: 1 44 | alignment: 0 45 | spritePivot: {x: 0.5, y: 0.5} 46 | spriteBorder: {x: 0, y: 0, z: 0, w: 0} 47 | spritePixelsToUnits: 100 48 | alphaIsTransparency: 1 49 | spriteTessellationDetail: -1 50 | textureType: 2 51 | buildTargetSettings: [] 52 | spriteSheet: 53 | serializedVersion: 2 54 | sprites: [] 55 | outline: [] 56 | spritePackingTag: 57 | userData: 58 | assetBundleName: 59 | assetBundleVariant: 60 | -------------------------------------------------------------------------------- /NodeGraph/Editor/DefultSkin/NodeImage/node6.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zouhunter/unity-nodegraph-frame/f5c6f781e164e515bedd73d906b9989fb2dad7f4/NodeGraph/Editor/DefultSkin/NodeImage/node6.png -------------------------------------------------------------------------------- /NodeGraph/Editor/DefultSkin/NodeImage/node6.png.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 406e7a664cf5b47b8bea6929347c3122 3 | timeCreated: 1488108326 4 | licenseType: Pro 5 | TextureImporter: 6 | fileIDToRecycleName: {} 7 | serializedVersion: 2 8 | mipmaps: 9 | mipMapMode: 0 10 | enableMipMap: 0 11 | linearTexture: 1 12 | correctGamma: 0 13 | fadeOut: 0 14 | borderMipMap: 0 15 | mipMapFadeDistanceStart: 1 16 | mipMapFadeDistanceEnd: 3 17 | bumpmap: 18 | convertToNormalMap: 0 19 | externalNormalMap: 0 20 | heightScale: 0.25 21 | normalMapFilter: 0 22 | isReadable: 0 23 | grayScaleToAlpha: 0 24 | generateCubemap: 0 25 | cubemapConvolution: 0 26 | cubemapConvolutionSteps: 7 27 | cubemapConvolutionExponent: 1.5 28 | seamlessCubemap: 0 29 | textureFormat: -3 30 | maxTextureSize: 2048 31 | textureSettings: 32 | filterMode: 1 33 | aniso: 1 34 | mipBias: -1 35 | wrapMode: 1 36 | nPOTScale: 0 37 | lightmap: 0 38 | rGBM: 0 39 | compressionQuality: 50 40 | allowsAlphaSplitting: 0 41 | spriteMode: 0 42 | spriteExtrude: 1 43 | spriteMeshType: 1 44 | alignment: 0 45 | spritePivot: {x: 0.5, y: 0.5} 46 | spriteBorder: {x: 0, y: 0, z: 0, w: 0} 47 | spritePixelsToUnits: 100 48 | alphaIsTransparency: 1 49 | spriteTessellationDetail: -1 50 | textureType: 2 51 | buildTargetSettings: [] 52 | spriteSheet: 53 | serializedVersion: 2 54 | sprites: [] 55 | outline: [] 56 | spritePackingTag: 57 | userData: 58 | assetBundleName: 59 | assetBundleVariant: 60 | -------------------------------------------------------------------------------- /NodeGraph/Editor/DefultSkin/NodeImage/node6@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zouhunter/unity-nodegraph-frame/f5c6f781e164e515bedd73d906b9989fb2dad7f4/NodeGraph/Editor/DefultSkin/NodeImage/node6@2x.png -------------------------------------------------------------------------------- /NodeGraph/Editor/DefultSkin/NodeImage/node6@2x.png.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 009ae346a3f1b42eb864a151c39805d3 3 | timeCreated: 1488107595 4 | licenseType: Pro 5 | TextureImporter: 6 | fileIDToRecycleName: {} 7 | serializedVersion: 2 8 | mipmaps: 9 | mipMapMode: 0 10 | enableMipMap: 0 11 | linearTexture: 1 12 | correctGamma: 0 13 | fadeOut: 0 14 | borderMipMap: 0 15 | mipMapFadeDistanceStart: 1 16 | mipMapFadeDistanceEnd: 3 17 | bumpmap: 18 | convertToNormalMap: 0 19 | externalNormalMap: 0 20 | heightScale: 0.25 21 | normalMapFilter: 0 22 | isReadable: 0 23 | grayScaleToAlpha: 0 24 | generateCubemap: 0 25 | cubemapConvolution: 0 26 | cubemapConvolutionSteps: 7 27 | cubemapConvolutionExponent: 1.5 28 | seamlessCubemap: 0 29 | textureFormat: -3 30 | maxTextureSize: 2048 31 | textureSettings: 32 | filterMode: 1 33 | aniso: 1 34 | mipBias: -1 35 | wrapMode: 1 36 | nPOTScale: 0 37 | lightmap: 0 38 | rGBM: 0 39 | compressionQuality: 50 40 | allowsAlphaSplitting: 0 41 | spriteMode: 0 42 | spriteExtrude: 1 43 | spriteMeshType: 1 44 | alignment: 0 45 | spritePivot: {x: 0.5, y: 0.5} 46 | spriteBorder: {x: 0, y: 0, z: 0, w: 0} 47 | spritePixelsToUnits: 100 48 | alphaIsTransparency: 1 49 | spriteTessellationDetail: -1 50 | textureType: 2 51 | buildTargetSettings: [] 52 | spriteSheet: 53 | serializedVersion: 2 54 | sprites: [] 55 | outline: [] 56 | spritePackingTag: 57 | userData: 58 | assetBundleName: 59 | assetBundleVariant: 60 | -------------------------------------------------------------------------------- /NodeGraph/Editor/DefultSkin/NodeImage/node7.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zouhunter/unity-nodegraph-frame/f5c6f781e164e515bedd73d906b9989fb2dad7f4/NodeGraph/Editor/DefultSkin/NodeImage/node7.png -------------------------------------------------------------------------------- /NodeGraph/Editor/DefultSkin/NodeImage/node7.png.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: d5367ed2f72994b55af0964b29a5134a 3 | timeCreated: 1488108326 4 | licenseType: Pro 5 | TextureImporter: 6 | fileIDToRecycleName: {} 7 | serializedVersion: 2 8 | mipmaps: 9 | mipMapMode: 0 10 | enableMipMap: 0 11 | linearTexture: 1 12 | correctGamma: 0 13 | fadeOut: 0 14 | borderMipMap: 0 15 | mipMapFadeDistanceStart: 1 16 | mipMapFadeDistanceEnd: 3 17 | bumpmap: 18 | convertToNormalMap: 0 19 | externalNormalMap: 0 20 | heightScale: 0.25 21 | normalMapFilter: 0 22 | isReadable: 0 23 | grayScaleToAlpha: 0 24 | generateCubemap: 0 25 | cubemapConvolution: 0 26 | cubemapConvolutionSteps: 7 27 | cubemapConvolutionExponent: 1.5 28 | seamlessCubemap: 0 29 | textureFormat: -3 30 | maxTextureSize: 2048 31 | textureSettings: 32 | filterMode: 1 33 | aniso: 1 34 | mipBias: -1 35 | wrapMode: 1 36 | nPOTScale: 0 37 | lightmap: 0 38 | rGBM: 0 39 | compressionQuality: 50 40 | allowsAlphaSplitting: 0 41 | spriteMode: 0 42 | spriteExtrude: 1 43 | spriteMeshType: 1 44 | alignment: 0 45 | spritePivot: {x: 0.5, y: 0.5} 46 | spriteBorder: {x: 0, y: 0, z: 0, w: 0} 47 | spritePixelsToUnits: 100 48 | alphaIsTransparency: 1 49 | spriteTessellationDetail: -1 50 | textureType: 2 51 | buildTargetSettings: [] 52 | spriteSheet: 53 | serializedVersion: 2 54 | sprites: [] 55 | outline: [] 56 | spritePackingTag: 57 | userData: 58 | assetBundleName: 59 | assetBundleVariant: 60 | -------------------------------------------------------------------------------- /NodeGraph/Editor/DefultSkin/NodeImage/node7@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zouhunter/unity-nodegraph-frame/f5c6f781e164e515bedd73d906b9989fb2dad7f4/NodeGraph/Editor/DefultSkin/NodeImage/node7@2x.png -------------------------------------------------------------------------------- /NodeGraph/Editor/DefultSkin/NodeImage/node7@2x.png.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: afc3569f912a446bc839b0acf18ac47c 3 | timeCreated: 1488107595 4 | licenseType: Pro 5 | TextureImporter: 6 | fileIDToRecycleName: {} 7 | serializedVersion: 2 8 | mipmaps: 9 | mipMapMode: 0 10 | enableMipMap: 0 11 | linearTexture: 1 12 | correctGamma: 0 13 | fadeOut: 0 14 | borderMipMap: 0 15 | mipMapFadeDistanceStart: 1 16 | mipMapFadeDistanceEnd: 3 17 | bumpmap: 18 | convertToNormalMap: 0 19 | externalNormalMap: 0 20 | heightScale: 0.25 21 | normalMapFilter: 0 22 | isReadable: 0 23 | grayScaleToAlpha: 0 24 | generateCubemap: 0 25 | cubemapConvolution: 0 26 | cubemapConvolutionSteps: 7 27 | cubemapConvolutionExponent: 1.5 28 | seamlessCubemap: 0 29 | textureFormat: -3 30 | maxTextureSize: 2048 31 | textureSettings: 32 | filterMode: 1 33 | aniso: 1 34 | mipBias: -1 35 | wrapMode: 1 36 | nPOTScale: 0 37 | lightmap: 0 38 | rGBM: 0 39 | compressionQuality: 50 40 | allowsAlphaSplitting: 0 41 | spriteMode: 0 42 | spriteExtrude: 1 43 | spriteMeshType: 1 44 | alignment: 0 45 | spritePivot: {x: 0.5, y: 0.5} 46 | spriteBorder: {x: 0, y: 0, z: 0, w: 0} 47 | spritePixelsToUnits: 100 48 | alphaIsTransparency: 1 49 | spriteTessellationDetail: -1 50 | textureType: 2 51 | buildTargetSettings: [] 52 | spriteSheet: 53 | serializedVersion: 2 54 | sprites: [] 55 | outline: [] 56 | spritePackingTag: 57 | userData: 58 | assetBundleName: 59 | assetBundleVariant: 60 | -------------------------------------------------------------------------------- /NodeGraph/Editor/DefultSkin/NodeImage/node8.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zouhunter/unity-nodegraph-frame/f5c6f781e164e515bedd73d906b9989fb2dad7f4/NodeGraph/Editor/DefultSkin/NodeImage/node8.png -------------------------------------------------------------------------------- /NodeGraph/Editor/DefultSkin/NodeImage/node8.png.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 519a7d8c957b74d4796e109c00242ce0 3 | timeCreated: 1488108326 4 | licenseType: Pro 5 | TextureImporter: 6 | fileIDToRecycleName: {} 7 | serializedVersion: 2 8 | mipmaps: 9 | mipMapMode: 0 10 | enableMipMap: 0 11 | linearTexture: 1 12 | correctGamma: 0 13 | fadeOut: 0 14 | borderMipMap: 0 15 | mipMapFadeDistanceStart: 1 16 | mipMapFadeDistanceEnd: 3 17 | bumpmap: 18 | convertToNormalMap: 0 19 | externalNormalMap: 0 20 | heightScale: 0.25 21 | normalMapFilter: 0 22 | isReadable: 0 23 | grayScaleToAlpha: 0 24 | generateCubemap: 0 25 | cubemapConvolution: 0 26 | cubemapConvolutionSteps: 7 27 | cubemapConvolutionExponent: 1.5 28 | seamlessCubemap: 0 29 | textureFormat: -3 30 | maxTextureSize: 2048 31 | textureSettings: 32 | filterMode: 1 33 | aniso: 1 34 | mipBias: -1 35 | wrapMode: 1 36 | nPOTScale: 0 37 | lightmap: 0 38 | rGBM: 0 39 | compressionQuality: 50 40 | allowsAlphaSplitting: 0 41 | spriteMode: 0 42 | spriteExtrude: 1 43 | spriteMeshType: 1 44 | alignment: 0 45 | spritePivot: {x: 0.5, y: 0.5} 46 | spriteBorder: {x: 0, y: 0, z: 0, w: 0} 47 | spritePixelsToUnits: 100 48 | alphaIsTransparency: 1 49 | spriteTessellationDetail: -1 50 | textureType: 2 51 | buildTargetSettings: [] 52 | spriteSheet: 53 | serializedVersion: 2 54 | sprites: [] 55 | outline: [] 56 | spritePackingTag: 57 | userData: 58 | assetBundleName: 59 | assetBundleVariant: 60 | -------------------------------------------------------------------------------- /NodeGraph/Editor/DefultSkin/NodeImage/node8@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zouhunter/unity-nodegraph-frame/f5c6f781e164e515bedd73d906b9989fb2dad7f4/NodeGraph/Editor/DefultSkin/NodeImage/node8@2x.png -------------------------------------------------------------------------------- /NodeGraph/Editor/DefultSkin/NodeImage/node8@2x.png.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 78ce924c1536e4fb88d91fff535a384b 3 | timeCreated: 1488107595 4 | licenseType: Pro 5 | TextureImporter: 6 | fileIDToRecycleName: {} 7 | serializedVersion: 2 8 | mipmaps: 9 | mipMapMode: 0 10 | enableMipMap: 0 11 | linearTexture: 1 12 | correctGamma: 0 13 | fadeOut: 0 14 | borderMipMap: 0 15 | mipMapFadeDistanceStart: 1 16 | mipMapFadeDistanceEnd: 3 17 | bumpmap: 18 | convertToNormalMap: 0 19 | externalNormalMap: 0 20 | heightScale: 0.25 21 | normalMapFilter: 0 22 | isReadable: 0 23 | grayScaleToAlpha: 0 24 | generateCubemap: 0 25 | cubemapConvolution: 0 26 | cubemapConvolutionSteps: 7 27 | cubemapConvolutionExponent: 1.5 28 | seamlessCubemap: 0 29 | textureFormat: -3 30 | maxTextureSize: 2048 31 | textureSettings: 32 | filterMode: 1 33 | aniso: 1 34 | mipBias: -1 35 | wrapMode: 1 36 | nPOTScale: 0 37 | lightmap: 0 38 | rGBM: 0 39 | compressionQuality: 50 40 | allowsAlphaSplitting: 0 41 | spriteMode: 0 42 | spriteExtrude: 1 43 | spriteMeshType: 1 44 | alignment: 0 45 | spritePivot: {x: 0.5, y: 0.5} 46 | spriteBorder: {x: 0, y: 0, z: 0, w: 0} 47 | spritePixelsToUnits: 100 48 | alphaIsTransparency: 1 49 | spriteTessellationDetail: -1 50 | textureType: 2 51 | buildTargetSettings: [] 52 | spriteSheet: 53 | serializedVersion: 2 54 | sprites: [] 55 | outline: [] 56 | spritePackingTag: 57 | userData: 58 | assetBundleName: 59 | assetBundleVariant: 60 | -------------------------------------------------------------------------------- /NodeGraph/Editor/DefultSkin/NodeImage/node_images_source.psd: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zouhunter/unity-nodegraph-frame/f5c6f781e164e515bedd73d906b9989fb2dad7f4/NodeGraph/Editor/DefultSkin/NodeImage/node_images_source.psd -------------------------------------------------------------------------------- /NodeGraph/Editor/DefultSkin/NodeImage/node_images_source.psd.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 4eb34d40a86f34e39b58f21bfa24fa14 3 | timeCreated: 1488107595 4 | licenseType: Pro 5 | TextureImporter: 6 | fileIDToRecycleName: {} 7 | serializedVersion: 2 8 | mipmaps: 9 | mipMapMode: 0 10 | enableMipMap: 0 11 | linearTexture: 1 12 | correctGamma: 0 13 | fadeOut: 0 14 | borderMipMap: 0 15 | mipMapFadeDistanceStart: 1 16 | mipMapFadeDistanceEnd: 3 17 | bumpmap: 18 | convertToNormalMap: 0 19 | externalNormalMap: 0 20 | heightScale: 0.25 21 | normalMapFilter: 0 22 | isReadable: 0 23 | grayScaleToAlpha: 0 24 | generateCubemap: 0 25 | cubemapConvolution: 0 26 | cubemapConvolutionSteps: 7 27 | cubemapConvolutionExponent: 1.5 28 | seamlessCubemap: 0 29 | textureFormat: -3 30 | maxTextureSize: 2048 31 | textureSettings: 32 | filterMode: 1 33 | aniso: 1 34 | mipBias: -1 35 | wrapMode: 1 36 | nPOTScale: 0 37 | lightmap: 0 38 | rGBM: 0 39 | compressionQuality: 50 40 | allowsAlphaSplitting: 0 41 | spriteMode: 0 42 | spriteExtrude: 1 43 | spriteMeshType: 1 44 | alignment: 0 45 | spritePivot: {x: 0.5, y: 0.5} 46 | spriteBorder: {x: 0, y: 0, z: 0, w: 0} 47 | spritePixelsToUnits: 100 48 | alphaIsTransparency: 1 49 | spriteTessellationDetail: -1 50 | textureType: 2 51 | buildTargetSettings: [] 52 | spriteSheet: 53 | serializedVersion: 2 54 | sprites: [] 55 | outline: [] 56 | spritePackingTag: 57 | userData: 58 | assetBundleName: 59 | assetBundleVariant: 60 | -------------------------------------------------------------------------------- /NodeGraph/Editor/DefultSkin/NodeImage/node_images_source@2x.psd: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zouhunter/unity-nodegraph-frame/f5c6f781e164e515bedd73d906b9989fb2dad7f4/NodeGraph/Editor/DefultSkin/NodeImage/node_images_source@2x.psd -------------------------------------------------------------------------------- /NodeGraph/Editor/DefultSkin/NodeImage/node_images_source@2x.psd.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: c63d12b8197e0466bb01427f0f4d999b 3 | timeCreated: 1488107088 4 | licenseType: Pro 5 | TextureImporter: 6 | fileIDToRecycleName: {} 7 | serializedVersion: 2 8 | mipmaps: 9 | mipMapMode: 0 10 | enableMipMap: 0 11 | linearTexture: 1 12 | correctGamma: 0 13 | fadeOut: 0 14 | borderMipMap: 0 15 | mipMapFadeDistanceStart: 1 16 | mipMapFadeDistanceEnd: 3 17 | bumpmap: 18 | convertToNormalMap: 0 19 | externalNormalMap: 0 20 | heightScale: 0.25 21 | normalMapFilter: 0 22 | isReadable: 0 23 | grayScaleToAlpha: 0 24 | generateCubemap: 0 25 | cubemapConvolution: 0 26 | cubemapConvolutionSteps: 7 27 | cubemapConvolutionExponent: 1.5 28 | seamlessCubemap: 0 29 | textureFormat: -3 30 | maxTextureSize: 2048 31 | textureSettings: 32 | filterMode: 1 33 | aniso: 1 34 | mipBias: -1 35 | wrapMode: 1 36 | nPOTScale: 0 37 | lightmap: 0 38 | rGBM: 0 39 | compressionQuality: 50 40 | allowsAlphaSplitting: 0 41 | spriteMode: 0 42 | spriteExtrude: 1 43 | spriteMeshType: 1 44 | alignment: 0 45 | spritePivot: {x: 0.5, y: 0.5} 46 | spriteBorder: {x: 0, y: 0, z: 0, w: 0} 47 | spritePixelsToUnits: 100 48 | alphaIsTransparency: 1 49 | spriteTessellationDetail: -1 50 | textureType: 2 51 | buildTargetSettings: [] 52 | spriteSheet: 53 | serializedVersion: 2 54 | sprites: [] 55 | outline: [] 56 | spritePackingTag: 57 | userData: 58 | assetBundleName: 59 | assetBundleVariant: 60 | -------------------------------------------------------------------------------- /NodeGraph/Editor/DefultSkin/NodeImage/on_node0.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zouhunter/unity-nodegraph-frame/f5c6f781e164e515bedd73d906b9989fb2dad7f4/NodeGraph/Editor/DefultSkin/NodeImage/on_node0.png -------------------------------------------------------------------------------- /NodeGraph/Editor/DefultSkin/NodeImage/on_node0.png.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 907baae0102874dd49e7f5b2c9dbd168 3 | timeCreated: 1488108326 4 | licenseType: Pro 5 | TextureImporter: 6 | fileIDToRecycleName: {} 7 | serializedVersion: 2 8 | mipmaps: 9 | mipMapMode: 0 10 | enableMipMap: 0 11 | linearTexture: 1 12 | correctGamma: 0 13 | fadeOut: 0 14 | borderMipMap: 0 15 | mipMapFadeDistanceStart: 1 16 | mipMapFadeDistanceEnd: 3 17 | bumpmap: 18 | convertToNormalMap: 0 19 | externalNormalMap: 0 20 | heightScale: 0.25 21 | normalMapFilter: 0 22 | isReadable: 0 23 | grayScaleToAlpha: 0 24 | generateCubemap: 0 25 | cubemapConvolution: 0 26 | cubemapConvolutionSteps: 7 27 | cubemapConvolutionExponent: 1.5 28 | seamlessCubemap: 0 29 | textureFormat: -3 30 | maxTextureSize: 2048 31 | textureSettings: 32 | filterMode: 1 33 | aniso: 1 34 | mipBias: -1 35 | wrapMode: 1 36 | nPOTScale: 0 37 | lightmap: 0 38 | rGBM: 0 39 | compressionQuality: 50 40 | allowsAlphaSplitting: 0 41 | spriteMode: 0 42 | spriteExtrude: 1 43 | spriteMeshType: 1 44 | alignment: 0 45 | spritePivot: {x: 0.5, y: 0.5} 46 | spriteBorder: {x: 0, y: 0, z: 0, w: 0} 47 | spritePixelsToUnits: 100 48 | alphaIsTransparency: 1 49 | spriteTessellationDetail: -1 50 | textureType: 2 51 | buildTargetSettings: [] 52 | spriteSheet: 53 | serializedVersion: 2 54 | sprites: [] 55 | outline: [] 56 | spritePackingTag: 57 | userData: 58 | assetBundleName: 59 | assetBundleVariant: 60 | -------------------------------------------------------------------------------- /NodeGraph/Editor/DefultSkin/NodeImage/on_node0@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zouhunter/unity-nodegraph-frame/f5c6f781e164e515bedd73d906b9989fb2dad7f4/NodeGraph/Editor/DefultSkin/NodeImage/on_node0@2x.png -------------------------------------------------------------------------------- /NodeGraph/Editor/DefultSkin/NodeImage/on_node0@2x.png.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 403f9a7a077a74263bab6b89198eaf4c 3 | timeCreated: 1488107595 4 | licenseType: Pro 5 | TextureImporter: 6 | fileIDToRecycleName: {} 7 | serializedVersion: 2 8 | mipmaps: 9 | mipMapMode: 0 10 | enableMipMap: 0 11 | linearTexture: 1 12 | correctGamma: 0 13 | fadeOut: 0 14 | borderMipMap: 0 15 | mipMapFadeDistanceStart: 1 16 | mipMapFadeDistanceEnd: 3 17 | bumpmap: 18 | convertToNormalMap: 0 19 | externalNormalMap: 0 20 | heightScale: 0.25 21 | normalMapFilter: 0 22 | isReadable: 0 23 | grayScaleToAlpha: 0 24 | generateCubemap: 0 25 | cubemapConvolution: 0 26 | cubemapConvolutionSteps: 7 27 | cubemapConvolutionExponent: 1.5 28 | seamlessCubemap: 0 29 | textureFormat: -3 30 | maxTextureSize: 2048 31 | textureSettings: 32 | filterMode: 1 33 | aniso: 1 34 | mipBias: -1 35 | wrapMode: 1 36 | nPOTScale: 0 37 | lightmap: 0 38 | rGBM: 0 39 | compressionQuality: 50 40 | allowsAlphaSplitting: 0 41 | spriteMode: 0 42 | spriteExtrude: 1 43 | spriteMeshType: 1 44 | alignment: 0 45 | spritePivot: {x: 0.5, y: 0.5} 46 | spriteBorder: {x: 0, y: 0, z: 0, w: 0} 47 | spritePixelsToUnits: 100 48 | alphaIsTransparency: 1 49 | spriteTessellationDetail: -1 50 | textureType: 2 51 | buildTargetSettings: [] 52 | spriteSheet: 53 | serializedVersion: 2 54 | sprites: [] 55 | outline: [] 56 | spritePackingTag: 57 | userData: 58 | assetBundleName: 59 | assetBundleVariant: 60 | -------------------------------------------------------------------------------- /NodeGraph/Editor/DefultSkin/NodeImage/on_node1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zouhunter/unity-nodegraph-frame/f5c6f781e164e515bedd73d906b9989fb2dad7f4/NodeGraph/Editor/DefultSkin/NodeImage/on_node1.png -------------------------------------------------------------------------------- /NodeGraph/Editor/DefultSkin/NodeImage/on_node1.png.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: f8dd2517b608b4a7ea9098574b4e6969 3 | timeCreated: 1488108326 4 | licenseType: Pro 5 | TextureImporter: 6 | fileIDToRecycleName: {} 7 | serializedVersion: 2 8 | mipmaps: 9 | mipMapMode: 0 10 | enableMipMap: 0 11 | linearTexture: 1 12 | correctGamma: 0 13 | fadeOut: 0 14 | borderMipMap: 0 15 | mipMapFadeDistanceStart: 1 16 | mipMapFadeDistanceEnd: 3 17 | bumpmap: 18 | convertToNormalMap: 0 19 | externalNormalMap: 0 20 | heightScale: 0.25 21 | normalMapFilter: 0 22 | isReadable: 0 23 | grayScaleToAlpha: 0 24 | generateCubemap: 0 25 | cubemapConvolution: 0 26 | cubemapConvolutionSteps: 7 27 | cubemapConvolutionExponent: 1.5 28 | seamlessCubemap: 0 29 | textureFormat: -3 30 | maxTextureSize: 2048 31 | textureSettings: 32 | filterMode: 1 33 | aniso: 1 34 | mipBias: -1 35 | wrapMode: 1 36 | nPOTScale: 0 37 | lightmap: 0 38 | rGBM: 0 39 | compressionQuality: 50 40 | allowsAlphaSplitting: 0 41 | spriteMode: 0 42 | spriteExtrude: 1 43 | spriteMeshType: 1 44 | alignment: 0 45 | spritePivot: {x: 0.5, y: 0.5} 46 | spriteBorder: {x: 0, y: 0, z: 0, w: 0} 47 | spritePixelsToUnits: 100 48 | alphaIsTransparency: 1 49 | spriteTessellationDetail: -1 50 | textureType: 2 51 | buildTargetSettings: [] 52 | spriteSheet: 53 | serializedVersion: 2 54 | sprites: [] 55 | outline: [] 56 | spritePackingTag: 57 | userData: 58 | assetBundleName: 59 | assetBundleVariant: 60 | -------------------------------------------------------------------------------- /NodeGraph/Editor/DefultSkin/NodeImage/on_node1@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zouhunter/unity-nodegraph-frame/f5c6f781e164e515bedd73d906b9989fb2dad7f4/NodeGraph/Editor/DefultSkin/NodeImage/on_node1@2x.png -------------------------------------------------------------------------------- /NodeGraph/Editor/DefultSkin/NodeImage/on_node1@2x.png.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 4edd7b9c0708c41c394a7eccef5710f3 3 | timeCreated: 1488107595 4 | licenseType: Pro 5 | TextureImporter: 6 | fileIDToRecycleName: {} 7 | serializedVersion: 2 8 | mipmaps: 9 | mipMapMode: 0 10 | enableMipMap: 0 11 | linearTexture: 1 12 | correctGamma: 0 13 | fadeOut: 0 14 | borderMipMap: 0 15 | mipMapFadeDistanceStart: 1 16 | mipMapFadeDistanceEnd: 3 17 | bumpmap: 18 | convertToNormalMap: 0 19 | externalNormalMap: 0 20 | heightScale: 0.25 21 | normalMapFilter: 0 22 | isReadable: 0 23 | grayScaleToAlpha: 0 24 | generateCubemap: 0 25 | cubemapConvolution: 0 26 | cubemapConvolutionSteps: 7 27 | cubemapConvolutionExponent: 1.5 28 | seamlessCubemap: 0 29 | textureFormat: -3 30 | maxTextureSize: 2048 31 | textureSettings: 32 | filterMode: 1 33 | aniso: 1 34 | mipBias: -1 35 | wrapMode: 1 36 | nPOTScale: 0 37 | lightmap: 0 38 | rGBM: 0 39 | compressionQuality: 50 40 | allowsAlphaSplitting: 0 41 | spriteMode: 0 42 | spriteExtrude: 1 43 | spriteMeshType: 1 44 | alignment: 0 45 | spritePivot: {x: 0.5, y: 0.5} 46 | spriteBorder: {x: 0, y: 0, z: 0, w: 0} 47 | spritePixelsToUnits: 100 48 | alphaIsTransparency: 1 49 | spriteTessellationDetail: -1 50 | textureType: 2 51 | buildTargetSettings: [] 52 | spriteSheet: 53 | serializedVersion: 2 54 | sprites: [] 55 | outline: [] 56 | spritePackingTag: 57 | userData: 58 | assetBundleName: 59 | assetBundleVariant: 60 | -------------------------------------------------------------------------------- /NodeGraph/Editor/DefultSkin/NodeImage/on_node2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zouhunter/unity-nodegraph-frame/f5c6f781e164e515bedd73d906b9989fb2dad7f4/NodeGraph/Editor/DefultSkin/NodeImage/on_node2.png -------------------------------------------------------------------------------- /NodeGraph/Editor/DefultSkin/NodeImage/on_node2.png.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 5b4de33f65ec448ec9085f9c0bf149db 3 | timeCreated: 1488108326 4 | licenseType: Pro 5 | TextureImporter: 6 | fileIDToRecycleName: {} 7 | serializedVersion: 2 8 | mipmaps: 9 | mipMapMode: 0 10 | enableMipMap: 0 11 | linearTexture: 1 12 | correctGamma: 0 13 | fadeOut: 0 14 | borderMipMap: 0 15 | mipMapFadeDistanceStart: 1 16 | mipMapFadeDistanceEnd: 3 17 | bumpmap: 18 | convertToNormalMap: 0 19 | externalNormalMap: 0 20 | heightScale: 0.25 21 | normalMapFilter: 0 22 | isReadable: 0 23 | grayScaleToAlpha: 0 24 | generateCubemap: 0 25 | cubemapConvolution: 0 26 | cubemapConvolutionSteps: 7 27 | cubemapConvolutionExponent: 1.5 28 | seamlessCubemap: 0 29 | textureFormat: -3 30 | maxTextureSize: 2048 31 | textureSettings: 32 | filterMode: 1 33 | aniso: 1 34 | mipBias: -1 35 | wrapMode: 1 36 | nPOTScale: 0 37 | lightmap: 0 38 | rGBM: 0 39 | compressionQuality: 50 40 | allowsAlphaSplitting: 0 41 | spriteMode: 0 42 | spriteExtrude: 1 43 | spriteMeshType: 1 44 | alignment: 0 45 | spritePivot: {x: 0.5, y: 0.5} 46 | spriteBorder: {x: 0, y: 0, z: 0, w: 0} 47 | spritePixelsToUnits: 100 48 | alphaIsTransparency: 1 49 | spriteTessellationDetail: -1 50 | textureType: 2 51 | buildTargetSettings: [] 52 | spriteSheet: 53 | serializedVersion: 2 54 | sprites: [] 55 | outline: [] 56 | spritePackingTag: 57 | userData: 58 | assetBundleName: 59 | assetBundleVariant: 60 | -------------------------------------------------------------------------------- /NodeGraph/Editor/DefultSkin/NodeImage/on_node2@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zouhunter/unity-nodegraph-frame/f5c6f781e164e515bedd73d906b9989fb2dad7f4/NodeGraph/Editor/DefultSkin/NodeImage/on_node2@2x.png -------------------------------------------------------------------------------- /NodeGraph/Editor/DefultSkin/NodeImage/on_node2@2x.png.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: e68d922aabe4948a2af68d46db95d4a9 3 | timeCreated: 1488107595 4 | licenseType: Pro 5 | TextureImporter: 6 | fileIDToRecycleName: {} 7 | serializedVersion: 2 8 | mipmaps: 9 | mipMapMode: 0 10 | enableMipMap: 0 11 | linearTexture: 1 12 | correctGamma: 0 13 | fadeOut: 0 14 | borderMipMap: 0 15 | mipMapFadeDistanceStart: 1 16 | mipMapFadeDistanceEnd: 3 17 | bumpmap: 18 | convertToNormalMap: 0 19 | externalNormalMap: 0 20 | heightScale: 0.25 21 | normalMapFilter: 0 22 | isReadable: 0 23 | grayScaleToAlpha: 0 24 | generateCubemap: 0 25 | cubemapConvolution: 0 26 | cubemapConvolutionSteps: 7 27 | cubemapConvolutionExponent: 1.5 28 | seamlessCubemap: 0 29 | textureFormat: -3 30 | maxTextureSize: 2048 31 | textureSettings: 32 | filterMode: 1 33 | aniso: 1 34 | mipBias: -1 35 | wrapMode: 1 36 | nPOTScale: 0 37 | lightmap: 0 38 | rGBM: 0 39 | compressionQuality: 50 40 | allowsAlphaSplitting: 0 41 | spriteMode: 0 42 | spriteExtrude: 1 43 | spriteMeshType: 1 44 | alignment: 0 45 | spritePivot: {x: 0.5, y: 0.5} 46 | spriteBorder: {x: 0, y: 0, z: 0, w: 0} 47 | spritePixelsToUnits: 100 48 | alphaIsTransparency: 1 49 | spriteTessellationDetail: -1 50 | textureType: 2 51 | buildTargetSettings: [] 52 | spriteSheet: 53 | serializedVersion: 2 54 | sprites: [] 55 | outline: [] 56 | spritePackingTag: 57 | userData: 58 | assetBundleName: 59 | assetBundleVariant: 60 | -------------------------------------------------------------------------------- /NodeGraph/Editor/DefultSkin/NodeImage/on_node3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zouhunter/unity-nodegraph-frame/f5c6f781e164e515bedd73d906b9989fb2dad7f4/NodeGraph/Editor/DefultSkin/NodeImage/on_node3.png -------------------------------------------------------------------------------- /NodeGraph/Editor/DefultSkin/NodeImage/on_node3.png.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 67b4de080f56845a09dfdbf9742a16e5 3 | timeCreated: 1488108326 4 | licenseType: Pro 5 | TextureImporter: 6 | fileIDToRecycleName: {} 7 | serializedVersion: 2 8 | mipmaps: 9 | mipMapMode: 0 10 | enableMipMap: 0 11 | linearTexture: 1 12 | correctGamma: 0 13 | fadeOut: 0 14 | borderMipMap: 0 15 | mipMapFadeDistanceStart: 1 16 | mipMapFadeDistanceEnd: 3 17 | bumpmap: 18 | convertToNormalMap: 0 19 | externalNormalMap: 0 20 | heightScale: 0.25 21 | normalMapFilter: 0 22 | isReadable: 0 23 | grayScaleToAlpha: 0 24 | generateCubemap: 0 25 | cubemapConvolution: 0 26 | cubemapConvolutionSteps: 7 27 | cubemapConvolutionExponent: 1.5 28 | seamlessCubemap: 0 29 | textureFormat: -3 30 | maxTextureSize: 2048 31 | textureSettings: 32 | filterMode: 1 33 | aniso: 1 34 | mipBias: -1 35 | wrapMode: 1 36 | nPOTScale: 0 37 | lightmap: 0 38 | rGBM: 0 39 | compressionQuality: 50 40 | allowsAlphaSplitting: 0 41 | spriteMode: 0 42 | spriteExtrude: 1 43 | spriteMeshType: 1 44 | alignment: 0 45 | spritePivot: {x: 0.5, y: 0.5} 46 | spriteBorder: {x: 0, y: 0, z: 0, w: 0} 47 | spritePixelsToUnits: 100 48 | alphaIsTransparency: 1 49 | spriteTessellationDetail: -1 50 | textureType: 2 51 | buildTargetSettings: [] 52 | spriteSheet: 53 | serializedVersion: 2 54 | sprites: [] 55 | outline: [] 56 | spritePackingTag: 57 | userData: 58 | assetBundleName: 59 | assetBundleVariant: 60 | -------------------------------------------------------------------------------- /NodeGraph/Editor/DefultSkin/NodeImage/on_node3@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zouhunter/unity-nodegraph-frame/f5c6f781e164e515bedd73d906b9989fb2dad7f4/NodeGraph/Editor/DefultSkin/NodeImage/on_node3@2x.png -------------------------------------------------------------------------------- /NodeGraph/Editor/DefultSkin/NodeImage/on_node3@2x.png.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 03eaacf3cb3e642a3a137ead7d9debba 3 | timeCreated: 1488107595 4 | licenseType: Pro 5 | TextureImporter: 6 | fileIDToRecycleName: {} 7 | serializedVersion: 2 8 | mipmaps: 9 | mipMapMode: 0 10 | enableMipMap: 0 11 | linearTexture: 1 12 | correctGamma: 0 13 | fadeOut: 0 14 | borderMipMap: 0 15 | mipMapFadeDistanceStart: 1 16 | mipMapFadeDistanceEnd: 3 17 | bumpmap: 18 | convertToNormalMap: 0 19 | externalNormalMap: 0 20 | heightScale: 0.25 21 | normalMapFilter: 0 22 | isReadable: 0 23 | grayScaleToAlpha: 0 24 | generateCubemap: 0 25 | cubemapConvolution: 0 26 | cubemapConvolutionSteps: 7 27 | cubemapConvolutionExponent: 1.5 28 | seamlessCubemap: 0 29 | textureFormat: -3 30 | maxTextureSize: 2048 31 | textureSettings: 32 | filterMode: 1 33 | aniso: 1 34 | mipBias: -1 35 | wrapMode: 1 36 | nPOTScale: 0 37 | lightmap: 0 38 | rGBM: 0 39 | compressionQuality: 50 40 | allowsAlphaSplitting: 0 41 | spriteMode: 0 42 | spriteExtrude: 1 43 | spriteMeshType: 1 44 | alignment: 0 45 | spritePivot: {x: 0.5, y: 0.5} 46 | spriteBorder: {x: 0, y: 0, z: 0, w: 0} 47 | spritePixelsToUnits: 100 48 | alphaIsTransparency: 1 49 | spriteTessellationDetail: -1 50 | textureType: 2 51 | buildTargetSettings: [] 52 | spriteSheet: 53 | serializedVersion: 2 54 | sprites: [] 55 | outline: [] 56 | spritePackingTag: 57 | userData: 58 | assetBundleName: 59 | assetBundleVariant: 60 | -------------------------------------------------------------------------------- /NodeGraph/Editor/DefultSkin/NodeImage/on_node4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zouhunter/unity-nodegraph-frame/f5c6f781e164e515bedd73d906b9989fb2dad7f4/NodeGraph/Editor/DefultSkin/NodeImage/on_node4.png -------------------------------------------------------------------------------- /NodeGraph/Editor/DefultSkin/NodeImage/on_node4.png.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: c99f06ff0dde241d1a363bbd8ef932a2 3 | timeCreated: 1488108326 4 | licenseType: Pro 5 | TextureImporter: 6 | fileIDToRecycleName: {} 7 | serializedVersion: 2 8 | mipmaps: 9 | mipMapMode: 0 10 | enableMipMap: 0 11 | linearTexture: 1 12 | correctGamma: 0 13 | fadeOut: 0 14 | borderMipMap: 0 15 | mipMapFadeDistanceStart: 1 16 | mipMapFadeDistanceEnd: 3 17 | bumpmap: 18 | convertToNormalMap: 0 19 | externalNormalMap: 0 20 | heightScale: 0.25 21 | normalMapFilter: 0 22 | isReadable: 0 23 | grayScaleToAlpha: 0 24 | generateCubemap: 0 25 | cubemapConvolution: 0 26 | cubemapConvolutionSteps: 7 27 | cubemapConvolutionExponent: 1.5 28 | seamlessCubemap: 0 29 | textureFormat: -3 30 | maxTextureSize: 2048 31 | textureSettings: 32 | filterMode: 1 33 | aniso: 1 34 | mipBias: -1 35 | wrapMode: 1 36 | nPOTScale: 0 37 | lightmap: 0 38 | rGBM: 0 39 | compressionQuality: 50 40 | allowsAlphaSplitting: 0 41 | spriteMode: 0 42 | spriteExtrude: 1 43 | spriteMeshType: 1 44 | alignment: 0 45 | spritePivot: {x: 0.5, y: 0.5} 46 | spriteBorder: {x: 0, y: 0, z: 0, w: 0} 47 | spritePixelsToUnits: 100 48 | alphaIsTransparency: 1 49 | spriteTessellationDetail: -1 50 | textureType: 2 51 | buildTargetSettings: [] 52 | spriteSheet: 53 | serializedVersion: 2 54 | sprites: [] 55 | outline: [] 56 | spritePackingTag: 57 | userData: 58 | assetBundleName: 59 | assetBundleVariant: 60 | -------------------------------------------------------------------------------- /NodeGraph/Editor/DefultSkin/NodeImage/on_node4@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zouhunter/unity-nodegraph-frame/f5c6f781e164e515bedd73d906b9989fb2dad7f4/NodeGraph/Editor/DefultSkin/NodeImage/on_node4@2x.png -------------------------------------------------------------------------------- /NodeGraph/Editor/DefultSkin/NodeImage/on_node4@2x.png.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 1cc4426cea05e4d9a92364da039f01b7 3 | timeCreated: 1488107595 4 | licenseType: Pro 5 | TextureImporter: 6 | fileIDToRecycleName: {} 7 | serializedVersion: 2 8 | mipmaps: 9 | mipMapMode: 0 10 | enableMipMap: 0 11 | linearTexture: 1 12 | correctGamma: 0 13 | fadeOut: 0 14 | borderMipMap: 0 15 | mipMapFadeDistanceStart: 1 16 | mipMapFadeDistanceEnd: 3 17 | bumpmap: 18 | convertToNormalMap: 0 19 | externalNormalMap: 0 20 | heightScale: 0.25 21 | normalMapFilter: 0 22 | isReadable: 0 23 | grayScaleToAlpha: 0 24 | generateCubemap: 0 25 | cubemapConvolution: 0 26 | cubemapConvolutionSteps: 7 27 | cubemapConvolutionExponent: 1.5 28 | seamlessCubemap: 0 29 | textureFormat: -3 30 | maxTextureSize: 2048 31 | textureSettings: 32 | filterMode: 1 33 | aniso: 1 34 | mipBias: -1 35 | wrapMode: 1 36 | nPOTScale: 0 37 | lightmap: 0 38 | rGBM: 0 39 | compressionQuality: 50 40 | allowsAlphaSplitting: 0 41 | spriteMode: 0 42 | spriteExtrude: 1 43 | spriteMeshType: 1 44 | alignment: 0 45 | spritePivot: {x: 0.5, y: 0.5} 46 | spriteBorder: {x: 0, y: 0, z: 0, w: 0} 47 | spritePixelsToUnits: 100 48 | alphaIsTransparency: 1 49 | spriteTessellationDetail: -1 50 | textureType: 2 51 | buildTargetSettings: [] 52 | spriteSheet: 53 | serializedVersion: 2 54 | sprites: [] 55 | outline: [] 56 | spritePackingTag: 57 | userData: 58 | assetBundleName: 59 | assetBundleVariant: 60 | -------------------------------------------------------------------------------- /NodeGraph/Editor/DefultSkin/NodeImage/on_node5.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zouhunter/unity-nodegraph-frame/f5c6f781e164e515bedd73d906b9989fb2dad7f4/NodeGraph/Editor/DefultSkin/NodeImage/on_node5.png -------------------------------------------------------------------------------- /NodeGraph/Editor/DefultSkin/NodeImage/on_node5.png.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 3ab1bcbb000bd41018384e565c288604 3 | timeCreated: 1488108326 4 | licenseType: Pro 5 | TextureImporter: 6 | fileIDToRecycleName: {} 7 | serializedVersion: 2 8 | mipmaps: 9 | mipMapMode: 0 10 | enableMipMap: 0 11 | linearTexture: 1 12 | correctGamma: 0 13 | fadeOut: 0 14 | borderMipMap: 0 15 | mipMapFadeDistanceStart: 1 16 | mipMapFadeDistanceEnd: 3 17 | bumpmap: 18 | convertToNormalMap: 0 19 | externalNormalMap: 0 20 | heightScale: 0.25 21 | normalMapFilter: 0 22 | isReadable: 0 23 | grayScaleToAlpha: 0 24 | generateCubemap: 0 25 | cubemapConvolution: 0 26 | cubemapConvolutionSteps: 7 27 | cubemapConvolutionExponent: 1.5 28 | seamlessCubemap: 0 29 | textureFormat: -3 30 | maxTextureSize: 2048 31 | textureSettings: 32 | filterMode: 1 33 | aniso: 1 34 | mipBias: -1 35 | wrapMode: 1 36 | nPOTScale: 0 37 | lightmap: 0 38 | rGBM: 0 39 | compressionQuality: 50 40 | allowsAlphaSplitting: 0 41 | spriteMode: 0 42 | spriteExtrude: 1 43 | spriteMeshType: 1 44 | alignment: 0 45 | spritePivot: {x: 0.5, y: 0.5} 46 | spriteBorder: {x: 0, y: 0, z: 0, w: 0} 47 | spritePixelsToUnits: 100 48 | alphaIsTransparency: 1 49 | spriteTessellationDetail: -1 50 | textureType: 2 51 | buildTargetSettings: [] 52 | spriteSheet: 53 | serializedVersion: 2 54 | sprites: [] 55 | outline: [] 56 | spritePackingTag: 57 | userData: 58 | assetBundleName: 59 | assetBundleVariant: 60 | -------------------------------------------------------------------------------- /NodeGraph/Editor/DefultSkin/NodeImage/on_node5@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zouhunter/unity-nodegraph-frame/f5c6f781e164e515bedd73d906b9989fb2dad7f4/NodeGraph/Editor/DefultSkin/NodeImage/on_node5@2x.png -------------------------------------------------------------------------------- /NodeGraph/Editor/DefultSkin/NodeImage/on_node5@2x.png.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: fa2529bf9209243c48e658c607b0c8f2 3 | timeCreated: 1488107595 4 | licenseType: Pro 5 | TextureImporter: 6 | fileIDToRecycleName: {} 7 | serializedVersion: 2 8 | mipmaps: 9 | mipMapMode: 0 10 | enableMipMap: 0 11 | linearTexture: 1 12 | correctGamma: 0 13 | fadeOut: 0 14 | borderMipMap: 0 15 | mipMapFadeDistanceStart: 1 16 | mipMapFadeDistanceEnd: 3 17 | bumpmap: 18 | convertToNormalMap: 0 19 | externalNormalMap: 0 20 | heightScale: 0.25 21 | normalMapFilter: 0 22 | isReadable: 0 23 | grayScaleToAlpha: 0 24 | generateCubemap: 0 25 | cubemapConvolution: 0 26 | cubemapConvolutionSteps: 7 27 | cubemapConvolutionExponent: 1.5 28 | seamlessCubemap: 0 29 | textureFormat: -3 30 | maxTextureSize: 2048 31 | textureSettings: 32 | filterMode: 1 33 | aniso: 1 34 | mipBias: -1 35 | wrapMode: 1 36 | nPOTScale: 0 37 | lightmap: 0 38 | rGBM: 0 39 | compressionQuality: 50 40 | allowsAlphaSplitting: 0 41 | spriteMode: 0 42 | spriteExtrude: 1 43 | spriteMeshType: 1 44 | alignment: 0 45 | spritePivot: {x: 0.5, y: 0.5} 46 | spriteBorder: {x: 0, y: 0, z: 0, w: 0} 47 | spritePixelsToUnits: 100 48 | alphaIsTransparency: 1 49 | spriteTessellationDetail: -1 50 | textureType: 2 51 | buildTargetSettings: [] 52 | spriteSheet: 53 | serializedVersion: 2 54 | sprites: [] 55 | outline: [] 56 | spritePackingTag: 57 | userData: 58 | assetBundleName: 59 | assetBundleVariant: 60 | -------------------------------------------------------------------------------- /NodeGraph/Editor/DefultSkin/NodeImage/on_node6.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zouhunter/unity-nodegraph-frame/f5c6f781e164e515bedd73d906b9989fb2dad7f4/NodeGraph/Editor/DefultSkin/NodeImage/on_node6.png -------------------------------------------------------------------------------- /NodeGraph/Editor/DefultSkin/NodeImage/on_node6.png.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 8e6f1bb79354d4d14a965de286d966d5 3 | timeCreated: 1488108326 4 | licenseType: Pro 5 | TextureImporter: 6 | fileIDToRecycleName: {} 7 | serializedVersion: 2 8 | mipmaps: 9 | mipMapMode: 0 10 | enableMipMap: 0 11 | linearTexture: 1 12 | correctGamma: 0 13 | fadeOut: 0 14 | borderMipMap: 0 15 | mipMapFadeDistanceStart: 1 16 | mipMapFadeDistanceEnd: 3 17 | bumpmap: 18 | convertToNormalMap: 0 19 | externalNormalMap: 0 20 | heightScale: 0.25 21 | normalMapFilter: 0 22 | isReadable: 0 23 | grayScaleToAlpha: 0 24 | generateCubemap: 0 25 | cubemapConvolution: 0 26 | cubemapConvolutionSteps: 7 27 | cubemapConvolutionExponent: 1.5 28 | seamlessCubemap: 0 29 | textureFormat: -3 30 | maxTextureSize: 2048 31 | textureSettings: 32 | filterMode: 1 33 | aniso: 1 34 | mipBias: -1 35 | wrapMode: 1 36 | nPOTScale: 0 37 | lightmap: 0 38 | rGBM: 0 39 | compressionQuality: 50 40 | allowsAlphaSplitting: 0 41 | spriteMode: 0 42 | spriteExtrude: 1 43 | spriteMeshType: 1 44 | alignment: 0 45 | spritePivot: {x: 0.5, y: 0.5} 46 | spriteBorder: {x: 0, y: 0, z: 0, w: 0} 47 | spritePixelsToUnits: 100 48 | alphaIsTransparency: 1 49 | spriteTessellationDetail: -1 50 | textureType: 2 51 | buildTargetSettings: [] 52 | spriteSheet: 53 | serializedVersion: 2 54 | sprites: [] 55 | outline: [] 56 | spritePackingTag: 57 | userData: 58 | assetBundleName: 59 | assetBundleVariant: 60 | -------------------------------------------------------------------------------- /NodeGraph/Editor/DefultSkin/NodeImage/on_node6@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zouhunter/unity-nodegraph-frame/f5c6f781e164e515bedd73d906b9989fb2dad7f4/NodeGraph/Editor/DefultSkin/NodeImage/on_node6@2x.png -------------------------------------------------------------------------------- /NodeGraph/Editor/DefultSkin/NodeImage/on_node6@2x.png.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 928b290746aa740428fdb3021b136b4c 3 | timeCreated: 1488107595 4 | licenseType: Pro 5 | TextureImporter: 6 | fileIDToRecycleName: {} 7 | serializedVersion: 2 8 | mipmaps: 9 | mipMapMode: 0 10 | enableMipMap: 0 11 | linearTexture: 1 12 | correctGamma: 0 13 | fadeOut: 0 14 | borderMipMap: 0 15 | mipMapFadeDistanceStart: 1 16 | mipMapFadeDistanceEnd: 3 17 | bumpmap: 18 | convertToNormalMap: 0 19 | externalNormalMap: 0 20 | heightScale: 0.25 21 | normalMapFilter: 0 22 | isReadable: 0 23 | grayScaleToAlpha: 0 24 | generateCubemap: 0 25 | cubemapConvolution: 0 26 | cubemapConvolutionSteps: 7 27 | cubemapConvolutionExponent: 1.5 28 | seamlessCubemap: 0 29 | textureFormat: -3 30 | maxTextureSize: 2048 31 | textureSettings: 32 | filterMode: 1 33 | aniso: 1 34 | mipBias: -1 35 | wrapMode: 1 36 | nPOTScale: 0 37 | lightmap: 0 38 | rGBM: 0 39 | compressionQuality: 50 40 | allowsAlphaSplitting: 0 41 | spriteMode: 0 42 | spriteExtrude: 1 43 | spriteMeshType: 1 44 | alignment: 0 45 | spritePivot: {x: 0.5, y: 0.5} 46 | spriteBorder: {x: 0, y: 0, z: 0, w: 0} 47 | spritePixelsToUnits: 100 48 | alphaIsTransparency: 1 49 | spriteTessellationDetail: -1 50 | textureType: 2 51 | buildTargetSettings: [] 52 | spriteSheet: 53 | serializedVersion: 2 54 | sprites: [] 55 | outline: [] 56 | spritePackingTag: 57 | userData: 58 | assetBundleName: 59 | assetBundleVariant: 60 | -------------------------------------------------------------------------------- /NodeGraph/Editor/DefultSkin/NodeImage/on_node7.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zouhunter/unity-nodegraph-frame/f5c6f781e164e515bedd73d906b9989fb2dad7f4/NodeGraph/Editor/DefultSkin/NodeImage/on_node7.png -------------------------------------------------------------------------------- /NodeGraph/Editor/DefultSkin/NodeImage/on_node7.png.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: bfe3797fca69b44589c23dbbdb59ee52 3 | timeCreated: 1488108326 4 | licenseType: Pro 5 | TextureImporter: 6 | fileIDToRecycleName: {} 7 | serializedVersion: 2 8 | mipmaps: 9 | mipMapMode: 0 10 | enableMipMap: 0 11 | linearTexture: 1 12 | correctGamma: 0 13 | fadeOut: 0 14 | borderMipMap: 0 15 | mipMapFadeDistanceStart: 1 16 | mipMapFadeDistanceEnd: 3 17 | bumpmap: 18 | convertToNormalMap: 0 19 | externalNormalMap: 0 20 | heightScale: 0.25 21 | normalMapFilter: 0 22 | isReadable: 0 23 | grayScaleToAlpha: 0 24 | generateCubemap: 0 25 | cubemapConvolution: 0 26 | cubemapConvolutionSteps: 7 27 | cubemapConvolutionExponent: 1.5 28 | seamlessCubemap: 0 29 | textureFormat: -3 30 | maxTextureSize: 2048 31 | textureSettings: 32 | filterMode: 1 33 | aniso: 1 34 | mipBias: -1 35 | wrapMode: 1 36 | nPOTScale: 0 37 | lightmap: 0 38 | rGBM: 0 39 | compressionQuality: 50 40 | allowsAlphaSplitting: 0 41 | spriteMode: 0 42 | spriteExtrude: 1 43 | spriteMeshType: 1 44 | alignment: 0 45 | spritePivot: {x: 0.5, y: 0.5} 46 | spriteBorder: {x: 0, y: 0, z: 0, w: 0} 47 | spritePixelsToUnits: 100 48 | alphaIsTransparency: 1 49 | spriteTessellationDetail: -1 50 | textureType: 2 51 | buildTargetSettings: [] 52 | spriteSheet: 53 | serializedVersion: 2 54 | sprites: [] 55 | outline: [] 56 | spritePackingTag: 57 | userData: 58 | assetBundleName: 59 | assetBundleVariant: 60 | -------------------------------------------------------------------------------- /NodeGraph/Editor/DefultSkin/NodeImage/on_node7@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zouhunter/unity-nodegraph-frame/f5c6f781e164e515bedd73d906b9989fb2dad7f4/NodeGraph/Editor/DefultSkin/NodeImage/on_node7@2x.png -------------------------------------------------------------------------------- /NodeGraph/Editor/DefultSkin/NodeImage/on_node7@2x.png.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 8f7ecdf2556ad4d3a820aba90522fab4 3 | timeCreated: 1488107595 4 | licenseType: Pro 5 | TextureImporter: 6 | fileIDToRecycleName: {} 7 | serializedVersion: 2 8 | mipmaps: 9 | mipMapMode: 0 10 | enableMipMap: 0 11 | linearTexture: 1 12 | correctGamma: 0 13 | fadeOut: 0 14 | borderMipMap: 0 15 | mipMapFadeDistanceStart: 1 16 | mipMapFadeDistanceEnd: 3 17 | bumpmap: 18 | convertToNormalMap: 0 19 | externalNormalMap: 0 20 | heightScale: 0.25 21 | normalMapFilter: 0 22 | isReadable: 0 23 | grayScaleToAlpha: 0 24 | generateCubemap: 0 25 | cubemapConvolution: 0 26 | cubemapConvolutionSteps: 7 27 | cubemapConvolutionExponent: 1.5 28 | seamlessCubemap: 0 29 | textureFormat: -3 30 | maxTextureSize: 2048 31 | textureSettings: 32 | filterMode: 1 33 | aniso: 1 34 | mipBias: -1 35 | wrapMode: 1 36 | nPOTScale: 0 37 | lightmap: 0 38 | rGBM: 0 39 | compressionQuality: 50 40 | allowsAlphaSplitting: 0 41 | spriteMode: 0 42 | spriteExtrude: 1 43 | spriteMeshType: 1 44 | alignment: 0 45 | spritePivot: {x: 0.5, y: 0.5} 46 | spriteBorder: {x: 0, y: 0, z: 0, w: 0} 47 | spritePixelsToUnits: 100 48 | alphaIsTransparency: 1 49 | spriteTessellationDetail: -1 50 | textureType: 2 51 | buildTargetSettings: [] 52 | spriteSheet: 53 | serializedVersion: 2 54 | sprites: [] 55 | outline: [] 56 | spritePackingTag: 57 | userData: 58 | assetBundleName: 59 | assetBundleVariant: 60 | -------------------------------------------------------------------------------- /NodeGraph/Editor/DefultSkin/NodeImage/on_node8.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zouhunter/unity-nodegraph-frame/f5c6f781e164e515bedd73d906b9989fb2dad7f4/NodeGraph/Editor/DefultSkin/NodeImage/on_node8.png -------------------------------------------------------------------------------- /NodeGraph/Editor/DefultSkin/NodeImage/on_node8.png.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 76f42306b205543bf8fd126dd531dd99 3 | timeCreated: 1488108326 4 | licenseType: Pro 5 | TextureImporter: 6 | fileIDToRecycleName: {} 7 | serializedVersion: 2 8 | mipmaps: 9 | mipMapMode: 0 10 | enableMipMap: 0 11 | linearTexture: 1 12 | correctGamma: 0 13 | fadeOut: 0 14 | borderMipMap: 0 15 | mipMapFadeDistanceStart: 1 16 | mipMapFadeDistanceEnd: 3 17 | bumpmap: 18 | convertToNormalMap: 0 19 | externalNormalMap: 0 20 | heightScale: 0.25 21 | normalMapFilter: 0 22 | isReadable: 0 23 | grayScaleToAlpha: 0 24 | generateCubemap: 0 25 | cubemapConvolution: 0 26 | cubemapConvolutionSteps: 7 27 | cubemapConvolutionExponent: 1.5 28 | seamlessCubemap: 0 29 | textureFormat: -3 30 | maxTextureSize: 2048 31 | textureSettings: 32 | filterMode: 1 33 | aniso: 1 34 | mipBias: -1 35 | wrapMode: 1 36 | nPOTScale: 0 37 | lightmap: 0 38 | rGBM: 0 39 | compressionQuality: 50 40 | allowsAlphaSplitting: 0 41 | spriteMode: 0 42 | spriteExtrude: 1 43 | spriteMeshType: 1 44 | alignment: 0 45 | spritePivot: {x: 0.5, y: 0.5} 46 | spriteBorder: {x: 0, y: 0, z: 0, w: 0} 47 | spritePixelsToUnits: 100 48 | alphaIsTransparency: 1 49 | spriteTessellationDetail: -1 50 | textureType: 2 51 | buildTargetSettings: [] 52 | spriteSheet: 53 | serializedVersion: 2 54 | sprites: [] 55 | outline: [] 56 | spritePackingTag: 57 | userData: 58 | assetBundleName: 59 | assetBundleVariant: 60 | -------------------------------------------------------------------------------- /NodeGraph/Editor/DefultSkin/NodeImage/on_node8@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zouhunter/unity-nodegraph-frame/f5c6f781e164e515bedd73d906b9989fb2dad7f4/NodeGraph/Editor/DefultSkin/NodeImage/on_node8@2x.png -------------------------------------------------------------------------------- /NodeGraph/Editor/DefultSkin/NodeImage/on_node8@2x.png.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: cb8c96287a087455ab5f02f76f764c10 3 | timeCreated: 1488107595 4 | licenseType: Pro 5 | TextureImporter: 6 | fileIDToRecycleName: {} 7 | serializedVersion: 2 8 | mipmaps: 9 | mipMapMode: 0 10 | enableMipMap: 0 11 | linearTexture: 1 12 | correctGamma: 0 13 | fadeOut: 0 14 | borderMipMap: 0 15 | mipMapFadeDistanceStart: 1 16 | mipMapFadeDistanceEnd: 3 17 | bumpmap: 18 | convertToNormalMap: 0 19 | externalNormalMap: 0 20 | heightScale: 0.25 21 | normalMapFilter: 0 22 | isReadable: 0 23 | grayScaleToAlpha: 0 24 | generateCubemap: 0 25 | cubemapConvolution: 0 26 | cubemapConvolutionSteps: 7 27 | cubemapConvolutionExponent: 1.5 28 | seamlessCubemap: 0 29 | textureFormat: -3 30 | maxTextureSize: 2048 31 | textureSettings: 32 | filterMode: 1 33 | aniso: 1 34 | mipBias: -1 35 | wrapMode: 1 36 | nPOTScale: 0 37 | lightmap: 0 38 | rGBM: 0 39 | compressionQuality: 50 40 | allowsAlphaSplitting: 0 41 | spriteMode: 0 42 | spriteExtrude: 1 43 | spriteMeshType: 1 44 | alignment: 0 45 | spritePivot: {x: 0.5, y: 0.5} 46 | spriteBorder: {x: 0, y: 0, z: 0, w: 0} 47 | spritePixelsToUnits: 100 48 | alphaIsTransparency: 1 49 | spriteTessellationDetail: -1 50 | textureType: 2 51 | buildTargetSettings: [] 52 | spriteSheet: 53 | serializedVersion: 2 54 | sprites: [] 55 | outline: [] 56 | spritePackingTag: 57 | userData: 58 | assetBundleName: 59 | assetBundleVariant: 60 | -------------------------------------------------------------------------------- /NodeGraph/Editor/DefultSkin/NodeStyle.guiskin.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 75ce4a2b9ce8e45f9bcb12d38ed95952 3 | timeCreated: 1488089891 4 | licenseType: Pro 5 | NativeFormatImporter: 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /NodeGraph/Editor/DefultSkin/Viewer.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: f2285dd5ee7ee5c42adf67341b75f53f 3 | folderAsset: yes 4 | timeCreated: 1529904253 5 | licenseType: Pro 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /NodeGraph/Editor/DefultSkin/Viewer/DefultSkinNodeView.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | using UnityEditor; 3 | 4 | 5 | namespace NodeGraph.DefultSkin 6 | { 7 | public abstract class DefultSkinNodeView : NodeView 8 | { 9 | public virtual int Style { get { return 0; } } 10 | public virtual float CustomNodeHeight { get { return 0; } } 11 | private int lastSyle; 12 | private GUISkin _skin; 13 | protected GUISkin skin 14 | { 15 | get 16 | { 17 | if (_skin == null) 18 | { 19 | var path = AssetDatabase.GUIDToAssetPath("75ce4a2b9ce8e45f9bcb12d38ed95952"); 20 | _skin = AssetDatabase.LoadAssetAtPath(path); 21 | Debug.Assert(_skin != null, "the guid of the skin is changed!"); 22 | } 23 | return _skin; 24 | } 25 | } 26 | private GUIStyle _activeStyle; 27 | public override GUIStyle ActiveStyle 28 | { 29 | get 30 | { 31 | if (Style != lastSyle){ 32 | ResetStyle(); 33 | } 34 | if (_activeStyle == null) 35 | { 36 | _activeStyle = new GUIStyle(skin.FindStyle(string.Format("node {0} on", Style))); 37 | } 38 | return _activeStyle; 39 | } 40 | } 41 | 42 | private GUIStyle _inactiveStyle; 43 | public override GUIStyle InactiveStyle 44 | { 45 | get 46 | { 47 | if(Style != lastSyle){ 48 | ResetStyle(); 49 | } 50 | if(_inactiveStyle == null) 51 | { 52 | _inactiveStyle = new GUIStyle( skin.FindStyle(string.Format("node {0}", Style))) ; 53 | } 54 | return _inactiveStyle; 55 | } 56 | } 57 | 58 | protected void ResetStyle() 59 | { 60 | _activeStyle = null; 61 | _inactiveStyle = null; 62 | lastSyle = Style; 63 | } 64 | } 65 | } -------------------------------------------------------------------------------- /NodeGraph/Editor/DefultSkin/Viewer/DefultSkinNodeView.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 4ccc85901def53149af867e05d63d89e 3 | timeCreated: 1529904263 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /NodeGraph/Editor/EmptyController.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | using System.Collections.Generic; 3 | 4 | namespace NodeGraph 5 | { 6 | public class EmptyController : NodeGraphController 7 | { 8 | public override string Group { get { return "Empty"; } } 9 | 10 | protected override void JudgeNodeExceptions(DataModel. NodeGraphObj m_targetGraph, List m_nodeExceptions) 11 | { 12 | Debug.Log("To Judge All Nodes, Is There Have Some Exceptions?"); 13 | } 14 | internal override void BuildFromGraph(DataModel.NodeGraphObj m_targetGraph) 15 | { 16 | Debug.Log("On Build Button Clicked!"); 17 | } 18 | 19 | internal override List> OnDragAccept(UnityEngine.Object[] objectReferences) 20 | { 21 | Debug.Log("You Can Quick Generate Node From DragAndDrop!"); 22 | return new List>(); 23 | } 24 | 25 | internal override void Validate(NodeGUI node) 26 | { 27 | Debug.Log("When One Node Is Updated, Judge Validate!"); 28 | } 29 | } 30 | 31 | } -------------------------------------------------------------------------------- /NodeGraph/Editor/EmptyController.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: e05196dd3a1407a4db28d0cfd11a5a53 3 | timeCreated: 1513605503 4 | licenseType: Free 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /NodeGraph/Editor/GUI.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: a25d0a90608db4dc58c635afb9963abc 3 | folderAsset: yes 4 | timeCreated: 1494625784 5 | licenseType: Pro 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /NodeGraph/Editor/GUI/ConnectionEvent.cs: -------------------------------------------------------------------------------- 1 | namespace NodeGraph { 2 | public class ConnectionEvent { 3 | public enum EventType { 4 | EVENT_NONE, 5 | EVENT_CONNECTION_TAPPED, 6 | EVENT_CONNECTION_DELETED, 7 | } 8 | 9 | public readonly EventType eventType; 10 | public readonly ConnectionGUI eventSourceCon; 11 | 12 | public ConnectionEvent (EventType type, ConnectionGUI con) { 13 | this.eventType = type; 14 | this.eventSourceCon = con; 15 | } 16 | } 17 | } -------------------------------------------------------------------------------- /NodeGraph/Editor/GUI/ConnectionEvent.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 207962df4115f4a73bc381985e110fd4 3 | timeCreated: 1494625784 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /NodeGraph/Editor/GUI/ConnectionGUI.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zouhunter/unity-nodegraph-frame/f5c6f781e164e515bedd73d906b9989fb2dad7f4/NodeGraph/Editor/GUI/ConnectionGUI.cs -------------------------------------------------------------------------------- /NodeGraph/Editor/GUI/ConnectionGUI.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: a073337e5a6474ad2bc1d344d9ce8211 3 | timeCreated: 1494625785 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /NodeGraph/Editor/GUI/ConnectionGUIEditor.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | using UnityEditor; 3 | using System; 4 | 5 | namespace NodeGraph 6 | { 7 | [CustomEditor(typeof(ConnectionGUIInspectorHelper))] 8 | public class ConnectionGUIEditor : Editor 9 | { 10 | public override bool RequiresConstantRepaint() 11 | { 12 | return true; 13 | } 14 | 15 | public override void OnInspectorGUI() 16 | { 17 | ConnectionGUIInspectorHelper helper = target as ConnectionGUIInspectorHelper; 18 | var con = helper.connectionGUI; 19 | if (con == null) { 20 | return; 21 | } 22 | 23 | con.DrawObject(); 24 | } 25 | 26 | private bool DrawToggle(bool on, string tip) 27 | { 28 | using (var hor = new EditorGUILayout.HorizontalScope()) 29 | { 30 | on = GUILayout.Toggle(on, tip, EditorStyles.radioButton, GUILayout.Height(60),GUILayout.Width(100)); 31 | EditorGUILayout.LabelField(tip); 32 | } 33 | return on; 34 | } 35 | 36 | private Enum DrawEnum(Enum em, string tip) 37 | { 38 | using (var hor = new EditorGUILayout.HorizontalScope()) 39 | { 40 | em = EditorGUILayout.EnumPopup(em, EditorStyles.toolbarDropDown, GUILayout.Height(60), GUILayout.Width(100)); 41 | EditorGUILayout.LabelField(tip); 42 | } 43 | return em; 44 | } 45 | 46 | 47 | } 48 | } -------------------------------------------------------------------------------- /NodeGraph/Editor/GUI/ConnectionGUIEditor.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: a68de7e1271fb487c85fbb75941f9b17 3 | timeCreated: 1494625785 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /NodeGraph/Editor/GUI/ConnectionGUIInspectorHelper.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | using System.Collections.Generic; 3 | 4 | using Model=NodeGraph.DataModel; 5 | 6 | namespace NodeGraph { 7 | /* 8 | * ScriptableObject helper object to let ConnectionGUI edit from Inspector 9 | */ 10 | public class ConnectionGUIInspectorHelper : ScriptableObject { 11 | public ConnectionGUI connectionGUI; 12 | 13 | public void UpdateInspector (ConnectionGUI con) { 14 | this.connectionGUI = con; 15 | } 16 | } 17 | } 18 | -------------------------------------------------------------------------------- /NodeGraph/Editor/GUI/ConnectionGUIInspectorHelper.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 846e593cd8f7045d98412733176e1442 3 | timeCreated: 1494625785 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /NodeGraph/Editor/GUI/ConnectionGUIUtility.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | using UnityEditor; 3 | 4 | using System; 5 | using System.IO; 6 | using System.Linq; 7 | using System.Collections.Generic; 8 | 9 | using Model=NodeGraph.DataModel; 10 | 11 | namespace NodeGraph { 12 | public class ConnectionGUIUtility { 13 | 14 | public static Action ConnectionEventHandler { 15 | get { 16 | return ConnectionGUISingleton.s.emitAction; 17 | } 18 | set { 19 | ConnectionGUISingleton.s.emitAction = value; 20 | } 21 | } 22 | 23 | public static Material HandleMaterial { 24 | get { 25 | if(ConnectionGUISingleton.s.handleMat == null) { 26 | Shader shader = Shader.Find ("Hidden/NodeGraph.DataModel/LineDraw"); 27 | Material m = new Material (shader); 28 | m.hideFlags = HideFlags.HideAndDontSave; 29 | ConnectionGUISingleton.s.handleMat = m; 30 | } 31 | return ConnectionGUISingleton.s.handleMat; 32 | } 33 | } 34 | 35 | private class ConnectionGUISingleton { 36 | public Action emitAction; 37 | public Material handleMat; 38 | 39 | private static ConnectionGUISingleton s_singleton; 40 | 41 | public static ConnectionGUISingleton s { 42 | get { 43 | if( s_singleton == null ) { 44 | s_singleton = new ConnectionGUISingleton(); 45 | } 46 | 47 | return s_singleton; 48 | } 49 | } 50 | } 51 | } 52 | } 53 | -------------------------------------------------------------------------------- /NodeGraph/Editor/GUI/ConnectionGUIUtility.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 346bda70af48240ecbace0e785adc937 3 | timeCreated: 1494625784 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /NodeGraph/Editor/GUI/ConnectionView.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | using UnityEngine.UI; 3 | using UnityEngine.Audio; 4 | using UnityEngine.Events; 5 | using UnityEngine.Sprites; 6 | using UnityEngine.Scripting; 7 | using UnityEngine.Assertions; 8 | using UnityEngine.EventSystems; 9 | using UnityEngine.Assertions.Must; 10 | using UnityEngine.Assertions.Comparers; 11 | using System.Collections; 12 | using System.Collections.Generic; 13 | using UnityEditor; 14 | using System; 15 | 16 | namespace NodeGraph 17 | { 18 | public class ConnectionView 19 | { 20 | public DataModel.Connection target; 21 | protected Editor targetDrawer; 22 | 23 | internal virtual int LineWidth { get { return 3; } } 24 | internal virtual Color LineColor { get { return Color.white; } } 25 | 26 | internal virtual void OnDrawLabel(Vector2 centerPos, string label) 27 | { 28 | if(!string.IsNullOrEmpty(label)){ 29 | GUIStyle labelStyle = EditorStyles.miniTextField;// new GUIStyle("WhiteMiniLabel"); 30 | labelStyle.alignment = TextAnchor.MiddleLeft; 31 | var labelWidth = labelStyle.CalcSize(new GUIContent(label)); 32 | var labelPointV3 = new Vector2(centerPos.x - (labelWidth.x / 2), centerPos.y - 5); 33 | Handles.Label(labelPointV3, label, labelStyle); 34 | } 35 | } 36 | 37 | internal virtual void OnConnectionGUI(Vector2 startV3, Vector2 endV3, Vector2 startTan, Vector2 endTan) { } 38 | 39 | internal virtual void OnInspectorGUI() 40 | { 41 | if (target == null) return; 42 | 43 | if (targetDrawer == null) 44 | targetDrawer = Editor.CreateEditor(target); 45 | 46 | targetDrawer.DrawHeader(); 47 | targetDrawer.OnInspectorGUI(); 48 | } 49 | 50 | internal virtual void OnContextMenuGUI(GenericMenu menu, ConnectionGUI connectionGUI) { } 51 | } 52 | 53 | } -------------------------------------------------------------------------------- /NodeGraph/Editor/GUI/ConnectionView.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: a2b7bf23e8bf7cc4bb0d601f01a033a8 3 | timeCreated: 1513240002 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /NodeGraph/Editor/GUI/DefultDrawer.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | using UnityEditor; 3 | using System.Reflection; 4 | using System.Collections.Generic; 5 | -------------------------------------------------------------------------------- /NodeGraph/Editor/GUI/DefultDrawer.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: e40b294f3ca932342ae8eee139efc216 3 | timeCreated: 1513317529 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /NodeGraph/Editor/GUI/GraphBackground.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | using UnityEditor; 3 | 4 | using System; 5 | using System.IO; 6 | using System.Linq; 7 | using System.Collections.Generic; 8 | 9 | namespace NodeGraph { 10 | public class GraphBackground { 11 | 12 | protected const float kNodeGridSize = 12.0f; 13 | private const float kMajorGridSize = 120.0f; 14 | private static readonly Color kGridMinorColorDark = new Color (0f, 0f, 0f, 0.18f); 15 | private static readonly Color kGridMajorColorDark = new Color (0f, 0f, 0f, 0.28f); 16 | private static readonly Color kGridMinorColorLight = new Color (0f, 0f, 0f, 0.10f); 17 | private static readonly Color kGridMajorColorLight = new Color (0f, 0f, 0f, 0.15f); 18 | 19 | private Rect m_graphRegion; 20 | private Vector2 m_scrollPosition; 21 | 22 | private Material m_lineMaterial; 23 | 24 | private static Color gridMinorColor 25 | { 26 | get 27 | { 28 | if (EditorGUIUtility.isProSkin) 29 | return kGridMinorColorDark; 30 | else 31 | return kGridMinorColorLight; 32 | } 33 | } 34 | private static Color gridMajorColor 35 | { 36 | get 37 | { 38 | if (EditorGUIUtility.isProSkin) 39 | return kGridMajorColorDark; 40 | else 41 | return kGridMajorColorLight; 42 | } 43 | } 44 | 45 | private Material CreateLineMaterial () 46 | { 47 | // Unity has a built-in shader that is useful for drawing 48 | // simple colored things. 49 | Shader shader = Shader.Find ("Hidden/NodeGraph.DataModel/LineDraw"); 50 | Material m = new Material (shader); 51 | m.hideFlags = HideFlags.HideAndDontSave; 52 | return m; 53 | } 54 | 55 | 56 | public void Draw(Rect position, Vector2 scroll,float scale) 57 | { 58 | m_graphRegion = position; 59 | m_scrollPosition = scroll; 60 | 61 | if (Event.current.type == EventType.Repaint) { 62 | UnityEditor.Graphs.Styles.graphBackground.Draw(position, false, false, false, false); 63 | } 64 | 65 | DrawGrid (scale); 66 | } 67 | 68 | private void DrawGrid (float scale) 69 | { 70 | if (Event.current.type != EventType.Repaint) { 71 | return; 72 | } 73 | 74 | if(m_lineMaterial == null) { 75 | m_lineMaterial = CreateLineMaterial(); 76 | } 77 | 78 | m_lineMaterial.SetPass(0); 79 | 80 | GL.PushMatrix (); 81 | GL.Begin (GL.LINES); 82 | 83 | DrawGridLines (kNodeGridSize* scale, gridMinorColor); 84 | DrawGridLines (kMajorGridSize* scale, gridMajorColor); 85 | 86 | GL.End (); 87 | GL.PopMatrix (); 88 | } 89 | 90 | private void DrawGridLines (float gridSize, Color gridColor) 91 | { 92 | GL.Color (gridColor); 93 | for (float x = m_graphRegion.xMin - (m_graphRegion.xMin % gridSize) - m_scrollPosition.x; x < m_graphRegion.xMax; x += gridSize) { 94 | if(x < m_graphRegion.xMin) { 95 | continue; 96 | } 97 | DrawLine (new Vector2 (x, m_graphRegion.yMin), new Vector2 (x, m_graphRegion.yMax)); 98 | } 99 | GL.Color (gridColor); 100 | for (float y = m_graphRegion.yMin - (m_graphRegion.yMin % gridSize) - m_scrollPosition.y; y < m_graphRegion.yMax; y += gridSize) { 101 | if(y < m_graphRegion.yMin) { 102 | continue; 103 | } 104 | DrawLine (new Vector2 (m_graphRegion.xMin, y), new Vector2 (m_graphRegion.xMax, y)); 105 | } 106 | } 107 | 108 | private void DrawLine (Vector2 p1, Vector2 p2) 109 | { 110 | GL.Vertex (p1); 111 | GL.Vertex (p2); 112 | } 113 | } 114 | } -------------------------------------------------------------------------------- /NodeGraph/Editor/GUI/GraphBackground.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: bb6c03f5afc23481cb01e7c813d06e48 3 | timeCreated: 1494625785 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /NodeGraph/Editor/GUI/GraphicResources.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 3706d7e9bff914014a8c0d30e8f854e6 3 | folderAsset: yes 4 | timeCreated: 1494625784 5 | licenseType: Pro 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /NodeGraph/Editor/GUI/GraphicResources/ConnectionPoint.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zouhunter/unity-nodegraph-frame/f5c6f781e164e515bedd73d906b9989fb2dad7f4/NodeGraph/Editor/GUI/GraphicResources/ConnectionPoint.png -------------------------------------------------------------------------------- /NodeGraph/Editor/GUI/GraphicResources/ConnectionPoint.png.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 0bf674c3f0a4e42228c87053bedac19e 3 | timeCreated: 1488053882 4 | licenseType: Pro 5 | TextureImporter: 6 | fileIDToRecycleName: {} 7 | serializedVersion: 2 8 | mipmaps: 9 | mipMapMode: 0 10 | enableMipMap: 0 11 | linearTexture: 1 12 | correctGamma: 0 13 | fadeOut: 0 14 | borderMipMap: 0 15 | mipMapFadeDistanceStart: 1 16 | mipMapFadeDistanceEnd: 3 17 | bumpmap: 18 | convertToNormalMap: 0 19 | externalNormalMap: 0 20 | heightScale: 0.25 21 | normalMapFilter: 0 22 | isReadable: 0 23 | grayScaleToAlpha: 0 24 | generateCubemap: 0 25 | cubemapConvolution: 0 26 | cubemapConvolutionSteps: 7 27 | cubemapConvolutionExponent: 1.5 28 | seamlessCubemap: 0 29 | textureFormat: -1 30 | maxTextureSize: 2048 31 | textureSettings: 32 | filterMode: -1 33 | aniso: 1 34 | mipBias: -1 35 | wrapMode: 1 36 | nPOTScale: 0 37 | lightmap: 0 38 | rGBM: 0 39 | compressionQuality: 50 40 | allowsAlphaSplitting: 0 41 | spriteMode: 0 42 | spriteExtrude: 1 43 | spriteMeshType: 1 44 | alignment: 0 45 | spritePivot: {x: 0.5, y: 0.5} 46 | spriteBorder: {x: 0, y: 0, z: 0, w: 0} 47 | spritePixelsToUnits: 100 48 | alphaIsTransparency: 1 49 | spriteTessellationDetail: -1 50 | textureType: 2 51 | buildTargetSettings: [] 52 | spriteSheet: 53 | serializedVersion: 2 54 | sprites: [] 55 | outline: [] 56 | spritePackingTag: 57 | userData: 58 | assetBundleName: 59 | assetBundleVariant: 60 | -------------------------------------------------------------------------------- /NodeGraph/Editor/GUI/GraphicResources/InputBG.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zouhunter/unity-nodegraph-frame/f5c6f781e164e515bedd73d906b9989fb2dad7f4/NodeGraph/Editor/GUI/GraphicResources/InputBG.png -------------------------------------------------------------------------------- /NodeGraph/Editor/GUI/GraphicResources/InputBG.png.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: a1db7ee549d5147d4b42adf1b7396354 3 | timeCreated: 1450270430 4 | licenseType: Pro 5 | TextureImporter: 6 | fileIDToRecycleName: {} 7 | serializedVersion: 2 8 | mipmaps: 9 | mipMapMode: 0 10 | enableMipMap: 0 11 | linearTexture: 1 12 | correctGamma: 0 13 | fadeOut: 0 14 | borderMipMap: 0 15 | mipMapFadeDistanceStart: 1 16 | mipMapFadeDistanceEnd: 3 17 | bumpmap: 18 | convertToNormalMap: 0 19 | externalNormalMap: 0 20 | heightScale: 0.25 21 | normalMapFilter: 0 22 | isReadable: 0 23 | grayScaleToAlpha: 0 24 | generateCubemap: 0 25 | cubemapConvolution: 0 26 | cubemapConvolutionSteps: 7 27 | cubemapConvolutionExponent: 1.5 28 | seamlessCubemap: 0 29 | textureFormat: -1 30 | maxTextureSize: 2048 31 | textureSettings: 32 | filterMode: -1 33 | aniso: 1 34 | mipBias: -1 35 | wrapMode: 1 36 | nPOTScale: 0 37 | lightmap: 0 38 | rGBM: 0 39 | compressionQuality: 50 40 | allowsAlphaSplitting: 0 41 | spriteMode: 0 42 | spriteExtrude: 1 43 | spriteMeshType: 1 44 | alignment: 0 45 | spritePivot: {x: 0.5, y: 0.5} 46 | spriteBorder: {x: 0, y: 0, z: 0, w: 0} 47 | spritePixelsToUnits: 100 48 | alphaIsTransparency: 1 49 | textureType: 2 50 | buildTargetSettings: [] 51 | spriteSheet: 52 | sprites: [] 53 | outline: [] 54 | spritePackingTag: 55 | userData: 56 | assetBundleName: 57 | assetBundleVariant: 58 | -------------------------------------------------------------------------------- /NodeGraph/Editor/GUI/GraphicResources/LineDraw.shader: -------------------------------------------------------------------------------- 1 | // Unity built-in shader source. Copyright (c) 2016 Unity Technologies. MIT license (see license.txt) 2 | 3 | 4 | Shader "Hidden/NodeGraph.DataModel/LineDraw" { 5 | Properties{ 6 | _MainTex("Base (RGB)", 2D) = "white" {} 7 | _TransVal("Transparency Value", Range(0,1)) = 0.1 8 | } 9 | SubShader{ 10 | Tags{ "RenderType" = "Opaque" "Queue" = "Transparent" } 11 | LOD 200 12 | 13 | CGPROGRAM 14 | #pragma surface surf Lambert alpha 15 | 16 | sampler2D _MainTex; 17 | float _TransVal; 18 | 19 | struct Input { 20 | float2 uv_MainTex; 21 | }; 22 | 23 | void surf(Input IN, inout SurfaceOutput o) { 24 | half4 c = tex2D(_MainTex, IN.uv_MainTex); 25 | o.Albedo = c.rgb; 26 | o.Alpha = c.b * _TransVal; 27 | } 28 | ENDCG 29 | } 30 | FallBack "Diffuse" 31 | } -------------------------------------------------------------------------------- /NodeGraph/Editor/GUI/GraphicResources/LineDraw.shader.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 2bc0d9d4d7b8e478c831da74cdf06151 3 | timeCreated: 1484128090 4 | licenseType: Pro 5 | ShaderImporter: 6 | defaultTextures: [] 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /NodeGraph/Editor/GUI/GraphicResources/OutputBG.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zouhunter/unity-nodegraph-frame/f5c6f781e164e515bedd73d906b9989fb2dad7f4/NodeGraph/Editor/GUI/GraphicResources/OutputBG.png -------------------------------------------------------------------------------- /NodeGraph/Editor/GUI/GraphicResources/OutputBG.png.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 7576b8f317a11494eae65b2335689272 3 | timeCreated: 1450270429 4 | licenseType: Pro 5 | TextureImporter: 6 | fileIDToRecycleName: {} 7 | serializedVersion: 2 8 | mipmaps: 9 | mipMapMode: 0 10 | enableMipMap: 0 11 | linearTexture: 1 12 | correctGamma: 0 13 | fadeOut: 0 14 | borderMipMap: 0 15 | mipMapFadeDistanceStart: 1 16 | mipMapFadeDistanceEnd: 3 17 | bumpmap: 18 | convertToNormalMap: 0 19 | externalNormalMap: 0 20 | heightScale: 0.25 21 | normalMapFilter: 0 22 | isReadable: 0 23 | grayScaleToAlpha: 0 24 | generateCubemap: 0 25 | cubemapConvolution: 0 26 | cubemapConvolutionSteps: 7 27 | cubemapConvolutionExponent: 1.5 28 | seamlessCubemap: 0 29 | textureFormat: -1 30 | maxTextureSize: 2048 31 | textureSettings: 32 | filterMode: -1 33 | aniso: 1 34 | mipBias: -1 35 | wrapMode: 1 36 | nPOTScale: 0 37 | lightmap: 0 38 | rGBM: 0 39 | compressionQuality: 50 40 | allowsAlphaSplitting: 0 41 | spriteMode: 0 42 | spriteExtrude: 1 43 | spriteMeshType: 1 44 | alignment: 0 45 | spritePivot: {x: 0.5, y: 0.5} 46 | spriteBorder: {x: 0, y: 0, z: 0, w: 0} 47 | spritePixelsToUnits: 100 48 | alphaIsTransparency: 1 49 | textureType: 2 50 | buildTargetSettings: [] 51 | spriteSheet: 52 | sprites: [] 53 | outline: [] 54 | spritePackingTag: 55 | userData: 56 | assetBundleName: 57 | assetBundleVariant: 58 | -------------------------------------------------------------------------------- /NodeGraph/Editor/GUI/NodeEvent.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | 3 | using Model=NodeGraph.DataModel; 4 | 5 | namespace NodeGraph { 6 | public class NodeEvent { 7 | public enum EventType { 8 | EVENT_NONE, 9 | 10 | EVENT_CONNECTING_BEGIN, 11 | EVENT_CONNECTING_END, 12 | EVENT_CONNECTION_ESTABLISHED, 13 | 14 | EVENT_NODE_UPDATED, 15 | 16 | EVENT_NODE_CLICKED, 17 | 18 | EVENT_CONNECTIONPOINT_DELETED, 19 | EVENT_CONNECTIONPOINT_LABELCHANGED, 20 | 21 | EVENT_DELETE_ALL_CONNECTIONS_TO_POINT, 22 | 23 | EVENT_NODE_DELETE, 24 | 25 | EVENT_RECORDUNDO, 26 | EVENT_SAVE, 27 | } 28 | 29 | public readonly EventType eventType; 30 | public readonly NodeGUI eventSourceNode; 31 | public readonly Model.ConnectionPointData point; 32 | public readonly Vector2 position; 33 | public readonly Vector2 globalMousePosition; 34 | public readonly string message; 35 | 36 | public NodeEvent (EventType type, NodeGUI node, Vector2 localMousePos, Model.ConnectionPointData point) { 37 | this.eventType = type; 38 | this.eventSourceNode = node; 39 | this.point = point; 40 | this.position = localMousePos; 41 | this.globalMousePosition = new Vector2(localMousePos.x + node.GetX(), localMousePos.y + node.GetY()); 42 | } 43 | 44 | public NodeEvent (EventType type, NodeGUI node) { 45 | this.eventType = type; 46 | this.eventSourceNode = node; 47 | } 48 | 49 | public NodeEvent (EventType type, string message) { 50 | this.eventType = type; 51 | this.message = message; 52 | } 53 | 54 | public NodeEvent (EventType type) { 55 | this.eventType = type; 56 | } 57 | } 58 | } -------------------------------------------------------------------------------- /NodeGraph/Editor/GUI/NodeEvent.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 0e179c9e7e4094b6cacb7dec874f7144 3 | timeCreated: 1494625784 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /NodeGraph/Editor/GUI/NodeGUI.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: fbc295f9fd7874aef834ba4d3abd555b 3 | timeCreated: 1494625785 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /NodeGraph/Editor/GUI/NodeGUIEditor.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | using UnityEditor; 3 | 4 | using System; 5 | using System.IO; 6 | using System.Linq; 7 | using System.Collections.Generic; 8 | using System.Reflection; 9 | 10 | using Model = NodeGraph.DataModel; 11 | 12 | namespace NodeGraph 13 | { 14 | [CustomEditor(typeof(NodeGUIInspectorHelper))] 15 | public class NodeGUIEditor : Editor 16 | { 17 | protected override void OnHeaderGUI() 18 | { 19 | } 20 | public override bool RequiresConstantRepaint() 21 | { 22 | return true; 23 | } 24 | public override void OnInspectorGUI() 25 | { 26 | var currentTarget = (NodeGUIInspectorHelper)target; 27 | var node = currentTarget.Node; 28 | 29 | if (node == null) 30 | { 31 | return; 32 | } 33 | 34 | UnityEngine.Assertions.Assert.IsNotNull(node); 35 | 36 | node.DrawNodeGUI(this); 37 | 38 | var errors = currentTarget.Errors; 39 | if (errors != null && errors.Any()) 40 | { 41 | foreach (var error in errors) 42 | { 43 | EditorGUILayout.HelpBox(error, MessageType.Error); 44 | } 45 | } 46 | } 47 | public string DrawFolderSelector(string label, 48 | string dialogTitle, 49 | string currentDirPath, 50 | string directoryOpenPath, 51 | Func onValidFolderSelected = null) 52 | { 53 | string newDirPath; 54 | using (new EditorGUILayout.HorizontalScope()) 55 | { 56 | if (string.IsNullOrEmpty(label)) 57 | { 58 | newDirPath = EditorGUILayout.TextField(currentDirPath); 59 | } 60 | else 61 | { 62 | newDirPath = EditorGUILayout.TextField(label, currentDirPath); 63 | } 64 | 65 | if (GUILayout.Button("Select", GUILayout.Width(50f))) 66 | { 67 | var folderSelected = 68 | EditorUtility.OpenFolderPanel(dialogTitle, directoryOpenPath, ""); 69 | if (!string.IsNullOrEmpty(folderSelected)) 70 | { 71 | if (onValidFolderSelected != null) 72 | { 73 | newDirPath = onValidFolderSelected(folderSelected); 74 | } 75 | else 76 | { 77 | newDirPath = folderSelected; 78 | } 79 | } 80 | } 81 | } 82 | return newDirPath; 83 | } 84 | } 85 | } -------------------------------------------------------------------------------- /NodeGraph/Editor/GUI/NodeGUIEditor.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 82a0f18c397f74c78afb86c98d2f8694 3 | timeCreated: 1494625785 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /NodeGraph/Editor/GUI/NodeGUIInspectorHelper.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | using System.Collections.Generic; 3 | using UnityEditor; 4 | using Model=NodeGraph.DataModel; 5 | 6 | namespace NodeGraph { 7 | /* 8 | * ScriptableObject helper object to let NodeGUI edit from Inspector 9 | */ 10 | public class NodeGUIInspectorHelper : ScriptableObject { 11 | 12 | public NodeGUI Node { get { return _node; } } 13 | public List Errors { get { return _errors; } } 14 | 15 | private NodeGUI _node; 16 | 17 | private List _errors = new List(); 18 | 19 | public void UpdateNodeGUI(NodeGUI node) 20 | { 21 | this._node = node; 22 | } 23 | 24 | public void UpdateErrors (List errorsSource) { 25 | this._errors = errorsSource; 26 | } 27 | } 28 | } -------------------------------------------------------------------------------- /NodeGraph/Editor/GUI/NodeGUIInspectorHelper.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 4c3716715aed2448b9917883c9958ab3 3 | timeCreated: 1494625784 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /NodeGraph/Editor/GUI/NodeGUIUtility.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | using UnityEditor; 3 | 4 | using System; 5 | using System.IO; 6 | using System.Linq; 7 | using System.Collections.Generic; 8 | 9 | using Model=NodeGraph.DataModel; 10 | 11 | namespace NodeGraph { 12 | public static class NodeGUIUtility { 13 | 14 | public static Texture2D LoadTextureFromFile(string path) { 15 | Texture2D texture = new Texture2D(1, 1); 16 | texture.LoadImage(File.ReadAllBytes(path)); 17 | return texture; 18 | } 19 | 20 | 21 | public struct PlatformButton { 22 | public readonly GUIContent ui; 23 | public readonly BuildTargetGroup targetGroup; 24 | 25 | public PlatformButton(GUIContent ui, BuildTargetGroup g) { 26 | this.ui = ui; 27 | this.targetGroup = g; 28 | } 29 | } 30 | 31 | public static Action NodeEventHandler { 32 | get { 33 | return NodeSingleton.s.emitAction; 34 | } 35 | set { 36 | NodeSingleton.s.emitAction = value; 37 | } 38 | } 39 | 40 | public static Texture2D inputPointBG { 41 | get { 42 | if(NodeSingleton.s.inputPointBG == null) { 43 | NodeSingleton.s.inputPointBG = LoadTextureFromFile(NGEditorSettings.GUI.InputBG); 44 | } 45 | return NodeSingleton.s.inputPointBG; 46 | } 47 | } 48 | 49 | public static Texture2D outputPointBG { 50 | get { 51 | if(NodeSingleton.s.outputPointBG == null) { 52 | NodeSingleton.s.outputPointBG = LoadTextureFromFile(NGEditorSettings.GUI.OutputBG); 53 | } 54 | return NodeSingleton.s.outputPointBG; 55 | } 56 | } 57 | 58 | public static Texture2D pointMark { 59 | get { 60 | if(NodeSingleton.s.pointMark == null) { 61 | NodeSingleton.s.pointMark = LoadTextureFromFile(NGEditorSettings.GUI.ConnectionPoint); 62 | } 63 | return NodeSingleton.s.pointMark; 64 | } 65 | } 66 | 67 | public static List allNodeNames { 68 | get { 69 | return NodeSingleton.s.allNodeNames; 70 | } 71 | set { 72 | NodeSingleton.s.allNodeNames = value; 73 | } 74 | } 75 | 76 | private class NodeSingleton { 77 | public Action emitAction; 78 | 79 | public Texture2D inputPointBG; 80 | public Texture2D outputPointBG; 81 | public Texture2D pointMark; 82 | 83 | public List allNodeNames; 84 | 85 | private static NodeSingleton s_singleton; 86 | 87 | public static NodeSingleton s { 88 | get { 89 | if( s_singleton == null ) { 90 | s_singleton = new NodeSingleton(); 91 | } 92 | 93 | return s_singleton; 94 | } 95 | } 96 | } 97 | 98 | public static Rect Muit(this Rect rect,float scaleFactor) 99 | { 100 | return new Rect(rect.x * scaleFactor, rect.y * scaleFactor, rect.width * scaleFactor, rect.height * scaleFactor); 101 | } 102 | } 103 | } 104 | -------------------------------------------------------------------------------- /NodeGraph/Editor/GUI/NodeGUIUtility.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 65c22f76b77044875a46f653f516c019 3 | timeCreated: 1494625784 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /NodeGraph/Editor/GUI/NodeGraphController.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 911eabe3a6551bb40af83b27be15914e 3 | timeCreated: 1494625785 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /NodeGraph/Editor/GUI/NodeGraphObjDrawer.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 92eb5dcde0e0343c2a063849d7a86b93 3 | timeCreated: 1494625785 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /NodeGraph/Editor/GUI/NodeGraphWindow.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 164b3cf85e513fd49a703daf69cc2231 3 | timeCreated: 1510909728 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /NodeGraph/Editor/GUI/NodeView.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | using UnityEditor; 3 | using System; 4 | using System.Collections.Generic; 5 | using NodeGraph.DataModel; 6 | using UnityEngine.Events; 7 | using System.Reflection; 8 | 9 | namespace NodeGraph 10 | { 11 | public class NodeView 12 | { 13 | protected Node _target; 14 | public virtual Node target { get { return _target; } set { _target = value; } } 15 | 16 | protected Editor targetDrawer; 17 | public virtual GUIStyle ActiveStyle { get { return EditorStyles.miniButton; } } 18 | public virtual GUIStyle InactiveStyle { get { return EditorStyles.miniButton; } } 19 | public virtual string Category { get { return "empty"; } } 20 | public virtual void OnContextMenuGUI(GenericMenu menu, NodeGUI gui) { } 21 | public virtual float SuperHeight { get { return 0; } } 22 | 23 | public virtual float SuperWidth { get { return 0; } } 24 | 25 | public virtual void OnNodeGUI(Rect position, NodeData data) 26 | { 27 | DrawLabel(position, data); 28 | } 29 | 30 | protected virtual void DrawLabel(Rect position, NodeData data) 31 | { 32 | var oldColor = GUI.color; 33 | var textColor = (EditorGUIUtility.isProSkin) ? Color.black : oldColor; 34 | var style = new GUIStyle(EditorStyles.label); 35 | style.alignment = TextAnchor.MiddleCenter; 36 | var titleHeight = style.CalcSize(new GUIContent(data.Name)).y + NGEditorSettings.GUI.NODE_TITLE_HEIGHT_MARGIN; 37 | var nodeTitleRect = new Rect(0, 0, position.width, titleHeight); 38 | GUI.color = textColor; 39 | GUI.Label(nodeTitleRect, data.Name, style); 40 | GUI.color = oldColor; 41 | } 42 | 43 | public virtual void OnInspectorGUI(NodeGUI gui) 44 | { 45 | if (target == null) return; 46 | 47 | if (targetDrawer == null) 48 | targetDrawer = Editor.CreateEditor(target); 49 | 50 | targetDrawer.DrawHeader(); 51 | targetDrawer.OnInspectorGUI(); 52 | } 53 | 54 | public virtual void OnClickNodeGUI(NodeGUI nodeGUI, Vector2 mousePosition, ConnectionPointData result) { } 55 | 56 | protected void RecordUnDo(string message, NodeGUI node, bool saveOnScopeEnd, UnityAction action) 57 | { 58 | using (new RecordUndoScope("Change Node Name", node, saveOnScopeEnd)) 59 | { 60 | action.Invoke(); 61 | } 62 | } 63 | } 64 | } 65 | 66 | -------------------------------------------------------------------------------- /NodeGraph/Editor/GUI/NodeView.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 114b076ed1746424f81bb844f0c6c54a 3 | timeCreated: 1513240011 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /NodeGraph/Editor/GUI/ProjectSettingsWindow.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 1c7eb706cff9343ddb45ab11a673231f 3 | timeCreated: 1494739575 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /NodeGraph/Editor/GUI/ScrollViewContainer.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 244137f0516083347814083bee75f18f 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /NodeGraph/Editor/GUI/UserPreference.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | using UnityEditor; 3 | 4 | using System; 5 | using System.IO; 6 | using System.Linq; 7 | using System.Reflection; 8 | using System.Collections; 9 | using System.Collections.Generic; 10 | 11 | using Model=NodeGraph.DataModel; 12 | 13 | namespace NodeGraph { 14 | 15 | public static class UserPreference { 16 | 17 | static readonly string kKEY_USERPREF_GRID = "NodeGraph.UserPref.GridSize"; 18 | 19 | private static bool s_prefsLoaded = false; 20 | 21 | private static float s_editorWindowGridSize; 22 | 23 | public static float EditorWindowGridSize { 24 | get { 25 | LoadAllPreferenceValues(); 26 | return s_editorWindowGridSize; 27 | } 28 | set { 29 | s_editorWindowGridSize = value; 30 | SaveAllPreferenceValues(); 31 | } 32 | } 33 | 34 | private static void LoadAllPreferenceValues() { 35 | if (!s_prefsLoaded) 36 | { 37 | s_editorWindowGridSize = EditorPrefs.GetFloat(kKEY_USERPREF_GRID, 12f); 38 | 39 | s_prefsLoaded = true; 40 | } 41 | } 42 | 43 | private static void SaveAllPreferenceValues() { 44 | EditorPrefs.SetFloat(kKEY_USERPREF_GRID, s_editorWindowGridSize); 45 | } 46 | 47 | [PreferenceItem("Node Graph")] 48 | public static void PreferencesGUI() { 49 | LoadAllPreferenceValues(); 50 | 51 | s_editorWindowGridSize = EditorGUILayout.FloatField("背景格子尺寸", s_editorWindowGridSize); 52 | 53 | if (GUI.changed) { 54 | SaveAllPreferenceValues(); 55 | } 56 | } 57 | } 58 | } -------------------------------------------------------------------------------- /NodeGraph/Editor/GUI/UserPreference.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: f9d22c34b09544790a895928c8472805 3 | timeCreated: 1494625785 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /NodeGraph/Editor/Utility.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 1cd10f53451414f35b4a646f7d58558c 3 | folderAsset: yes 4 | timeCreated: 1494625784 5 | licenseType: Pro 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /NodeGraph/Editor/Utility/AssetBundleGraphUtility.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | using UnityEditor; 3 | using System; 4 | using System.IO; 5 | using System.Linq; 6 | using System.Reflection; 7 | using System.Collections.Generic; 8 | 9 | using Model=NodeGraph.DataModel; 10 | 11 | namespace NodeGraph { 12 | 13 | /// 14 | /// Execute graph result. 15 | /// 16 | public class ExecuteGraphResult { 17 | private Model.NodeGraphObj graph; 18 | private List issues; 19 | 20 | public ExecuteGraphResult(Model.NodeGraphObj g, List issues) { 21 | this.graph = g; 22 | this.issues = issues; 23 | } 24 | 25 | /// 26 | /// Gets a value indicating whether last graph execution has any issue found. 27 | /// 28 | /// true if this instance is any issue found; otherwise, false. 29 | public bool IsAnyIssueFound { 30 | get { 31 | return issues.Count > 0; 32 | } 33 | } 34 | 35 | /// 36 | /// Gets the executed graph associated with this result. 37 | /// 38 | /// The graph. 39 | public Model.NodeGraphObj Graph { 40 | get { 41 | return graph; 42 | } 43 | } 44 | 45 | /// 46 | /// Gets the graph asset path. 47 | /// 48 | /// The graph asset path. 49 | public string GraphAssetPath { 50 | get { 51 | return AssetDatabase.GetAssetPath(graph); 52 | } 53 | } 54 | 55 | /// 56 | /// Gets the list of issues found during last execution. 57 | /// 58 | public IEnumerable Issues { 59 | get { 60 | return issues.AsEnumerable(); 61 | } 62 | } 63 | } 64 | 65 | } 66 | -------------------------------------------------------------------------------- /NodeGraph/Editor/Utility/AssetBundleGraphUtility.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: dc3edc4496b6745b1a650261e54f33dd 3 | timeCreated: 1494625785 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /NodeGraph/Editor/Utility/BesierUtil.cs: -------------------------------------------------------------------------------- 1 | using System.Collections; 2 | using System.Collections.Generic; 3 | using UnityEngine; 4 | namespace NodeGraph 5 | { 6 | public class BezierUtil 7 | { 8 | public static Vector3[] GetBezierPoints(Vector3 p0, Vector3 p1, Vector3 p2,Vector3 p3, int count) 9 | { 10 | var points = new Vector3[count]; 11 | for (int i = 0; i < count; i++) 12 | { 13 | points[i] = CalculateCubicBezierPoint(i / (count - 1f), p0, p1, p2,p3); 14 | } 15 | return points; 16 | } 17 | public static Vector3 CalculateCubicBezierPoint(float t, Vector3 p0, Vector3 p1, Vector3 p2, Vector3 p3) 18 | { 19 | return Mathf.Pow(1 - t, 3) * p0 + 20 | 3 * t * Mathf.Pow(1 - t, 2) * p1 + 21 | 3 * (1 - t) * Mathf.Pow(t, 2) * p2 + 22 | Mathf.Pow(t, 3) * p3; 23 | } 24 | } 25 | 26 | } -------------------------------------------------------------------------------- /NodeGraph/Editor/Utility/BesierUtil.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: f3ebc7e8ce0f23d4e8938b3315571ed9 3 | timeCreated: 1527417013 4 | licenseType: Free 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /NodeGraph/Editor/Utility/BuildTargetUtility.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: b9957afe4f6df4fba8f8e329a47b30cb 3 | timeCreated: 1494625785 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /NodeGraph/Editor/Utility/CUIUtility.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 04e83e1d064b147fc97851b317d0a292 3 | timeCreated: 1494625784 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /NodeGraph/Editor/Utility/ConnectionPointDataUtility.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | using UnityEngine.UI; 3 | using UnityEngine.Audio; 4 | using UnityEngine.Events; 5 | using UnityEngine.Sprites; 6 | using UnityEngine.Scripting; 7 | using UnityEngine.Assertions; 8 | using UnityEngine.EventSystems; 9 | using UnityEngine.Assertions.Must; 10 | using UnityEngine.Assertions.Comparers; 11 | using System.Collections; 12 | using System.Collections.Generic; 13 | 14 | namespace NodeGraph 15 | { 16 | public static class ConnectionPointDataUtility 17 | { 18 | public static Rect UpdateRegion(NodeGUI node, bool IsInput, float yOffset, int index, int max) 19 | { 20 | var parentRegion = node.Region; 21 | Rect buttonRect = new Rect(); 22 | if (IsInput) 23 | { 24 | 25 | var initialY = yOffset + (NGEditorSettings.GUI.NODE_BASE_HEIGHT - NGEditorSettings.GUI.INPUT_POINT_HEIGHT) / 2f; 26 | var marginY = initialY + NGEditorSettings.GUI.FILTER_OUTPUT_SPAN * (index); 27 | 28 | buttonRect = new Rect( 29 | 0, 30 | marginY, 31 | NGEditorSettings.GUI.INPUT_POINT_WIDTH, 32 | NGEditorSettings.GUI.INPUT_POINT_HEIGHT); 33 | } 34 | else 35 | { 36 | 37 | var initialY = yOffset + (NGEditorSettings.GUI.NODE_BASE_HEIGHT - NGEditorSettings.GUI.OUTPUT_POINT_HEIGHT) / 2f; 38 | var marginY = initialY + NGEditorSettings.GUI.FILTER_OUTPUT_SPAN * (index); 39 | 40 | buttonRect = new Rect( 41 | parentRegion.width - NGEditorSettings.GUI.OUTPUT_POINT_WIDTH + 1f, 42 | marginY, 43 | NGEditorSettings.GUI.OUTPUT_POINT_WIDTH, 44 | NGEditorSettings.GUI.OUTPUT_POINT_HEIGHT); 45 | } 46 | return buttonRect; 47 | } 48 | public static Rect GetGlobalPointRegion(bool IsInput,Rect buttonRect, NodeGUI node) 49 | { 50 | if (IsInput) 51 | { 52 | return GetInputPointRect(buttonRect, node); 53 | } 54 | else 55 | { 56 | return GetOutputPointRect(buttonRect,node); 57 | } 58 | } 59 | private static Rect GetOutputPointRect(Rect buttonRect, NodeGUI node) 60 | { 61 | var baseRect = node.Region; 62 | return new Rect( 63 | baseRect.x + baseRect.width - (NGEditorSettings.GUI.CONNECTION_POINT_MARK_SIZE) / 2f, 64 | baseRect.y + buttonRect.y + 1f, 65 | NGEditorSettings.GUI.CONNECTION_POINT_MARK_SIZE, 66 | NGEditorSettings.GUI.CONNECTION_POINT_MARK_SIZE 67 | ); 68 | } 69 | 70 | private static Rect GetInputPointRect(Rect buttonRect, NodeGUI node) 71 | { 72 | var baseRect = node.Region; 73 | return new Rect( 74 | baseRect.x - 2f, 75 | baseRect.y + buttonRect.y + 3f, 76 | NGEditorSettings.GUI.CONNECTION_POINT_MARK_SIZE + 3f, 77 | NGEditorSettings.GUI.CONNECTION_POINT_MARK_SIZE + 3f 78 | ); 79 | } 80 | } 81 | } -------------------------------------------------------------------------------- /NodeGraph/Editor/Utility/ConnectionPointDataUtility.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: e0d2ccc77a9e62f4cba8c9d14bec9d97 3 | timeCreated: 1513240896 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /NodeGraph/Editor/Utility/FileUtility.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: a9b2fb219b0a847f6a705de8223b87df 3 | timeCreated: 1494625785 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /NodeGraph/Editor/Utility/JSONGraphUtility.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 82f81cb4192dc4e1d9714dd03ea84ad1 3 | timeCreated: 1497936825 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /NodeGraph/Editor/Utility/NGEditorSettings.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.IO; 4 | using UnityEngine; 5 | using UnityEditor; 6 | using NodeGraph; 7 | 8 | namespace NodeGraph 9 | { 10 | public class NGEditorSettings 11 | { 12 | public class GUI 13 | { 14 | public const float NODE_BASE_WIDTH = 120f; 15 | public const float NODE_BASE_HEIGHT = 18f; 16 | public const float NODE_WIDTH_MARGIN = 48f; 17 | public const float NODE_TITLE_HEIGHT_MARGIN = 8f; 18 | 19 | public const float CONNECTION_ARROW_WIDTH = 12f; 20 | public const float CONNECTION_ARROW_HEIGHT = 15f; 21 | 22 | public const float INPUT_POINT_WIDTH = 21f; 23 | public const float INPUT_POINT_HEIGHT = 29f; 24 | 25 | public const float OUTPUT_POINT_WIDTH = 10f; 26 | public const float OUTPUT_POINT_HEIGHT = 23f; 27 | 28 | public const float FILTER_OUTPUT_SPAN = 32f; 29 | 30 | public const float CONNECTION_POINT_MARK_SIZE = 16f; 31 | 32 | public const float CONNECTION_CURVE_LENGTH = 20f; 33 | 34 | public const float TOOLBAR_HEIGHT = 20f; 35 | public const float TOOLBAR_GRAPHNAMEMENU_WIDTH = 150f; 36 | public const int TOOLBAR_GRAPHNAMEMENU_CHAR_LENGTH = 20; 37 | 38 | public static readonly Color COLOR_ENABLED = new Color(0.43f, 0.65f, 1.0f, 1.0f); 39 | public static readonly Color COLOR_CONNECTED = new Color(0.9f, 0.9f, 0.9f, 1.0f); 40 | public static readonly Color COLOR_NOT_CONNECTED = Color.grey; 41 | public static readonly Color COLOR_CAN_CONNECT = Color.white;//new Color(0.60f, 0.60f, 1.0f, 1.0f); 42 | public static readonly Color COLOR_CAN_NOT_CONNECT = new Color(0.33f, 0.33f, 0.33f, 1.0f); 43 | 44 | public static string Skin { get { return Path.GUIResourceBasePath + "NodeStyle.guiskin"; } } 45 | public static string ConnectionPoint { get { return Path.GUIResourceBasePath + "ConnectionPoint.png"; } } 46 | public static string InputBG { get { return Path.GUIResourceBasePath + "InputBG.png"; } } 47 | public static string OutputBG { get { return Path.GUIResourceBasePath + "OutputBG.png"; } } 48 | } 49 | public class Path 50 | { 51 | private static string guiResourcePath = ""; 52 | public const string ASSETS_PATH = "Assets/"; 53 | public static string GUIResourceBasePath 54 | { 55 | get 56 | { 57 | if(string.IsNullOrEmpty(guiResourcePath)) 58 | { 59 | guiResourcePath = AssetDatabase.GUIDToAssetPath("3706d7e9bff914014a8c0d30e8f854e6") + "/"; 60 | } 61 | return guiResourcePath; 62 | } 63 | } 64 | } 65 | } 66 | } 67 | -------------------------------------------------------------------------------- /NodeGraph/Editor/Utility/NGEditorSettings.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 9d95d35c41ed8464cbaf8fb36827aec1 3 | timeCreated: 1494625785 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /NodeGraph/Editor/Utility/NodeConnectionUtility.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: a0a16f3866dc10d49a95e19ecf5c9d20 3 | timeCreated: 1513222667 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /NodeGraph/Editor/Utility/RecordUndoScope.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | using UnityEditor; 3 | using System.Collections; 4 | 5 | using Model=NodeGraph.DataModel; 6 | 7 | namespace NodeGraph { 8 | public class RecordUndoScope : GUI.Scope { 9 | 10 | private string message; 11 | private NodeGUI node; 12 | private bool saveOnScopeEnd; 13 | 14 | public RecordUndoScope (string message) { 15 | NodeGUIUtility.NodeEventHandler(new NodeEvent(NodeEvent.EventType.EVENT_RECORDUNDO, message)); 16 | } 17 | 18 | public RecordUndoScope (string message, bool saveOnScopeEnd) { 19 | this.saveOnScopeEnd = saveOnScopeEnd; 20 | NodeGUIUtility.NodeEventHandler(new NodeEvent(NodeEvent.EventType.EVENT_RECORDUNDO, message)); 21 | } 22 | 23 | public RecordUndoScope (string message, NodeGUI node) { 24 | this.node = node; 25 | NodeGUIUtility.NodeEventHandler(new NodeEvent(NodeEvent.EventType.EVENT_RECORDUNDO, message)); 26 | } 27 | 28 | public RecordUndoScope (string message, NodeGUI node, bool saveOnScopeEnd) { 29 | this.node = node; 30 | this.saveOnScopeEnd = saveOnScopeEnd; 31 | NodeGUIUtility.NodeEventHandler(new NodeEvent(NodeEvent.EventType.EVENT_RECORDUNDO, message)); 32 | } 33 | 34 | protected override void CloseScope () { 35 | if(node != null) { 36 | //node.UpdateNodeRect(); 37 | node.ResetErrorStatus(); 38 | NodeGUIUtility.NodeEventHandler(new NodeEvent(NodeEvent.EventType.EVENT_NODE_UPDATED, node)); 39 | } 40 | if(saveOnScopeEnd) { 41 | // NodeGUIUtility.NodeEventHandler(new NodeEvent(NodeEvent.EventType.EVENT_SAVE)); 42 | } 43 | } 44 | } 45 | } 46 | -------------------------------------------------------------------------------- /NodeGraph/Editor/Utility/RecordUndoScope.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 9b74ea960fdf3432c9764eeb4f29c397 3 | timeCreated: 1494625785 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /NodeGraph/Editor/Utility/SaveScope.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | using UnityEditor; 3 | using System.Collections; 4 | 5 | using Model=NodeGraph.DataModel; 6 | 7 | namespace NodeGraph { 8 | public class SaveScope : GUI.Scope { 9 | 10 | private NodeGUI node; 11 | 12 | public SaveScope (NodeGUI node) { 13 | this.node = node; 14 | } 15 | 16 | protected override void CloseScope () { 17 | if(node != null) { 18 | node.ResetErrorStatus(); 19 | } 20 | NodeGUIUtility.NodeEventHandler(new NodeEvent(NodeEvent.EventType.EVENT_SAVE)); 21 | } 22 | } 23 | } 24 | -------------------------------------------------------------------------------- /NodeGraph/Editor/Utility/SaveScope.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 4828dd530e30e4fa6ad842215386a139 3 | timeCreated: 1494625784 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /NodeGraph/Editor/Utility/ScriptableObjUtility.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | using UnityEngine.UI; 3 | using UnityEngine.Audio; 4 | using UnityEngine.Events; 5 | using UnityEngine.Sprites; 6 | using UnityEngine.Scripting; 7 | using UnityEngine.Assertions; 8 | using UnityEngine.EventSystems; 9 | using UnityEngine.Assertions.Must; 10 | using UnityEngine.Assertions.Comparers; 11 | using System.Collections; 12 | using System.Collections.Generic; 13 | using UnityEditor; 14 | 15 | namespace NodeGraph 16 | { 17 | public class ScriptableObjUtility 18 | { 19 | /// 20 | /// Adds the specified hidden subAssets to the mainAsset 21 | /// 22 | public static void SetSubAssets(ScriptableObject[] subAssets, ScriptableObject mainAsset,bool clearOther = false,HideFlags hideFlags = HideFlags.None) 23 | { 24 | var path = AssetDatabase.GetAssetPath(mainAsset); 25 | var oldAssets = AssetDatabase.LoadAllAssetsAtPath(path); 26 | 27 | foreach (ScriptableObject subAsset in subAssets) 28 | { 29 | if (subAsset == mainAsset) continue; 30 | 31 | if (System.Array.Find(oldAssets, x => x == subAsset) == null) 32 | { 33 | AddSubAsset(subAsset, mainAsset, hideFlags); 34 | } 35 | } 36 | 37 | if(clearOther) 38 | { 39 | ClearSubAssets(mainAsset, subAssets); 40 | } 41 | } 42 | 43 | /// 44 | /// Adds the specified hidden subAsset to the mainAsset 45 | /// 46 | public static void AddSubAsset(ScriptableObject subAsset, ScriptableObject mainAsset,HideFlags hideFlag) 47 | { 48 | if (subAsset != null && mainAsset != null) 49 | { 50 | UnityEditor.AssetDatabase.AddObjectToAsset(subAsset, mainAsset); 51 | subAsset.hideFlags = hideFlag; 52 | } 53 | } 54 | 55 | /// 56 | /// 57 | /// 58 | /// 59 | public static void ClearSubAssets(ScriptableObject mainAsset, ScriptableObject[] ignores = null) 60 | { 61 | if (mainAsset != null) 62 | { 63 | var path = AssetDatabase.GetAssetPath(mainAsset); 64 | var subAssets = AssetDatabase.LoadAllAssetsAtPath(path); 65 | 66 | 67 | foreach (var item in subAssets) 68 | { 69 | if (item == mainAsset) continue; 70 | 71 | if (ignores == null || System.Array.Find(ignores, x => x == item) == null) 72 | { 73 | Object.DestroyImmediate(item, true); 74 | } 75 | } 76 | } 77 | } 78 | } 79 | } -------------------------------------------------------------------------------- /NodeGraph/Editor/Utility/ScriptableObjUtility.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 7fcc82e1e6e0ad14f8fd776060c0a89a 3 | timeCreated: 1515467788 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /NodeGraph/Editor/Utility/TypeUtility.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 5a621b3eb315745c8b95a9e354708dd4 3 | timeCreated: 1494625784 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /NodeGraph/Editor/Utility/UserDefineUtility.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 9c2c33046bca51e4ba6ba17a01417e39 3 | timeCreated: 1513232615 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Pics.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 66e1886a29c75ca49824151a771c26d9 3 | folderAsset: yes 4 | timeCreated: 1513690677 5 | licenseType: Free 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /Pics/autoDraw.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zouhunter/unity-nodegraph-frame/f5c6f781e164e515bedd73d906b9989fb2dad7f4/Pics/autoDraw.png -------------------------------------------------------------------------------- /Pics/autoDraw.png.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 0c5fcfce90ae0b64dadd493f8acbbc41 3 | timeCreated: 1513691045 4 | licenseType: Free 5 | TextureImporter: 6 | fileIDToRecycleName: {} 7 | serializedVersion: 2 8 | mipmaps: 9 | mipMapMode: 0 10 | enableMipMap: 1 11 | linearTexture: 0 12 | correctGamma: 0 13 | fadeOut: 0 14 | borderMipMap: 0 15 | mipMapFadeDistanceStart: 1 16 | mipMapFadeDistanceEnd: 3 17 | bumpmap: 18 | convertToNormalMap: 0 19 | externalNormalMap: 0 20 | heightScale: 0.25 21 | normalMapFilter: 0 22 | isReadable: 0 23 | grayScaleToAlpha: 0 24 | generateCubemap: 0 25 | cubemapConvolution: 0 26 | cubemapConvolutionSteps: 7 27 | cubemapConvolutionExponent: 1.5 28 | seamlessCubemap: 0 29 | textureFormat: -1 30 | maxTextureSize: 2048 31 | textureSettings: 32 | filterMode: -1 33 | aniso: -1 34 | mipBias: -1 35 | wrapMode: -1 36 | nPOTScale: 1 37 | lightmap: 0 38 | rGBM: 0 39 | compressionQuality: 50 40 | allowsAlphaSplitting: 0 41 | spriteMode: 0 42 | spriteExtrude: 1 43 | spriteMeshType: 1 44 | alignment: 0 45 | spritePivot: {x: 0.5, y: 0.5} 46 | spriteBorder: {x: 0, y: 0, z: 0, w: 0} 47 | spritePixelsToUnits: 100 48 | alphaIsTransparency: 0 49 | textureType: -1 50 | buildTargetSettings: [] 51 | spriteSheet: 52 | sprites: [] 53 | outline: [] 54 | spritePackingTag: 55 | userData: 56 | assetBundleName: 57 | assetBundleVariant: 58 | -------------------------------------------------------------------------------- /Pics/connection.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zouhunter/unity-nodegraph-frame/f5c6f781e164e515bedd73d906b9989fb2dad7f4/Pics/connection.png -------------------------------------------------------------------------------- /Pics/connection.png.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 440017b6c0335ea49b3d884ed4618ccc 3 | timeCreated: 1513693617 4 | licenseType: Free 5 | TextureImporter: 6 | fileIDToRecycleName: {} 7 | serializedVersion: 2 8 | mipmaps: 9 | mipMapMode: 0 10 | enableMipMap: 1 11 | linearTexture: 0 12 | correctGamma: 0 13 | fadeOut: 0 14 | borderMipMap: 0 15 | mipMapFadeDistanceStart: 1 16 | mipMapFadeDistanceEnd: 3 17 | bumpmap: 18 | convertToNormalMap: 0 19 | externalNormalMap: 0 20 | heightScale: 0.25 21 | normalMapFilter: 0 22 | isReadable: 0 23 | grayScaleToAlpha: 0 24 | generateCubemap: 0 25 | cubemapConvolution: 0 26 | cubemapConvolutionSteps: 7 27 | cubemapConvolutionExponent: 1.5 28 | seamlessCubemap: 0 29 | textureFormat: -1 30 | maxTextureSize: 2048 31 | textureSettings: 32 | filterMode: -1 33 | aniso: -1 34 | mipBias: -1 35 | wrapMode: -1 36 | nPOTScale: 1 37 | lightmap: 0 38 | rGBM: 0 39 | compressionQuality: 50 40 | allowsAlphaSplitting: 0 41 | spriteMode: 0 42 | spriteExtrude: 1 43 | spriteMeshType: 1 44 | alignment: 0 45 | spritePivot: {x: 0.5, y: 0.5} 46 | spriteBorder: {x: 0, y: 0, z: 0, w: 0} 47 | spritePixelsToUnits: 100 48 | alphaIsTransparency: 0 49 | textureType: -1 50 | buildTargetSettings: [] 51 | spriteSheet: 52 | sprites: [] 53 | outline: [] 54 | spritePackingTag: 55 | userData: 56 | assetBundleName: 57 | assetBundleVariant: 58 | -------------------------------------------------------------------------------- /Pics/controller.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zouhunter/unity-nodegraph-frame/f5c6f781e164e515bedd73d906b9989fb2dad7f4/Pics/controller.png -------------------------------------------------------------------------------- /Pics/controller.png.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 8a52cdef90be8c84897921869f668327 3 | timeCreated: 1513691046 4 | licenseType: Free 5 | TextureImporter: 6 | fileIDToRecycleName: {} 7 | serializedVersion: 2 8 | mipmaps: 9 | mipMapMode: 0 10 | enableMipMap: 1 11 | linearTexture: 0 12 | correctGamma: 0 13 | fadeOut: 0 14 | borderMipMap: 0 15 | mipMapFadeDistanceStart: 1 16 | mipMapFadeDistanceEnd: 3 17 | bumpmap: 18 | convertToNormalMap: 0 19 | externalNormalMap: 0 20 | heightScale: 0.25 21 | normalMapFilter: 0 22 | isReadable: 0 23 | grayScaleToAlpha: 0 24 | generateCubemap: 0 25 | cubemapConvolution: 0 26 | cubemapConvolutionSteps: 7 27 | cubemapConvolutionExponent: 1.5 28 | seamlessCubemap: 0 29 | textureFormat: -1 30 | maxTextureSize: 2048 31 | textureSettings: 32 | filterMode: -1 33 | aniso: -1 34 | mipBias: -1 35 | wrapMode: -1 36 | nPOTScale: 1 37 | lightmap: 0 38 | rGBM: 0 39 | compressionQuality: 50 40 | allowsAlphaSplitting: 0 41 | spriteMode: 0 42 | spriteExtrude: 1 43 | spriteMeshType: 1 44 | alignment: 0 45 | spritePivot: {x: 0.5, y: 0.5} 46 | spriteBorder: {x: 0, y: 0, z: 0, w: 0} 47 | spritePixelsToUnits: 100 48 | alphaIsTransparency: 0 49 | textureType: -1 50 | buildTargetSettings: [] 51 | spriteSheet: 52 | sprites: [] 53 | outline: [] 54 | spritePackingTag: 55 | userData: 56 | assetBundleName: 57 | assetBundleVariant: 58 | -------------------------------------------------------------------------------- /Pics/node.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zouhunter/unity-nodegraph-frame/f5c6f781e164e515bedd73d906b9989fb2dad7f4/Pics/node.png -------------------------------------------------------------------------------- /Pics/node.png.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: f7ecdb9bdd8334e41a9e0dea01fff5de 3 | timeCreated: 1513691046 4 | licenseType: Free 5 | TextureImporter: 6 | fileIDToRecycleName: {} 7 | serializedVersion: 2 8 | mipmaps: 9 | mipMapMode: 0 10 | enableMipMap: 1 11 | linearTexture: 0 12 | correctGamma: 0 13 | fadeOut: 0 14 | borderMipMap: 0 15 | mipMapFadeDistanceStart: 1 16 | mipMapFadeDistanceEnd: 3 17 | bumpmap: 18 | convertToNormalMap: 0 19 | externalNormalMap: 0 20 | heightScale: 0.25 21 | normalMapFilter: 0 22 | isReadable: 0 23 | grayScaleToAlpha: 0 24 | generateCubemap: 0 25 | cubemapConvolution: 0 26 | cubemapConvolutionSteps: 7 27 | cubemapConvolutionExponent: 1.5 28 | seamlessCubemap: 0 29 | textureFormat: -1 30 | maxTextureSize: 2048 31 | textureSettings: 32 | filterMode: -1 33 | aniso: -1 34 | mipBias: -1 35 | wrapMode: -1 36 | nPOTScale: 1 37 | lightmap: 0 38 | rGBM: 0 39 | compressionQuality: 50 40 | allowsAlphaSplitting: 0 41 | spriteMode: 0 42 | spriteExtrude: 1 43 | spriteMeshType: 1 44 | alignment: 0 45 | spritePivot: {x: 0.5, y: 0.5} 46 | spriteBorder: {x: 0, y: 0, z: 0, w: 0} 47 | spritePixelsToUnits: 100 48 | alphaIsTransparency: 0 49 | textureType: -1 50 | buildTargetSettings: [] 51 | spriteSheet: 52 | sprites: [] 53 | outline: [] 54 | spritePackingTag: 55 | userData: 56 | assetBundleName: 57 | assetBundleVariant: 58 | -------------------------------------------------------------------------------- /ReadMe.md: -------------------------------------------------------------------------------- 1 | 【copy from AssetGraph and just persist Graph Functions】 2 | 3 | ##Support User Define Controller 4 | 5 | ![Auto Read Controller](Pics/controller.png) 6 | 7 | ##Support User Define Node 8 | 9 | ![Auto Drawing But ChangeAble](Pics/node.png) 10 | 11 | ##Support User Define Port 12 | 13 | ![Auto Drawing Ports](Pics/autoDraw.png) 14 | 15 | ##Support User Define Connection 16 | 17 | ![Auto Drawing Ports](Pics/connection.png) 18 | 19 | -------------------------------------------------------------------------------- /ReadMe.md.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: b2d48cce6d7a372409d84f56b19bcd90 3 | timeCreated: 1510905510 4 | licenseType: Pro 5 | DefaultImporter: 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | --------------------------------------------------------------------------------