Node Kit - Blender add-on to manage (save and load) nodes in Node Editor

Hi,

First off, let me say that this add-on is super handy and has already saved me time on a number of occasions in the couple days since purchasing it.

However I’ve run into some problems (maybe bugs?) when using it with animation nodes (AN).

First off is that if you save a preset and load it without first deleting the original nodes, or if you load the same preset multiple times, AN gives an error because more than one node shares the same identifier. I can work around this by replacing the loaded nodes with copies via the N panel, but is there any chance this could be solved by giving the loaded nodes unique identifiers (like what seems to happen when loading shader node presets)?

The other issue is that I can’t seem to load presets containing nested subprograms without getting an error. For example if you create a loop subprogram and then invoke that loop inside of a group subprogram, I can save these as a preset just fine but I’ll get an error when loading the preset. While I can work around the prior issue, I don’t see a good way to get around this one for the time being. Hopefully you can take a look at this when you get a chance.

Thanks!

1 Like

Hi, thank you for your detailed feedback.

I will take a look at these two issues later. I think they should be fixed.

1 Like

Hi, is it possible to share your blend file which has these two issues? I am looking into it, and can’t not reproduce this two issues on my side.

Also, it would be nice to tell me what version of Animation Node and Blender you used.

I think I fixed the second issue, which was caused by saving wrong names of socket types, but I need your blend file to double check if it’s fixed.

Also I am still trying to reproduce the first issue, if you can provide a demo blend file for me to test with this issue, that would be nice. :smiley:

Hi, here’s a blend file with a very basic example of the first issue. I added a single node (integer input) and saved it as a preset. Then loaded the preset. If you look in the N panel it should describe the error.
NodeKit Error Example.blend (818.6 KB)

I’m using Blender 2.90 and a fork of animation nodes by BlueFox found here: https://github.com/harisreedhar/AN_BLUEFOX

The fact that you can’t reproduce the first issue makes me suspect that it’s some problem on my end caused by using this fork of AN, or maybe the specific version (I’m on version 2.1.7 and latest is 2.2). I will try install the regular version of AN and see whether the problem still persists.

Thanks very much for looking into this for me!

Update: Still getting the first issue with vanilla animation nodes (tried with both LTS (2.1.8) and latest (2.2.1) versions of AN, Blender 2.90)

1 Like

What is the status of AN 2.2 and the latest Sverchok support in this add-on?

1 Like

I just tried your blend file with AN v2.2.1 and Blender 2.90, and it works fine.

Can you try to remove AN, reopen Blender and install AN 2.2.1 and try again?

You need to save the preset again, since your old preset was saved by using the fork version of AN.

I just made a screencast showing how it works on my side.

I think the error is still occurring in that video because there are red bars at the top and bottom of the window. If you open the ‘Node Tree’ tab in the N panel, then open the ‘Problems’ section, you’ll see an error there.

I should clarify: for the first issue I can successfully load the preset, and the nodes will appear. However because of the shared identifiers problem, the node tree will not execute. So the problem isn’t that I can’t load the preset - it’s that animation nodes will not run if there are multiple nodes sharing identifiers.

1 Like

Got it, I see the warning message in the Problem section of Node Tree tab. Let’s me try to fix it, I know this is a real issue that will cause your work flow with Animation Node.

1 Like

Thanks for the support, much appreciated. I should have explained the problem better in my first post, apologies for that confusion!

1 Like

AN 2.2 works fine with this add-on, but Sverchok does not.

I just fixes two issue with AN 2.2.1.

1 Like

I think after a long day of coding, these two issues have been fixed, I will make a new release hours later.

:slight_smile: I just got excited to fix the second issue, because it’s so hard to fix, I used a timer to delay the connection of sockets, and it works fine. WOW, coding is so fun. :slight_smile:

1 Like

Can it handle the AN script nodes properly as well?

2 Likes

That’s great to hear! Finding the solution to a problem can be so satisfying. Can’t wait to test it out :slight_smile:

In my experience script nodes do work, however when loading up a preset in a new blend file you’ll need to manually click the plus button on the script node to link the python script.

2 Likes

Just release a new update v1.1.8:

Version 1.1.8:

  • Fix: Identifier exists twice error for Animation Node
  • Fix: Invoke subprogram node links broken and subprogram not set correctly for Animation Node

Please have a try, and sent me feedback if it dose not work for you.

1 Like

Yeah, as aqua said, AN script node works fine with Node Kit, and if you restore preset into a new blend file, you need to manually link the script text to the script node, because the new blend file does not contain the text script which was not saved into the preset.

1 Like

I see. Would not it make sense to actually parse the script and save it in the template? I am very much interested in this add-on but the AN scripts are part of my workflow. I do not gain a lot as long as I need to open the original file and copy bunch of scripts manually and set them in the right script nodes, appending the node tree would get me there faster obviously this is not as slick. Imagine needing to this with 10 script nodes in an AN tree. However if this is a feature you might consider implementing at some point I would be happy to give it a go.

thanks

2 Likes

Brilliant! As far as I can tell, those two issues are gone!

Unfortunately I did stumble upon another scenario that causes an error (sorry to do this again!).

I’ve narrowed it down to subprograms (groups or loops) that have these types as inputs or outputs: float list, boolean list, text list. There may be other types that cause this error, I don’t know yet. Saving and loading gives a visible error similar to the second issue from before.

I also tried with expression and script nodes using these socket types. Bizarrely when loading them there is no error but any inputs/outputs using those types simply disappear.

Hopefully that info helps.

Node Kit List Error Example.blend (841.4 KB)

1 Like