[request] master blueprint node list

Okay so I was just discussing this with a few people on irc and they suggested that I make a request for a master node list within rocket itself, using something like the generic browsers tiled/list layout it can show all the nodes by name and perhaps a short description if its available.

Basically the goal of this would be to help people search for what their available options are and give them insight on where to get at a specific node from because sometimes the context sensitive menus can hide things from us.

Hi Daniel,

How would this be different from the Palette tab already provided in Blueprints?

Ahh nice question! Well the palette tab still is context sensitive to some degree. What Im suggesting is an over-arching list that contains every node you could possibly create from any class (including anim blueprints).

Like the content browser window so we can see all the nodes names in your face at one time and scroll through them easily without having to expand all the sublists.

Do you view this as a part of the Blueprint Editor, or an independent window like the Class Viewer?

If the latter, would you expect it to include all node/function types, including those found in the Sound Cue Editor and the (overhauled) Material Editor?

Do you view this solely as a descriptive list, or is it interactive (you can drag nodes into appropriate graphs)?

Aside from the possibility of dragging nodes, is there any reason this list would be better suited to being a part of the editor as opposed to being a page in the Documentation?

The reason I saw it better situated in the editor was because available screen space, the current issue is we have an entire palette with 100’s of nodes utilizing a tiny amount of screen space, the same issue will be on a webpage as well since they are designed up and down readable like paper not wide like a 16:9/10 screen.

What I had in mind was purely a descriptive list so that people who are stuck have some where to go to search for alittle bit more information regarding nodes. This node library could alleviate some of the Q/A time related to blueprints that are fairly trivial requests when you look at them in hindsight.

Now you mention it all nodes including sound/materials might be useful especially if its used like the content browser where we have the option to filter. I saw it more like an independant tab thats forsure and really didnt think dragging and dropping should be supported because once the node is found you can search the quicklist in the required subeditor.

Now I think about it a small preview pane showing the node inputs/output could be useful, making this more like a tiled version of visual studios object browser but for nodes. The hierarchy wouldnt be overly important as it would show what main class the node is declared in. Thats about all I got for now :slight_smile:

I appreciate the extra thought on the subject. I have reported your feature request with all the ideas presented.

Thanks.

No worries, I just hope itd be as useful in practise as what I think it could be :slight_smile: Thanks for getting me to explain it out better.

Thanks for the input. As Stephen said, this was very much the intention of the Palette tab and why we added it. The Palette really isn’t very context sensitive right now, it should show you all functions you can call etc. What were you finding it lacking? We are continuing to work on things like showing better documentation for nodes. We now have support for ‘big tooltips’ when you hold Ctrl+Alt, and this might be a good use for them. Showing a ‘preview’ image of what the node will look like might be cool as well!

I have to say I don’t like the idea of one Palette that includes nodes from different domains though (e.g. both material nodes and anim nodes, for example). I think you know the domain you are working in when you are looking for a node.

Well I think the reason why Im asking for all of them is a person may not know which domain a certain node lies in. For example I was trying to scale a bone and had no idea I was trying to work from the wrong blueprint that I should have been using the anim blueprint (which kinda makes sense now). If I were to search in the palette it comes up empty for this.

I guess I just like to be loaded with information, I like it all there at once in my face because I can speed read it. When Im required to read line by line it slows me down and its easy to overlook things. I do alot of reading (I mean alot) so the less clicks I have to do to get to a piece of information the better. The quick search certainly helps if you know the name of what youre looking for but there will be instances where you dont know the name and a small list taking up 1/10 of the page and being mostly obscured (if you get it completely expanded its worse).

I guess I see alot of overlap between nodes and Im not sure I know why that domain separation happens.

Perhaps some kind of compromise might be a tickbox to remove (or expand all) categories in the palette for when youre searching, it can be up to 50 clicks to find a single (unnamed) node. Ofcoarse people are encouraged to use the search which is great but it doesnt work in every instance and I believe documentation would make the search even more difficult because it wouldnt be just nice small tiles of information it would be spread out down the page with pictures of what the node looks like and verbose descriptions.

Ofcoarse I can find anything I need with Grepping the *.h’s but that also requires I know what Im searching for by name.

It would be nice to have a function to let you scale a bone from a Blueprint as well as an AnimBlueprint!

As you say there is a lot of overlap (e.g. there is an ‘add vector’ node in both materials and blueprints), you would have to make sure you are placing the right one!

Functions can actually have keywords which are searched for as well as the function name itself. This means that now when you search for ‘plus’ or ‘sum’ you will get the ‘add’ functions.

I did notice “x” doesnt actually bring up multiply :slight_smile: which does make sense as the symbol is *.

I can see what youre saying a person might get confused if they look at the master list to go back into the specific domain and not be able to find the required node because it was from another domain.

Honestly things like vector addition should be global but I can understand why there is a separation when materials are compiled into a different format to gameplay code. I just find it interesting materials use float3 like CG shaders where the rest of the code calls that vector. Obviously the name was is more generic in shaders because it doesnt always represent coordinates in 3d space.