Due to frequent files and folder restructure, you should remove the previous installation folder and re-import FlowCanvas anew.
It is highly recommended to always keep a project backup before upgrading as well!
– v3.1.6 –
New: Ability to parent Asset Blackboard to GameObject Blackboard, thus “inheriting” variables from such asset blackboards.
New: Ability to change Variable Types.
New: LayerUtils (Unity Layer extensions which can be used as normal via reflection nodes).
New: OnRenderImage Event Node.
New: Added “Else” output in the Switch Condition node.
New: “Null” node.
Mod: Moved Animator-Based events to separate file than EventRouter (thus fixing certain issues with Animator).
Mod: Disable variable re-ordering in prefabs to avoid accidentally “breaking” prefab overrides.
Mod: Unified AwaitAll node functionality into AND node.
Fix: Asset Blackboard properties binding was not initialized.
Fix: External Inspector errors.
Fix: Coroutine related null references in certain cases.
– v3.1.0 –
ImportantHotfix that used to break graphs under very certain situations! As a result of this, the feature that appends JSON into the graph asset files is temporarily removed.
New: Global Blackboard singleton destroy options when DontDestroyOnLoad is enabled.
– v3.0.9 –
New: Added “On Grounded” and “On UnGrounded” calls in Character Controller event node.
Mod: Object-based event nodes now initialize in OnPostGraphStarted (instead of OnGraphStarted).
Mod: Disabled exposed variable binding preview in editor time (was becoming a bit confusing).
Mod: ColorUsage attribute now works as expected.
Mod: Graph.onFinish callback in now called after execution flags reset.
Fix: Blackboard was setting scene dirty when it had a Unity Object reference.
– v3.0.8 –
New: Ability to use [DeserializeFrom] attribute for refactoring type members where reflection is used.
Mod: Graphs can now serialize in playmode if required.
Fix: MonoManager was throwing error when exiting playmode in certain cases.
Fix: Incorrect assert error (“Graph should have been called in playmode only”), thrown when existing playmode.
Fix: Checking UnityObject against null in certain nodes.
– v3.0.1 to 3.0.5 –
New: Clear On Play option in Graph Console.
New: Double Click maximize/minimize Graph Editor (thanks to @aFoolsDuty on Discord).
New: Support for Gradient, Vector2Int and Vector3Int.
New: Custom Object Drawers now work with inheritance.
New: Added Graph Local Blackboard inspector on the Graph Asset inspector.
New: Added Drag, Drop and Scroll outputs in UI Pointer Event node.
New: Await All node (found in category ‘FlowController/Flow Merge’).
Mod: GraphEditorUtility class is now public once again (changed from internal).
Fix: Implicit Type Conversion.
Fix: OnEnable was called before other nodes had a chance to Init.
Fix: Dragging an Array Value Port was crashing Unity.
Fix: Conflict with Odin.
Fix: BBParameter was not clearing direct value reference when switched to use a variable.
Fix: Blackboard GetVariableValue to also lookup the blackboard inheritance for the target variable (as intended).
Fix: Dictionary GUI was resetting entries in certain cases.
Fix: GC Collect when serializing.
Fix: AOT Classes Generator.
Fix: Inspecting Structs was not working correctly.
Fix: Type Selection GUI in inspectors was creating leaks.
– v3.0.0 –
Please Note: Minimum Unity version is now ‘2018.4.x’ with ‘.NET 4.x’.
New: WeakReferences and WeakReferenceList, WeakReferenceTable.
New: ‘NodeReference’ utility class to create node references easy.
New: Total Refactor SetReferences for performance.
New: Tasks and BBParameters can now exist anywhere in the graph structure. Deprecated ISubTaskContainer and ISubParametersContainer.
Blackboard overrides on Prefab Instances will be reverted to the Prefab Asset. (Due to new serialization to properly support Variable Overrides).
Bound Graph overrides on Prefab Instances will be reverted to the Prefab Asset. (Due to a Unity bug with [FormelySerializedAs] -> https://bit.ly/37T6CaE ). There is a way around this though. Please contact support if this is an issue for you.
Many other minor fixes, improvements and performance boosts.
– v2.9.7 –
New: Proper support for Unity 2019.3 new Editor GUI theme. Please use the Verdana font on Windows (It’s just better!)
New: Proper handling of OnAwake, OnEnable and OnStart Event Nodes to work the same way as Unity.
New: Added “First Activation” option in FlowScriptController to select between “OnStart” or “OnEnable”, meaning when the first activation will happen.
New: Port tooltips for non-Value Types, now show the object instance (if any). ToString() and if it’s not the same as it’s type name.
Mod: GraphConsole now has a max limit of messages shown.
Mod: Port values now have a smaller font.
Fix: Some MacOS GUI related issues (Thanks to @aFoolsDuty on Discord).
Fix: Some generics-related GUI errors with generic methods.
Fix: Unity Object variable nodes preview was throwing GUI warnings.
Fix: Entering macro in play mode, was resetting macro’s references.
– v2.9.6 –
New: Added new Utility Window “Tools/../Active Owners Overview” that summarize active GraphOwners in play mode.
New: SubGraphs now hold a reference to their parent graph (.parentGraph property).
New: Ports can now be set to ignore “self” instance assignment.
Mod: Graph asset comments are now visible in the GraphOwner inspector.
Fix: Losing unity object references from ports in certain cases.
Fix: Disallowed sending null or empty event names.
– v2.9.4 –
New: Switch Probability Flow Controller Node.
New: Ability to Drag&Drop multiple objects to append in inspector List Editors.
New: Instances of classes and structs in inspectors, are no longer created automatically, but rather with a button on user request.
Mod: Slightly re-organized Flow Controller category of nodes.
Mod: Added MonoBehaviour as default type in Preferred Types List.
Mod: Simplified Full Serializer even more.
Fix: Asset Bundle build warning.
Fix: “Self” assignment was incorrectly trying to assing non UnityEngine assignable objects when the “Self” port was not the 1st value port of the node.
Fix: Welcome Window URLs to point at “new” domain.
Fix: Improved UnityEngine.Object comparisons wherever is possible.
– v2.9.2 –
Fix: Critical serialization bug fixed! Please update if you are using v2.9.1!
New: Physics related “stay” events (like OnCollisionStay), are now called from within Update loop for consistency.
Mod: Improved graph serialization error handling to conserve data if something goes wrong.
Mod: Serialization converters performance gain by avoiding reflection lookup.
Fix: Switch Enum to work correctly when enum has arbitrary values.
Fix: Upcasting type auto-coversion.
Fix: Boolean to UnityEngine.Object type auto-conversion.
Fix: Extractor node when used in .Net 2 Standard.
Fix: Local Blackboard was not correctly assigned when starting graph with null blackboard.
– v2.9.1 –
New: Major serialization refactoring. Serializing properties is no longer supported (only fields).
New: Faster dictionary and lists serialization converters.
New: Double and Long type inspection support.
New: GoTo statement node.
Mod: Removed NETFX_CORE support.
Mod: Graph Minimap now has fixed aspect ratio in relation to Graph Editor window.
Mod: Graph Editor canvas is now infinite in the negative (left-up) axis.
Mod: Removed dark background from node ports in the light theme.
Mod: All code is now re-formatted.
Fix: macOS and retina display issues.
Fix: Drawing order of node ports and spacing.
Fix: Searching operators with c# like symbols (“!=”, “>=” etc).
Fix: AOT generator for global namespaces types.
Fix: Browser filter favorites only, which in cases did not display results.
Fix: Extractor node to take into account type member addition/removal.
Fix: Inherited members categorization in the node browser.
Fix: UnityEngine.Object null check related issues.
Several other micro fixes.
– v2.9.0 –
New: Major files and folders restructure. This also allows usage of Unity Assembly Definitions.
New: All nodes now have 3 Display Verbose Levels -> 1) Minimal (no ports displayed) 2) Partial (only connected ports displayed) 3) Full (all ports displayed).
New: Display Verbose Levels can be changed from either the Graph Editor toolbar, or individually with the new icon button shown above nodes.
New: Connections can now be re-linked (both source and target ports), by click and drag the connection.
New: When dragging a port connection (or re-link), possible target nodes are now highlighted.
New: The Minimap now also shows connections, as well as selected nodes and execution status.
New: Improved ports GUI and layout to require much less horizontal space for the node to display.
New: Custom Event node now has an extra output “Sender”, which is the object that send the event.
New: Blackboard Variables can now be duplicated (through a variable’s options button).
New: Added AutoConverts for quaternions.
Mod: First graph execution is now OnStart instead of OnEnable.
Mod: Stepped and Linear connection visual modes are removed.
Mod: Re-added previously deprecated Internal Var nodes.
Mod: Connections are now easier to click.
Mod: Complete refactor of StyleSheets.
Mod: Removed source PSD files for icons.
Mod: Some general improvements to GUI styles, icons and colors.
Fix: Nodes GUI size is now always relevant to it’s content.
Fix: Ocasional GUI connections flickering when using node inspector.
Fix: Safe check in Custom Function node to only run once concurently.
– v2.8.5 –
New: Unity 2018.3 tested.
New: Graph Finder Utility Window to quickly search, browse, find and auto focus graph elements.
New: Convert Selected Nodes To Macro ability (on right click menu of multiple selected nodes).
New: Value Selector Nodes assortment, similar to Flow Switch Nodes.
New: Float and Int “Snap” Nodes.
Mod: Re-Added categories shown when searching in browser.
Mod: Improved smart matching algorithm to yield better results when searching in browser.
Mod: Deprecated option to “Use Browser”. Browser is now always used where is adequate.
Mod: Type icons now show in consistency in all menus.
Fix: Losing connections on missing reflected method.
Fix: Improved Editor Visual Debug performance.
– v2.8.2 –
New Extractor node is now available in all types instead of only structs.
New: Wait Until, Wait While nodes.
New: More exposed ports for CoolDown and ForLoop nodes.
New: Port.SetDefaultValue to set default value when creating custom nodes.
New: [ExecutionPriority] attribute for nodes.
New: StartEvent no longer yields a frame.
New: Connections are highlighted on hover.
Mod: Removed GameObject Icon Hierarchy Highlighting because it was dropping editor performance.
Mod: Improved Smart Search in Node Browser.
Fix: MessageRouter was applying root motion even when “Apply Root Motion” is off.
Fix: Incorrect BBParameter Promotion when parameter is Dynamic.
NEW: Added Custom Input Axis Event node (able to define any number of axis names).
NEW: Added Switch String Flow Controller node.
NEW: Added Switch Object Tag Flow Controller node.
NEW: Added CacheValue(T) node.
NEW: Flow Merge nodes AND and OR, can now take multiple inputs instead of two.
NEW: Added “Pressed” output in UIPointer Event node.
NEW: Added “Reset” in Sequence Flow Control node.
NEW: Added Task Action and Task Condition nodes for using NodeCanvas made Tasks directly in a FlowScript, thus being able to use any current 3rd party integration available already (Such nodes do no expose value inputs/outputs)
NEW: The Set Variable node now includes operations for floats and integers to Set, NEW: Add, Subtract, Multiply and Divide the input value with the variable.
FIX: Macro node connection being lost.
FIX: Renaming Macro inputs/outputs from removing connections.
FIX: Node context menu not showing all Macros in the project.
NEW: Drag and Droping ports on the Macro Input or Macro Output Node, allows for “promoting” the port to a Macro Input or Output automatically.
FIX: Node connections that were visually shown messed up the first time the editor gets opened.
FIX: Dragging and dropping a gameobject from the hierarchy and selecting a function from throwing errors.
NEW: Flow Execution exceptions (typical in reflection nodes) are now catched and the UI indicates the failed node in red.
NEW: The Editor UI has been improved to make Object type references more visible.
NEW: Default port values are now shown transparent instead of not showing at all.
NEW: Preferred Types List can now be saved/load to a preset file.
NEW: Improved Context Menus filtering when dragging value ports, to include the dragged type in generic node definitions.
FIX: Light theme not showing some node titles.
FIX: When dragging Flow ports, that they looked like they can be connected to string value ports.
NEW: Improved on showing which ports the dragged connection can be made to.
NEW: Switch Enum node type, can now also be set by simply drag and droping an enum port over the node.
NEW: Vector types are now color coded in orange.
NEW: Variable nodes are now color coded in white.
NEW: Visual Debuging is now more snappy and per-frame updates remain constant yellow instead of flashing on/off.
NEW: Reorganized node categories.
Modified node help description to be more consistent in terminology.
FIX: Blackboard deserialization of missing variable types.
NEW: Refactoring method parameters and return types for reflection nodes, is now handled.
– v0.8.8 –
New: Static Code Event.
New: Static Code Event (T).
New: Code Event (T).
New: Dragging any output value port in the canvas allows creating a new variable.
Fix: Preferred Types from reseting and being filtered out.