Hope it's already to post this here! ^^'
I've been teasing the existence of "Polygonflow" here for almost 3 years, and it's been an incredible ride seeing how this idea evolved from a basic Maya macro plugin to a fully-fledged company with two major tools, 5 people on the team and 8 open roles (we are hiring!).
This idea was born in Polycount, and I cannot thank you all for being such a fantastic community that fosters art, tech art, curiosity and an amazing community!
https://medium.com/polygonflow/announcing-polygonflow-f48e9c066f85Feel free to give it a read to know more, and let me know if you have any questions as well!
Here are a couple of open positions that we currently have as well! Check out our
LinkedIn page for more info on each role, and please spread the word if you can!
Replies
Your dev threads for ADN tools prompted me to make a bunch of tools for max that directly contributed to shipping a title and led to me investigating a whole world of cunning shit.
Gave it (my first and only :P) share on LinkedIn as well.
GraphN is a standalone visual programming software that helps you create plugins for Maya, Max, Blender and Unreal Engine. These plugins can be shared with anyone just like you would share a MEL script, because they manage their dependencies in a really efficient manner. What this means is that you don't need to have GraphN to use any of the tools that are made with GraphN.
Metanode is a library of tools that reside inside your 3D software or game engine of choice. You can think of it as a really smart tool shelf that has a search bar, and you can type anything you want like "quadrify my selection" and it'll convert your selected mesh to quads.
Subscribe to the January 2021 Beta: https://polygonflow.io/
You'll be able to create nodes just like you would with a tool like Bifrost or Fabric Engine.
The tricky part here is finding the right balance between leveraging Maya and Python's APIs at the same time without introducing a myriad of bugs/crashes, so we're taking our time to get it just right.
Could you describe precisely the tool you are making and what it does ? In the sense of what can it import, what can it write out, and so on ; or, what does it actually interact with.
It's just kind of weird to have to hunt around like that. I don't really understand the point of a vague tease with just buzzwords, but maybe that's just me.
So, based on this video with the scifi hut this looks like Grasshoper/Svershock/Houdini for Maya. Is it coming to other apps ? If yes, which ones, and when ? Do the nodes work just like global modifiers, or do they allow (like Max modifiers) to select components from the output of the previous node ? Is some sort of scripting/expressions supported ?
Well now that makes more sense ! Is there any reason why Python is not being mentionned more clearly ? (like an attempt to not scare away non technical people maybe ?) FWIW if that's the case I would argue that the opposite might be a better tactic, as marketing claims revolving around catchphrases like "no code is needed ! Everyone can do it !!" tend to be really irritating IMHO (because most of the time code *is* very much required - just not in plain text form).
Anyways ! If this tool is basically "Scratch for Python but with nodes", can it be used by itself as a full replacement for a regular code editor ? As in : if I use your tool (GraphN, if I understand the naming correctly), can I use it in place of Sublime or Notepad++ ? That is to say loading up any .py file in it, editing graphs and writing code in there, and saving it out as a regular, functional .py file ? If that's the case how is the node layout saved then ? Using special comments inside the .py file itself maybe, or as part of some project/user settings file saved somewhere else ? Or maybe the layout gets reset on file open ?
Also, what happens when importing a custom library like Numpy or Pandas ? Are relevant node types automatically generated somehow ? Or maybe some libraries are supported, but not others ?
I would say that if all of the above is possible I'd personally be extremely excited. I only have superficial knowledge of Python and while I recognize some of the strenghts of the language, the mere fact that it uses indentations as a structural element is in my opinion completely backwards, so abstracting that through "unbreakable" nodes does sound great. If anything, one thing I would personally looooove would be the ability to format python code like one would format any text document : using different font sizes, highlighting lines, adding notes and diagrams, and so on. That's something I've been wishing for ever since I first wrote a single line of code, and that also applies to node graphs.
Regarding 3DSMax modifiers : they have two specificities that most other apps don't support. First, they allow the user to go back to the base of the stack to make edits to the base geo (even removing/adding faces) with the end result of the stack reacting as expected. This sounds obvious but Maya doesn't support this for instance as the change of vertex numbers trips it up. Second, Max modifiers allow the user to treat the end result of the stack as an editable object itself, allowing for another layer of operations based on a selection of components from the layer below the last. This is powerful for non-destructive detailling.
But of course these details obout Max modifiers are not really relevant here, as I don't think they can be driven by Python anyways. Or can they ?
GraphN has an intergrated code editor, which is how we write all the nodes you're seeing but it's a custom-built one that allows you to bind function args and returns to actual sockets/pins. So basically you can select a function's arg, give it a type for type safety, a description, default value, etc...
Regarding the presentation/UX : IMHO the nodes should show their content better. For instance in the case of the the int+string example the user shouldn't have to look at the detail view to tell what the string and int actually are - the values should really show up within the node representations themselves (just how in UE4 an image texture node shows the thumbnail of said texture). In other words one should never have to look outside of the graph to understand what's going on. Same goes for the Insert Code node : the code contents should be accessible (and ideally, editable) directly within the node itself imho. Another example is the + node : the fact that the node is of the "Arithmetic Operators" type is really not that important compared to what the operator is in and of itself (in this case, +). When zooming out the node should simply look like a big +, as opposed to forcing the user to zoom in just to see what kind of "Arithmetic Operator" it is. IMHO, a node-based implementation of any language should always strive to be as readable as possible from as far away as possible, in order to compete with written code which by nature is really compact.
Is there any such "node-based" Python editor available already ? (either your own tool, or equivalent ?)
Their facebook group appears quite active. They seem like they have a hotfix for some start up errors they want up tomorrow (?) but IDK if yours is the same one. Would ask there if you're super curious.
your av is locking their license manager. you have to open the icon and start trial licensing manually