You’ll need to create a project using at least 2019.3.0b1
(Unity 2019.3.0b1)
Features
Codegen for coroutines (Wait node)
Establish High-Level Nodes documentation and priority
Remove Groups from VS (will be replaced by placemats)
Floating Graphview tool windows (you can move and dock the blackboard and the minimap)
Duplicate node (now both create and duplicate are available)
Fixes
VSB-276 Dragging a criteria pills from function on canvas will make the graph unusable
VSB-265 Drag and drop pills from canvas to port is not always linking on node port
VSB-240 Conditional node breaks ui when added between two stacks
VSB-195 Searcher Constant Nodes Preview is broken
VSB-40 Drag and drop pills from stack header or blackboard to port is not always linking on node port
Known issues
Nested coroutine won’t work for this version
As with the previous experimental drops, this is work in progress that we share to engage in an open discussion with our community. Expect issues and weird workflows as we work our way up to a more final product.
Most notably, we are still far from the final user experience, the complexity you see here is not representative of what we want to deliver. We have not yet created high level nodes to reduce the number of operations or finalized our UI to make interactions as intuitive they can be.
So kindly take note of the usual disclaimers:
Not for production use.
Early picture of Visual Scripting, not be representative of the final version.
You will need to be tech savvy to use this version. Not yet ready for everyone.
When i click continue the Unity Editor loads but I do not get any of the Visual Scripting menus…
When I go to the Package Manager the list of packages does not load.
I also get an a lot of errors…
Packages/com.unity.visualscripting.entities/Runtime/EventSystem.cs(13,89): error CS0246: The type or namespace name ‘EntityManager’ could not be found (are you missing a using directive or an assembly reference?)
Packages/com.unity.graphtools.foundation/Editor/VisualScripting/Editor/Elements/Node.cs(6,19): error CS0234: The type or namespace name ‘Searcher’ does not exist in the namespace ‘UnityEditor’ (are you missing an assembly reference?)
I see you can mark a comp as Subtractive, what about “Any”?
Creation of custom nodes from code (not Macros)
Custom/Multiple Worlds (e.g. how does live editing work when the system is running in multiple worlds?)
Also another thing… when I try to double click on EcsStencil, it just opens my text editor (with the yaml). EcsStencil is for changing the system dependencies right? I’m using 2019.3.0b4.
Just a heads up, it seems the On Event node is broken in this version, seems to be a copy/paste error
// GraphElementSearcherDatabaseExtensions.cs : Line 94 in the OnEvent block should be
data => data.CreateNode<OnEventNodeModel>(name, n => n.EventTypeHandle = eventType.GenerateTypeHandle(db.Stencil))
Other than that, this already feels very solid, good job!
Will it be possible to access all of Unity API in Visual Scripting? The particular thing I am interested in is mesh data. I want to procedurally generate mesh.
Also, are we able to write our custom nodes and components in C# without vs? [it’s important because sometimes developers want to be able to write code in C# but make high level custom nodes out of it], and how will the process look like?
Is there a possibility that we could write custom nodes with data for things like [example] Dialogue graph that supports branching on conditions, executes different actions… etc. Or should we aim to write our own graph solutions based on UIElements and GraphView to support this kind of behaviour?
First, when I Dock the Visual Script Window I can’t see the nodes, they are still there since when I Box Select It gives me the option to change the color of the nodes, but I can’t see them.
Second, Currently there is no Save System, Not a surprise being Just a prototype The Question is Will there Be an Intergraded Save System at Launch and How Extensive will it be?
Good catch, it’s already fixed in our codebase. Thank you for the kind words !
Yes, it’s just a matter of exposing them. It’s a list (EcsSearcherDatabaseProvider.k_PredefinedSearcherTypes) that should eventually be data driven.
There’s 3 ways to make nodes: sub graphs (functions and macros), straight c# (see 1.) and deriving NodeModel or
HighLevelNodeModel (HighLevelNodeModel provides an inspector in the node for code gen options). Have a look at
LogNodeModel.cs
Yes. Two options: either write custom nodes for the ECS stencil or write a completely custom stencil and its matching translator. the graphtools foundation package is meant to be a framework for every node-based tool (serialization, ui, extensibility, transformation of the edit time graph to whatever runtime format you want : in our case, code, but it could be an asset too). No ETA on the framework being production ready, but we try to use it as user would to build VS ECS
I would like to be able to change the background color from black to a grey color, could you pass this background color control to the unity color settings, so I can choose my own color?