Search Unity

Question There's a lot of boxing in vs, which doesn't seem to be the case in bolt's time

Discussion in 'Visual Scripting' started by Personuo, Feb 11, 2023.

  1. Personuo

    Personuo

    Joined:
    Mar 19, 2014
    Posts:
    129
    I used bolt to develop games early on, and a few years later I had a project to use it again, but it had been acquired by unity and renamed vs
    I found that vs has a lot of boxing operations that cause extra gc, for example, "plus" nodes generate 40b of gc for a node, and when I assign a value to a variable in blackboard, it also generates 20b of gc
    Since I can't find the project anymore, but I tried to use bolt to make the game after comparing many visualization tools at that time (e.g. flowcanvas), flowcavnas was 100% 0 gc when "adding" nodes and assigning blackboard variables.
    I'm wondering, is vs a step backwards compared to bolt?
     
  2. PanthenEye

    PanthenEye

    Joined:
    Oct 14, 2013
    Posts:
    2,077
    It's not that UVS is a step back from Bolt, it's the same exact tool with a different skin thrown on it. Nothing about it has fundamentally changed since 2018. If anything, it performs better now in the editor at least. Type boxing has always been an issue for Bolt, and now it's an issue for UVS in the same exact way.

    The difference between FlowCanvas and Bolt is that FlowCanvas was always designed for production gamedev as evidenced by the many games shipped with the tool and Bolt was a tool made and marketed for Unity newbies with no known shipped titles besides some solo developed mobile games and that one low budget Warhammer title.

    Unity are working on a new major version of Visual Scripting, see the stickied November 2022 update. It'll have a new runtime that'll eliminate type boxing. By their own words - it'll take them 2-3 years to deliver. Current version is in maintenance mode and won't receive new features this year or ever, really. They're basically doing a full rewrite - new front end UI tech, new runtime, new everything.
     
    Last edited: Feb 11, 2023
  3. Personuo

    Personuo

    Joined:
    Mar 19, 2014
    Posts:
    129
    I purchased flow canvas and nodecanvas, but the author wouldn't allow me to use these tools to distribute mod creation tools, so I had to consider new options
     
  4. PanthenEye

    PanthenEye

    Joined:
    Oct 14, 2013
    Posts:
    2,077
    For modding purposes I'd use something like this and build it completely custom: https://assetstore.unity.com/packages/tools/gui/ui-node-connect-3-214276 This way you can only expose what ever needs to be exposed to the user. But it'd still have to be distributed as a built app that does some kind of export like JSON. All Asset Store assets have the same per seat licensing.