Animation Nodes

Cheers O.G.!

Yes, something like a Mesh Neighbourhood node would be useful. As input it could get (a list of) vertices, edges, or faces. Then for a vertex, it could return the indices of the connected edges or (as a choice in a drop-down menu) the indices of the vertices directly linked to the vertex by the edges (in other words, the star of the vertex). For an edge it could return the indices of the connected faces. For a face it could return the indices of the edges bounding it.

Using a bmesh instance this would be straightforward to do, in O(1), using a regular face-vertex data structure this would take O(n).

[Edit] For a draft of the above, see https://github.com/JacquesLucke/animation_nodes/issues/293.

Just FYI, the first example (domino) is having a problem on my system at least: when the .blend loads the Invoke Subprogram node on the left subgraph as well as the entire right subgraph (i.e. Loop Input etc.) are pink. So then I opened the Animation Nodes tool shelf and manually clicked the Execute Node Tree, there is a traceback ending with animation_nodes.problems.ExecutionUnitNotSetup and location: <unknown location>:-1. (Iā€™m still sorting out which way is up with AN or Iā€™d provide more/better infoā€¦)

@phil14: The pink color is normal, it just helps you to see which parts of the node tree belong together. For me the file works without problems. Do you use the newest AN and blender version? Otherwise it would be helpful to get the full traceback and some exact steps to reproduce. Thank you :slight_smile:

thanks phil14, it seems the direction to rotation node had been changed, fixed it -deleted and added again-

Ah yes. I thought @phil14 used the file in my google drive folder, because I corrected this file there already some time ago :slight_smile:

That did the trick.

Jacques: no worries. I knew my description was probably not the most helpful as Iā€™m still getting familiar with AN. Thanks for this most excellent addon!

Thanks a bunch for your work in this Jacques!

Hi,

I am experimenting with ā€œNetwork from particlesā€ template and I donā€™t see any way to get those distance parameters out of ā€œFind close verticesā€ node. If that would be possible, maybe we could use that to control vertex colours of mesh and that way get similar result to Plexus plugin for after effects, so that lines start transparent, then get visible and then disappear smoothly when getting too long. I think it should be quite easy to do if we could get those parameters. At least I think thatā€™s the only way, because the generated mesh is one object and can have only one shader, but yeahā€¦ vertex colours could be the way! Otherwise the effect is quite choppy.
Another cool thing would be if those generated polygons of lines would always point at the camera.
Weight of lines could be controlled by distance between particles alsoā€¦ and not just by one setting.

Karlis

so is there much difference between this, and say, the motion tool addon from blendermarket?

Node group support?

Are node groups not currently supported? (i.e. Node menu -> Edit Group, Ungroupā€¦ are all disabled for me) Also, are the Subprogram menus ā€˜groupā€™ nodes related to the Blender concept of node groups or something else?

Subprogram menus group does the trick, but you are Not forced to go to another tree / tab into it
(It is a subprogram or a group of nodes that can be called n times ā€¦)

  • that allows you to see or change things in group on the same screen if u prefer
  • duplicate things and creating another group etc. In a way itā€™s more flexible.
  • on any invoke nodes (that call this group), same tree or no, if u TAB it will zoom view to the group input/output.

However, you can put it in another tree if you prefer to be organized etc or for further reuse by appending into another file


ps: node groups as in blender are not supported for any py nodes addons, by design, but that is not a loss here.

Thanks o.g., that addresses my questions both re: why itā€™s different for Animation Nodes vs. regular Blender node groups as well as the use cases I was envisioning.

Does this affect to AN?

https://developer.blender.org/D1523

Couple of questions regarding (Integer) Lists. I use an Integer List [98, 102, 108] as input for a Loop. The Loop returns (Generator Output) a new Integer List [99, 102, ā€¦] which Iā€™d like to use as input for the next time the Loop is invoked. How can I do this?


In addition, are there nodes (planned) for List Intersection, List Difference, ā€¦? How about a node to remove duplicate entries from a list (in other words, make it a set)?

itā€™s not clear to me what you need so here are some things to explore about loops

  • you can invoke n times
    -you can have loops in loops
  • you can append or extend the list in a generator (see advanced panel)
  • you can reassign a parameter, thus recurrently doing an operation (again, advanced panel)
  • the advanced can also be called by U key


In addition, are there nodes (planned) for List Intersection, List Difference, ā€¦? How about a node to remove duplicate entries from a list (in other words, make it a set)?

good point
(you can do this today with loops and search list, but would be better and probably more efficient)

Thanks. What I was trying to explain is the following ā€” invoking the loop creates a list which I need to use as input for the loop the next time it is invoked (and so on). The loop is invoked when the Frame is changed.

Example. The initial list is just [98, 102, 108]. These numbers are indices of vertices of a BMesh. For each element in the list [98, 102, 108] the loop finds the star of that vertex in the BMesh (i.e. it returns the indices of the vertices directly connected to the vertex). These indices are added (extend, not append) to a list. When the loop has finished processing [98, 102, 108] we have the list [99, 102, 105, ā€¦]. This is the list I want to use as input for the loop the next time it is invoked. See below.

[Edit] So basically, I need to reassign the Iterator (not the Parameter).


then you can use my example at the top, connecting frames to iterations (green one):

  • the blue is your loop that does bmesh stuff
  • the green repeats it n times (iterations) and reassign+extend the result
    If u put the frames in iterations, for frame 1 have 1 iteration, for frame 2 : 2, for frame n: n iterations
    (so itā€™s like selecting more and more points)

ps: So no, you donā€™t reassign iterator, you have a loop in loop that repeats a parameter n times (reassign or notā€¦)

I canā€™t get it installed correctly. Everything works until I try to enable it. Iā€™m on Linux Mint 17.2. Does anyone know how I can fix this? Here is the error message. (I have tried multiple installs in multiple different ways, but canā€™t get it to work.)



Thanks very much, Uncle Snail
Edit: I fixed it. On Linux, in the terminal type: sudo apt-get install python3-numpy
Restart Blender and try enabling again.
I hope this can help someone. :slight_smile:

I had the same trouble installing v1.0.1 today. What worked for me was:

  • ensure User Preferences > File > Auto Execution > Auto Run Python Scripts in enabled
  • uninstall any old version of Animation Nodes
  • restart Blender
  • install the latest version

Hope that helps.

Hi Iā€™m running into a bug with this add-on, Iā€™ve done some searching but Iā€™m not finding anything mentioned. Iā€™m running version 1.0.1 (I downloaded from Git two days ago,) and I canā€™t get the script node to connect with any other nodes. I can create my script just fine, I can add inputs and outputs (selecting the proper type, float, integer, string, etcā€¦) but once I add those itā€™s acting as if those links are incompatible with the nodes Iā€™m trying to connect to (the debug node and the text object out [with string type] are among the ones Iā€™ve tried.)

Itā€™s reallyā€¦ oddā€¦