Search Unity

  1. Welcome to the Unity Forums! Please take the time to read our Code of Conduct to familiarize yourself with the forum rules and how to post constructively.
  2. Join us on Dec 8, 2022, between 7 am & 7 pm EST, in the DOTS Dev Blitz Day 2022 - Q&A forum, Discord, and Unity3D Subreddit to learn more about DOTS directly from the Unity Developers.
    Dismiss Notice
  3. Have a look at our Games Focus blog post series which will show what Unity is doing for all game developers – now, next year, and in the future.
    Dismiss Notice

Showcase Node finder for unity visual scripting

Discussion in 'Visual Scripting' started by myanko, Oct 18, 2021.

  1. myanko

    myanko

    Joined:
    Nov 9, 2013
    Posts:
    37
    So, my wife(etherElric) and I, got annoyed to work on huge graphs without any ways to search for nodes we added and wanted to explore how a node finder could work and be done for unity visual scripting. So we started to work part time, on a node finder for unity visual scripting. This a pretty early version, but the concept seem to work well.

    We plan to put this tool on unity asset store for free if we can get the time to work on it a little more, so everybody can get access to the full tool for free.

    Will be nice to see if there is a demand for such a tool ;).

    This is a preview of the tool.


    AssetStore link : Node finder for unity visual scripting
    Github Repo: https://github.com/myanko/uvs-finder
     
    Last edited: Sep 23, 2022
  2. Starpaq2

    Starpaq2

    Joined:
    Mar 14, 2013
    Posts:
    77
    Brilliant and definitely a daily thorn on the walking path.
     
    PanthenEye and myanko like this.
  3. myanko

    myanko

    Joined:
    Nov 9, 2013
    Posts:
    37
    This weekend work.
    • Removing some UI items that won't be used.
    • Adding the find in graph functionalities.
    • Better Search Visual.
    • Adding type Icons in the search list.
    • Adding preferences panel for the tool.
    • Can now search within variable name, custom events name, subgraph name.
    • Adding a user preference panel.
    Visual Update.
    upload_2021-10-25_0-52-31.png

    Preferences Panel
    upload_2021-10-25_0-55-57.png
     
    NaoYuYan and Starpaq2 like this.
  4. Starpaq2

    Starpaq2

    Joined:
    Mar 14, 2013
    Posts:
    77
    You had me at searching within "Custom Events Name". This would be the extremely useful. It's looking great thus far.
     
    NaoYuYan and myanko like this.
  5. PanthenEye

    PanthenEye

    Joined:
    Oct 14, 2013
    Posts:
    901
    Brilliant work! I assume they'll get their own search functionality with GTF migration but that's like 2 years away. So this is very much needed in the meantime.
     
    myanko likes this.
  6. myanko

    myanko

    Joined:
    Nov 9, 2013
    Posts:
    37
    Thank you both.

    I hope they will have this functionality when moving in GTF. DOTS Visual Scripting got a naive integration of Ctrl+f functionality in graphs, that was done by Dev Theo.

    If it is in 2 years, it means 2 years before getting a unity version LTS with the functionality.
    Then depending on your production, it means approximately 6 months to 6 years and more stuck in a version of the editor not having the feature because you lock your editor to an LTS version to make sure nothing breaks :p.

    By working on my personal project that we try to make only in visual scripting and very early in its production life cycle, I can imagine how tough it will be at the end of a production with the tool at this level.

    Also, this thing was part of my top 1 graph feature to get. This is sad that Lazlo never was able to work on it.

    You can see the Events search in action ^-^
     
    Last edited: Oct 26, 2021
    Ignacii and NaoYuYan like this.
  7. PanthenEye

    PanthenEye

    Joined:
    Oct 14, 2013
    Posts:
    901
    Yeap, all the Unity goodies in the oven are still anywhere from 1-3 years away, unfortunately. Longer if you've frozen engine version for a multiyear project.

    He implemented a fully featured search for Bolt 2 but it was also a lot easier to do that there as a lot of stuff was GUID based and didn't depend on basic string equality. I'm fairly sure the search tech wasn't even that tightly coupled with Bolt 2 core as he's using it also in Peek. So they could probably port it fairly easily. The problem, of course, being that they want to standartize all graph based tools so what works for just UnityVS now probably wouldn't extrapolate to other graph tools. Especially if that search tech uses some middleware not native to Unity. So we're stuck waiting.

    ---

    Now that you can search in variable and custom event names, could it be possible to implement a basic search and replace for variable/custom event names? Refactoring graphs currently is entirely manual and therefore slow and prone to error.

    EDIT: Holy S***! The custom event search is amazing.
     
    NaoYuYan and myanko like this.
  8. myanko

    myanko

    Joined:
    Nov 9, 2013
    Posts:
    37
    Yes it is part of our roadmap.

    First we need to fix a bunch of issues coming from different node types and also fix the find in current graph functionality that double the code at the moment as we tried to use Bolt classes and OMG, this thing make it so much more complicated than working with IO on files in the project.

    This what we planned to do.
    1. Find in graph (WIP Almost at parity with the find in all graph)
    2. Find in all graph (Done)
    3. Find embed (WIP May not ship this one)
    4. Add node icons (Done with some issues)
    5. Add user preferences. (Front end done)
    6. Add the tool to the Asset Store + Open UPM
    7. Move tool to an open repository possibly with an MIT license.
    8. Add Find and replace.
    9. Look at using the quick search back end.
    10. Add right click actions in graphs (find usage).
    11. Add Rename option for variables and custom events.
    12. Many more stuff.
    13. Add node inspector.
     
    NaoYuYan, PanthenEye and cassandraL like this.
  9. myanko

    myanko

    Joined:
    Nov 9, 2013
    Posts:
    37
    WIP3

    New update, the node finder is becoming better, this is still a big proof of concept, but it is getting exiting to play with this project.



    What is new:

    • Better Nodes items formatting for readability
    • Search Highlight
    • Find Deprecated Nodes
    • Find Variables
    • Find Events
    • Set Preferences
    • Find nodes in States Graphs
    • Find Groups
     
  10. PanthenEye

    PanthenEye

    Joined:
    Oct 14, 2013
    Posts:
    901
    Looks amazing! Honestly, this would be more than enough for the initial release assuming it's more or less consistent and error free.
     
    Starpaq2 likes this.
  11. myanko

    myanko

    Joined:
    Nov 9, 2013
    Posts:
    37
    Good news you can now get the version 0.0.4 for free on the Asset Store.

    This version should work with VisualScripting packages 1.5.2 and more.

    AssetStore link : Node finder for unity visual scripting

    I should soon set the GitHub repository public, so people can contribute or submit bugs+ feature requests. Have fun!!!
     
  12. PanthenEye

    PanthenEye

    Joined:
    Oct 14, 2013
    Posts:
    901
    Jus tried it out. It's absolutely brilliant. Got API out-of-date warnings in 2021.2.8 when importing, but Unity offered to auto upgrade. Anyway, it worked out fine in the end, console is clean and the tool is simply amazing and literally a lifesaver for medium to large sized projects using UVS.
     
    myanko likes this.
  13. haroldo7

    haroldo7

    Joined:
    Aug 27, 2021
    Posts:
    5
    That's great !!! Keep up the good work!
     
    myanko likes this.
  14. doublegumbo

    doublegumbo

    Joined:
    Oct 24, 2013
    Posts:
    53
    thank you for this!! YES!!! this has been the missing link for me in terms of using this tool.
     
    myanko likes this.
  15. marcuslelus

    marcuslelus

    Joined:
    Jun 18, 2018
    Posts:
    49
    myanko likes this.
  16. myanko

    myanko

    Joined:
    Nov 9, 2013
    Posts:
    37
    Lol yup totally free. I pushed a new asset store version 3 days ago, I was waiting for the update to be accepted to post this. :p


    A Major upgrade. V0.1.0 is now done, with nice features and bug fixes.

    Features
    • Better Subgraphs digging in state graphs.
    • Search state graphs in state graphs
    • Scriptgraphs now support subgraphs search.
    • Replaced the deserialization to use Visual Scripting.
    • Added support for Visual Scripting 1.8
    • Same name as in the fuzzy finder (Add is not more sum)
    Fixes
    • Made the tool Editor only.
    • Fixed Stylesheet warnings.
    • Switched default shortcut to Alt+F to remove collision with Unity Shortcuts.
    • Removed Preferences sections that are not hooked to the code.
    • Operators are searchable by name.

    Bonus, the repository is now full public.
    https://github.com/myanko/uvs-finder
     
    PanthenEye likes this.
  17. PanthenEye

    PanthenEye

    Joined:
    Oct 14, 2013
    Posts:
    901
    I want to try it out, but the store still shows that 0.0.4 is the latest one. Perhaps need to wait a bit more.
     
  18. myanko

    myanko

    Joined:
    Nov 9, 2013
    Posts:
    37
    You can from the git repo. Simply get the tag 0.1.0. You can delete the folder com.sokatoa.uvs.finder, in your asset and drop the one from the repo in your folder to test. You can also use the package manager and it with file path.

    Or you can just wait ~2 days to get it on the asset store. It take normally around 5 working days when I get the Unity message saying it will take ~3 working days to get approval. The 5 working day is when you are lucky and nothing fail :p.
     
    PanthenEye likes this.
  19. myanko

    myanko

    Joined:
    Nov 9, 2013
    Posts:
    37
    Starpaq2 and PanthenEye like this.
  20. PanthenEye

    PanthenEye

    Joined:
    Oct 14, 2013
    Posts:
    901
    It can't resolve NewtonSoftJSON namespace in my project:



    Unity 2021.2.8f1, UVS 1.7.7, Node finder 0.1.0

    I do have the NewtonSoftJSON package:



    Any idea on what's up?
     
    myanko likes this.
  21. PanthenEye

    PanthenEye

    Joined:
    Oct 14, 2013
    Posts:
    901
    Ok, deleting previous version of Node Finder and importing 0.1.0 anew fixed the issue.

    EDIT: Nested subgraph search works beautifully.
     
    myanko likes this.
  22. myanko

    myanko

    Joined:
    Nov 9, 2013
    Posts:
    37
    Yes, due to how the asset store package work, it won't remove deleted scripts and we deleted a bunch :p. And removed the need to use NewtonSoftJSON. ^-^
     
  23. PanthenEye

    PanthenEye

    Joined:
    Oct 14, 2013
    Posts:
    901
    Gotcha! You might wanna add upgrade warning in Asset Store Release notes. Other popular assets do that when they require the previous version to be deleted.
     
    myanko likes this.
  24. JACLEMGO

    JACLEMGO

    Joined:
    May 30, 2013
    Posts:
    30
    myanko likes this.
  25. myanko

    myanko

    Joined:
    Nov 9, 2013
    Posts:
    37
    Version 0.2.0 should be on the Asset Store soon.
    upload_2022-5-20_12-50-25.png


    Features
    • Search in Embed ScriptMachine and StateMachine graphs from objects in scene and in project.
    • Search in Hierarchy.
    • Added User Defined highlight color selection in preferences.
    • Search field have an erase button.
    • Improvement for search information on found items.
    • Type icons are now shown by default.
    • Made some small UI improvements.
    • Animation Event name is part of the search
    Fixes
    • Node list Scrolling that shuffle items.
    • Icons are no more making your scrolling lag.
    • Auto focus on the search field when opening the tool.
    • List items are smaller in height.
    • The alignment of items (UI).
    • Current graph node selection will keep the selected object graph.
    • Adding missing icons for HasVariables Nodes
    • Fixed Unity 2021+ Listview expanding with search...
    • Special Characters breaking the search like "[ ]"
     
    Starpaq2, marcuslelus and PanthenEye like this.
  26. myanko

    myanko

    Joined:
    Nov 9, 2013
    Posts:
    37
    PanthenEye likes this.
  27. Ignacii

    Ignacii

    Joined:
    May 23, 2013
    Posts:
    56
    OMG I've accidentally found this amazing gem. I wanted this for so long... Such a pleasant surprise. Please make donations available
     
  28. ncr100

    ncr100

    Joined:
    Jul 23, 2015
    Posts:
    22
    Ignacii likes this.
  29. Ignacii

    Ignacii

    Joined:
    May 23, 2013
    Posts:
    56
    Edit: Wrong thread but very useful to all UVS users.

    I managed to open a second window by clicking on a Subgraph node inside a graph and then clicking "Open in new window" in the Context Menu that pops up after right-clicking. Works flawlessly and you can keep it forever and open whatever you want. Just like with Bolt. No add-ons required.
     
    Last edited: Sep 3, 2022
  30. myanko

    myanko

    Joined:
    Nov 9, 2013
    Posts:
    37
    From which contextual menu you were able to open a second node editor? From the asset store version, we don't have any contextual menu.

    But on the repo, we do have some new features like the right click action to find nodes. New incoming feature preview :p.
    ContextMenu.gif
     
    Ignacii likes this.
  31. Ignacii

    Ignacii

    Joined:
    May 23, 2013
    Posts:
    56
    Whoops... Sorry! This reply was meant to be in another thread where people were trying to figure out how to open a second UVS window. This is a very important feature but very difficult to find but I managed to! Going to post it to the right thread.

    And your new feature looks very useful!
     
  32. myanko

    myanko

    Joined:
    Nov 9, 2013
    Posts:
    37
    Lol. Allright.
     
  33. myanko

    myanko

    Joined:
    Nov 9, 2013
    Posts:
    37
    V0.3 is now on the asset store. Node finder for unity visual scripting

    Features
    • Options to disable search for tabs with the checkbox on each tabs.
      upload_2022-9-27_20-50-37.png
    • New search filters to constraint current graph to:
      • Search in current graph.
      • Search in current graph and subgraphs.
      • Search in all graphs (Parent, current and subgraphs).
    • Search in state graphs transition nodes.
    Fixes
    • SubState graph search.
    • Fixed naming of some nodes.
    • Fixed default highlight color black and issues with alpha.
    • Fixed Can now See 3d Physic Events
     
    PanthenEye likes this.
  34. Ignacii

    Ignacii

    Joined:
    May 23, 2013
    Posts:
    56
    Hello! I think there's one more thing your asset could do that would be great. And might be pretty easy to implement too. To clear graph errors globally with a push of a button and also to globally clear graph errors automatically on play, just like the default console does.

    It gets really frustrating fast to press the "clear errors" button on every graph if you have many layered subgraphs on top of one another.

    What do you think?