Beispiel #1
0
        protected internal override void DrawConnections()
        {
            CheckNodeKnobMigration();
            if (Event.current.type != EventType.Repaint)
            {
                return;
            }
            foreach (NodeOutput output in Outputs)
            {
                if (output == null)
                {
                    continue;
                }
                Vector2 startPos = output.GetGUIKnob().center;
                Vector2 startDir = output.GetDirection();

                foreach (NodeInput input in output.connections)
                {
                    if (input != null)
                    {
                        if (input.typeID == "Float")
                        {
                            NodeEditorGUI.DrawConnection(startPos,
                                                         startDir,
                                                         input.GetGUIKnob().center,
                                                         input.GetDirection(),
                                                         Color.cyan);
                        }
                        else
                        if (m_TexMode == TexMode.Greyscale)
                        {
                            NodeEditorGUI.DrawConnection(startPos,
                                                         startDir,
                                                         input.GetGUIKnob().center,
                                                         input.GetDirection(),
                                                         Color.red);
                        }
                        else
                        if (m_TexMode != TexMode.Greyscale)
                        {
                            NodeEditorGUI.DrawConnection(startPos + new Vector2(0, -3),
                                                         startDir,
                                                         input.GetGUIKnob().center + new Vector2(0, -3),
                                                         input.GetDirection(),
                                                         Color.red);

                            NodeEditorGUI.DrawConnection(startPos + new Vector2(0, 0),
                                                         startDir,
                                                         input.GetGUIKnob().center + new Vector2(0, 0),
                                                         input.GetDirection(),
                                                         Color.green);
                            NodeEditorGUI.DrawConnection(startPos + new Vector2(0, 3),
                                                         startDir,
                                                         input.GetGUIKnob().center + new Vector2(0, 3),
                                                         input.GetDirection(),
                                                         Color.blue);
                        }


                        //                        EditorGUI.LabelField(new Rect(input.GetGUIKnob().center-new Vector2(50,20), new Vector2(200, 50)), input.name);
                    }
                }
            }
            foreach (var input in Inputs)
            {
                if (input != null)
                {
                    EditorGUI.LabelField(new Rect(input.GetGUIKnob().center - new Vector2(50, 20), new Vector2(200, 50)), input.name);
                }
            }
        }