Search Unity

Resolved GraphView & GraphTools foundation - what can we expect in the near future?

Discussion in 'UI Toolkit' started by CodeSmile, Aug 25, 2022.

  1. CodeSmile

    CodeSmile

    Joined:
    Apr 10, 2014
    Posts:
    6,001
    I'm very excited about GraphView and what's possible with it. However it's been tagged "experimental" for so long and documentation is ... minimal.

    And then I recently learned about GraphTools Foundation package. In this thread it was implied that it will supercede GraphView (Sep 2020). However, last update of the package was over a year ago (July 2021) and that version doesn't support Unity 2022 (says so in the package, causes compile errors).

    Can you elaborate on what to expect in the near term (roadmap) regarding either or both of these graph frameworks?

    If I were to start a graph-based tool for the asset store today, would you recommend to use GraphView or to already start exploring GraphTools Foundation?
     
    Lahcene and m-guntrum like this.
  2. SolarianZ

    SolarianZ

    Joined:
    Jun 13, 2017
    Posts:
    239
    Hello!

    I'm trying to make a Animation Graph tool to replace AnimatorController, and I have learn this two things:
    1. Unity don't expect users to use GraphView APIs and some day it may be removed from public APIs: https://forum.unity.com/threads/gra...disconnect-are-internal.1315425/#post-8321505
    2. GraphTool Foundation(GTF) is designed for users to create their own graph based tools, but it is still in development and there won't be any new update through package for a while: https://forum.unity.com/threads/graph-tool-foundation.1057667/page-2#post-8098055
    Now if I choice GraphView, some day is may be no longer accessable and I have to migrate my code to the new graph system(GTF or something else).
    If I choice GTF perview edition, I don't know when it will release an official verison and its APIs may change.

    For a smaller migration cost in the future, which one should I use?
    Thanks!
     
    m-guntrum likes this.
  3. CodeSmile

    CodeSmile

    Joined:
    Apr 10, 2014
    Posts:
    6,001
  4. antoine-unity

    antoine-unity

    Unity Technologies

    Joined:
    Sep 10, 2015
    Posts:
    780
    Hello,

    GraphView or GTF aren't managed by the UI team, so I don't have more information to share at the moment, beyond what was already communicated in the threads you've linked.

    I asked the product manager in charge of this area to provide an answer to this thread though.

    Thanks
     
  5. LeonhardP

    LeonhardP

    Unity Technologies

    Joined:
    Jul 4, 2016
    Posts:
    3,136
    TreyK-47 likes this.
  6. EricDziurzynski

    EricDziurzynski

    Unity Technologies

    Joined:
    Mar 11, 2022
    Posts:
    53
    I can speak to GTF from a Product Management perspective.

    GTF development is still active and ongoing but we don't have an exact timetable for releasing a public API. Our focus is on migrating node based Unity tools to GTF to provide consistency in terms of visual language, interactions, and design patterns across our tools. If and when we can provide a more accurate timetable for a public API we will certainly provide more information. Until that time, GraphView is still the best option for creating node based tools and editors for Unity projects.
     
  7. optimise

    optimise

    Joined:
    Jan 22, 2014
    Posts:
    2,129
    If I remember correctly, all the editor tooling like Animator windows will migrate to GTF. Is that still the case today?
     
    MoonbladeStudios likes this.
  8. CodeSmile

    CodeSmile

    Joined:
    Apr 10, 2014
    Posts:
    6,001
    Looking forward to GTF!

    Just ... if you can, a small hint regarding how long we need to wait for GTF. On an integer scale from 0 to 1, how likely is a public GTF API release sometime in 2023? :cool:
     
    awesomedata and MoonbladeStudios like this.
  9. MaskedMouse

    MaskedMouse

    Joined:
    Jul 8, 2014
    Posts:
    1,092
    I hope it will eventually be usable runtime UI as well. I had a node based uGUI project which was not easy to work with and the performance was terrible. It would be nice to have a UI Toolkit based node graph for both editor and runtime.
     
    imblue4d, NotaNaN, PanthenEye and 4 others like this.
  10. jGate99

    jGate99

    Joined:
    Oct 22, 2013
    Posts:
    1,945
    this +1
     
  11. awesomedata

    awesomedata

    Joined:
    Oct 8, 2014
    Posts:
    1,419
    Is GraphView going to be backwards-compatible with GTF in some way -- i.e. are you going to support tools that are created using it, or provide some conversion workflow in the Public API?

    I need to know this for a very complex tool I am building and cannot begin its development without this information (and preferably a way forward without having to rebuild my entire toolset and workflow when GTF is finally released)!
     
  12. EricDziurzynski

    EricDziurzynski

    Unity Technologies

    Joined:
    Mar 11, 2022
    Posts:
    53
    This is the intent for animation, yes.

    Thank you for expressing your support and interest. At this time there is 0 chance for a 2023 Public API release. We currently have no plan for a release date until we can release at least 2 other internal tools that have used GTF as the common front end UI and UX and supporting documentation. We are doing this as our way of battle testing the solution to make sure that when it’s released it will provide a strong starting point for anyone to develop node based tools.

    Thank you for this feedback. We have heard of interest in runtime graphs from a number of sources and this is something we will consider as a feature request and prioritize based on interest, value, and level of effort.

    GraphView is in maintenance mode and no new features will be added but when we release GTF as a public API we plan to discontinue support for GraphView over time to provide time and support for any migrations of code. Visualization and interactions are similar between GraphView and GTF, but the underlying concepts are different enough that no automatic conversion can realistically be provided.

    When GTF is ready to be released as a public API, our intent is to provide all of the features and documentation necessary for rapid development of new, performant tools. We are hopeful that this approach can and will mitigate any frustrations related to rebuilding tools.

    As we have no exact timetable for the release of GTF, we still recommend building any tools in GraphView at this time.
     
  13. Catsoft-Studios

    Catsoft-Studios

    Joined:
    Jan 15, 2011
    Posts:
    703
    Zero chance for 2023...? Oh... Keep us in the loop though! :)
     
    awesomedata likes this.
  14. optimise

    optimise

    Joined:
    Jan 22, 2014
    Posts:
    2,129
    Actually why not continue to update GraphTools Foundation Package instead of become inhouse that have no access? I think it's fine that even GTF package keep having big breaking changes until it's finalized. I would like to have a path that u can adopt GTF today and expect API breaking changes.
     
  15. awesomedata

    awesomedata

    Joined:
    Oct 8, 2014
    Posts:
    1,419
    Please at least give some insight into the fundamental differences so that I can properly design my tool around the knowledge of what breaking changes and concepts I will have to rework.

    Is this possible to convey here at least?

    I don't mind starting on a new tool and reworking _some_ of it, but if my design can't take into consideration some fundamental breaking conceptual change, and ends up relying on it -- I am up a creek without a paddle. So, please, if you would -- shine some light on these potential changes, will you?

    Keeping us in the dark for a whole year (at minimum) gives me A LOT of time to mess up my tool's design over that next year without even knowing it, and as you should know -- burnout is very real -- especially with Unity these days. So please, help a fellow dev out here, yeah? -- Spill the beans on at least some big (or small-but-significant) differences between the two APIs that might be of note to one's multi-panel, multi-window, multi-tool, heavily shortcut-centric design that might _possibly_ be centered around DOTS / ECS and VR workflows too, if you would?
     
    Last edited: Nov 9, 2022