This is a related but somewhat unrelated question, I am wanting to get clearer understanding on this visual scripting system, but also some insight into it’s roadmap, and how that relates to my own efforts.
I was working on this, GTLogicGraph, which is a mutation of the ShaderGraph, but for more generic logic.
https://github.com/rygo6/GTLogicGraph
More specifically what it does is, you chain together a series of nodes, and each node does an operation on a piece of data. I have set it up so you add your graph on a component in your scene, then you can feed the graph inputs with things from the scene, such a transform or curve in the scene. Then that same component will output the results of the graph through firing UnityEvents on the component, which can be hooked up to anything.
I have been using this to build out a node based procedural modelling system. So for example, to make a race track. I have a curve component for you draw a curve in the scene. Then you input this curve component into the input slot of a ‘LogicGraph’ component, which then has a chain of nodes in it to simplify and refine the curve, then extrude a mesh along the curve. The LogicGraph component then fires off a UnityEvent in the end with the generated mesh, which will then add the mesh to a MeshFilter to display in the scene.
I was going to implement a lot of functionality to then thread these nodes as well.
BUT it seems like all of this could be replaced by DOTS, and this visual scripting system. Is that a correct intuition? Could I just re-implement all my procedural modelling nodes as nodes to work in DOTS visual scripting.
I have been looking around the package so far and what seems to be missing is a method to input and output data into a graph from the scene. So I can input a curve component, then have it output back out a mesh onto a static mesh filter. I was looking at the ‘Macros’ which seem to let you define inputs and outputs, but that seems to not be what I seek.
Is there a way to do what I describe with DOTS and this visual scripting system? Is what a describe an appropriate use of this system? Or does it make more sense to keep going on my GTLogicGraph?