Search Unity

  1. Megacity Metro Demo now available. Download now.
    Dismiss Notice
  2. Unity support for visionOS is now available. Learn more in our blog post.
    Dismiss Notice

Building on GraphView - is it safe?

Discussion in 'UI Toolkit' started by TheHeftyCoder, Mar 24, 2020.

  1. TheHeftyCoder

    TheHeftyCoder

    Joined:
    Oct 29, 2016
    Posts:
    91
    I realize the name "Experimental" should give it away, but if someone could clarify..

    Is it safe to build a node system using the API that resides in UnityEditor.Experimental.Graphview, or will I be building a system that may possibly break in later versions? Last time I lost work on custom utiliy I had built for the ShaderGraph since its API was made private, so I'm voicing a concern before diving into this system. Most of all I'm worried for the removal of the API from the public domain, rather than some things changing here and there.

    EDIT: I read here https://forum.unity.com/threads/graphview-official-support.672091/ ,
    that there's very little risk of it going private, so all's good I guess!
     
    Last edited: Mar 24, 2020
  2. uDamian

    uDamian

    Unity Technologies

    Joined:
    Dec 11, 2017
    Posts:
    1,231
    TheHeftyCoder likes this.
  3. SevenSolaris

    SevenSolaris

    Joined:
    Jan 14, 2019
    Posts:
    20
    This is off-topic, but I decided to check out the repo because I was curious how the EdgeControl worked internally, and I noticed that you guys have an unused reference.

    Mesh m_Mesh;
    is declared, and never set, but it is destroyed in OnLeavePanel().

    Code (CSharp):
    1.         void OnLeavePanel(DetachFromPanelEvent e)
    2.         {
    3.             if (m_Mesh != null)
    4.             {
    5.                 UnityEngine.Object.DestroyImmediate(m_Mesh);
    6.                 m_Mesh = null;
    7.             }
    8.         }
    I was unable to find any other reference to m_Mesh in EdgeControl.cs.
     
  4. darthdeus

    darthdeus

    Joined:
    Oct 13, 2013
    Posts:
    76
    Doesn't this actually violate the "Reference Only" license, as the code is only meant to be used as a reference, and not to be embedded in our own code? The license even says