Programming language in addition to nodes.
The nodes are beautiful, like a poster on the wall for admiring. But for practical use they are very poorly suited. Even 10 lines of mathematical code of vector manipulation in the form of nodes turn into an unreadable mishmash of spaghetti.
In the screenshot, I've reorganized the nodes into a vertical sequence, which improves readability and extensibility.
If the nodes were vertical in design, with inputs at the top and outputs at the bottom - it would improve programming. In the screenshot, Here vertical nodes of the vvvv language:
Still, however, we can forget about large systems on nodes altogether. It is impossible to maintain and debug it. Why don't you make programming like LUA language? To begin with, you can make nodes that contain code and work like a node.
10 Comments
I don't clearly get what is the proposal here, could you elaborate on the following?
I don't see the functional difference with the current horizontal design.
What does that mean exactly? Being able to do the same as nodes, but by programming? Wouldn't that be very niche? And also add a lot of extra work on the dev side?
Plus, although I'm no expert in the current depths of BPY, I believe you can achieve quite a lot using bmesh, or by manipulating the nodes through BPY ; why not that?
Like OSL shader nodes, but in other nodes?
On the choice of LUA language, I suspect the BF would prefer to stick to the ones already in Blender. See Can support for other scripting languages be added? - FAQ - Blender Developer Documentation
Also interesting to read from the same FAQ:
Can support for implementing nodes in Python be added? - FAQ - Blender Developer Documentation
you're not a developer, so I don't see the point in wasting time on you.
Quoting the RCS Home Page :
But hey, you do you. Have a nice day tho.
I strongly disagree. Yes of course the code could be really shorter. But how to change variables and debug a system like geo nodes in the code I have no idea at all. yes I would like them to add scripts. so as not to write noodles from simple functions. but this is the only complaint about the existing nodes.
I'd say geometry nodes IS a language, but you need to learn how to express yourself through it. The diagram has to speak its function, its not just connecting stuff and that's it. Sloppy nodes is just BAD nodes. I'm not against what you propose, but i recommend you spend time learning this language before wanting it to be something else completely. Heres an article i wrote sometime ago:
blenderartists.org/t/node-beauty/1503102
Cheers!
it's a worst language.
Nodes have the lowest information density per square centimeter of pixels.
Instead of scrolling the code with one mouse wheel, you need to move on two axes.
Because of this, when reading nodes, you are essentially memorizing the algorithm in your brain, and already in your memory you are checking the algorithm.
The text has a more clear and compact form of the algorithm, which is quickly read and easily checked.
In nodes, you are like a mole, you can check only local coherent nodes, and you can't see the whole algorithm until you go through all nodes.
All of this slows the process down a lot.
At the moment it is faster for me to first program vector transformations in glsl (shadertoy) with text and then transfer them to nodes in blender.
Everything you have shown in the link is programmed in 5 compact readable lines of code that can be understood by middle school computer science students. There is no need to draw huge posters of spaghetti plates.
Sorry, you are wrong about this. I do very complex multi-layer systems. For that i have developed my own visual workflow, to keep things readable from a distance. When debugging or working with others you need to keep it readable. Most of the information IS the diagram itself. This you do not have in coding. But if you are not a visual person, then i would say its not for you.
You don't have to apologize, you haven't challenged any of my arguments.
I see it this way: its like saying cars are useless because they can´t go sideways, when you clearly haven´t learnt how to drive yet. Just that. Hopefully you'll wrap your head around it and understand it's potential, so you can apply your knowledge organically and visually, instead of sequentially. Cheers!
come back when you have something to say about my thesis.