godotengine / godot-proposals

Godot Improvement Proposals (GIPs)
MIT License
1.16k stars 97 forks source link

Separate `Show Grid` and `Enable Snap` toggles in the Visual Script editor #2111

Closed jasperbrooks79 closed 2 years ago

jasperbrooks79 commented 3 years ago

Describe the project you are working on

A Tomb Raider game, with epic code and, even epicer beasts and, monsters . . <3 . .

Describe the problem or limitation you are having in your project

In visual script, it's a bit annoying, when I disable the grid, that snapping also is turned off, and the boxes go sailing away, into the sky or, waters . . :O I was wondering, if in visual script, the ' show grid ' and, ' use snap ' could, not be made into separate icons, or somehow not be, connected, as it would make visual script, even nicer, to use ya ya . .

My new visual script theme, for Godot, personal gold, so cool . .

Skærmbillede (865)

No stress, just fun . . But, now I need the last feature, to be able to turn off ' grid ', but still have snap, please . .

Skærmbillede (873)

Skærmbillede (873)

The LAST thing is, the ' grid ' size ( default 20 ), it would be cool if there was a place, to set that globally, for all visual scripts, right now, even after setting it, when re-opening the same script, it goes back to 20 ( default ), by accident . .

Please, fix these issues or, problems, I can't sleep or, think, until it's done, ya ya . .

Describe the feature / enhancement and how it helps to overcome the problem or limitation

Just the above, soon, or hurry . . More features, more code, or there riots . .

Describe how your proposal will work, with code, pseudo-code, mock-ups, and/or diagrams

Just, the above two ' fixes ', to make the user - experience smooth, as silk, on a pillow, that's all . . . <3 :O . . .

If this enhancement will not be used often, can it be worked around with a few lines of script?

I can't change the engine, as a new user, not yet . . Please, consider . .

Is there a reason why this should be core and not an add-on in the asset library?

Well, this is always difficult to answer, I'm not sure . . <3 <3 . . .

jasperbrooks79 commented 3 years ago

Also, if one could set grid-style to ' dotted ' and, set the opacity, and disable the ' vertical ' lines, so it looks like . .

2021-01-13 0248

like, graph paper . . <3 . .

basically, so one can enable, or disable ' large lines ', both vertical and, horizontal, and the smaller ' lines ', also, vertical or horizontal . . :O . . . Thanks . .

To get that, custom look <3

jasperbrooks79 commented 3 years ago

basically, this . . >>

Skærmbillede (874)

having these settings, maybe in a ' menu ' or, a few buttons or, drop - down buttons, would make visual script canvas ( maybe also visual shaders ), look more appealing, or fun, totally custom, you decide, what's best <3 . . Thanks . . .

jasperbrooks79 commented 3 years ago

Also, a ' toggle ' to set text in graph node headers, to italic . . :O :O . .

Over - all, a more ' custom ' way, to set visual script canvas and, grid looks, so one can make it, ' just ' right, I'll find the right settings later, so if one could disable or, enable vertical and, horizontal lines, and set opacity of them, that'd be amazing, maybe like there's an ' editor settings ', where one can set theme, simply, more options, or so . . Then, I can make the most bad - ass, cool visual script experience, in the world <3 . . Thanks . . . .

when, the settings are there, I'll make it shine and, hum, like an explosion, of coolness or, more . . .

Skærmbillede (874)

I hope at least, we can get SOME of these things, such as setting the grid lines to ' dotted ', or ' dashed ', etc . . Then, over time, we'll find the absolute most beast, cool and, sweet Visual script theme, or so <3 Thanks . .

Now, we need Godot 4 and, fast . . <3 <3 . . .

Basically, a custom font, for graph node headers, that's all, and ability, for setting bold, and italic, that's enough . . Thanks . . .

ps. I have OCD, autism, I type really silly, sorry . . . :OO . .

jasperbrooks79 commented 3 years ago

and, some of these, for making it really shine, for when grid is on or, not . . >> 2021-01-13 0316

so, we can make some really blazing text headers . . <3

here, or close . . .

Skærmbillede (875)

not quite, the right font, but it'll look cool, when I'm done, smooth as, butter and, cream, on Sunday <3

Thanks . . .

jasperbrooks79 commented 3 years ago

anyway, I guess what is really needed, is a new, separate font, for graph node headers, that's all . .

here, is looking really nice, but if graph node headers could be italic, that'd be sweet, no more . .

Skærmbillede (878)

Thanks <3 . . .

jasperbrooks79 commented 3 years ago

Add, also a way to ' color ' comment boxes, so they look like <3 . .

Skærmbillede (879)

post it <3 . .

2021-01-13 0427

And, a way to just ' write ' on the canvas, with any font . .

floating text . . . >>

Skærmbillede (880)

the fonts aren't the best, but one could write text, anywhere, and pick font and, color of text, for when navigating, a script <3 Thanks . . Trust me, it'll be so good, you won't believe it . . . <3 <3 . .

also, text size, or so . . that's, really good, ya ya . .

jasperbrooks79 commented 3 years ago

@Calinou sorry, to disturb, I added some stuff to it, I know not to disturb engine devs, your time is precious, I hope we can get this, in Godot, to make it ' rock ', so hard . .

<3 . .

jasperbrooks79 commented 3 years ago

okay, a way to make the comments look, like this . . so, one can also change color, of the HEADER, of the comment . .

Skærmbillede (880)

the last really cool thing, was if one could divide the canvas into like, more viewports, and then drag or, connect nodes, between them, for faster coding, or so . . so, one could connect two nodes, that were far apart or, so . . and, select nodes and, move them into other viewports, so to move a cluster of nodes, one can select them in one viewport, and drag them into another part, of the script . . and, the last thing, is a window, where one can also write code, at same time, maybe . . to make, editing easier, faster, or so <3 . . .

jasperbrooks79 commented 3 years ago

if we could get these things, so I could experiment with them, I could make a kick - ass visual script theme, and make many, many users more happy, in using it, etc . . but, it needs to be so, I can set the colors and, fonts, also sizes, very custom . . :O :O . . . Thanks . .

gonna make it shine, like a mother, ya ya . . .

jasperbrooks79 commented 3 years ago

the last thing, add so one can have ' layers ', in the script . .

Skærmbillede (881)

so, the layers beneath gets faded or, 'dithered', or so . .

2021-01-13 0500

having these things, would take visual script, to another level, given some time, I'd make the ultimate version, possible . . like, a breeze, ya ya . .

jasperbrooks79 commented 3 years ago

the effects and, so aren't 100 % there, I'm not so good at drawing or, finding the right images, sry . . . <3 . . .

but, I'll make it rock, for real, with the right settings, believe me <3 . .

Thanks . .

ps. add the ability, to also pan ' each ' layer or, ' scale ' them, may-be <3

jasperbrooks79 commented 3 years ago

the last thing would be, to be able to go into a semi or, so 3D view, of the scripts . .

2021-01-13 0515

so, you can drag and, drop or, connect nodes, between layers, may-be, and where the ' box ' 3d effects, fades, and you can rotate the canvas a bit, to get a ' good ' view . . so, you can drop nodes between layers like, bricks, or simply the ability to, create nodes in each layer, or have a button to, ' move 1 layer down ' or, up, or so . .

that'd be, an amazing, nice Visual script experience, really optimized, and given some time, I could make it as rock - solid, as written code, since this answers all the limitations, of visual script, compared to written code, ALMOST, not entirely, Thanks . . .

like, this . . .

2021-01-13 0519

but, nicer or, such <3

jasperbrooks79 commented 3 years ago

also, having the ability to, drag out an arrow, and make it continue, in another place, would be nice . . <3

2021-01-13 0523

this should, make visual script, as powerful as, written code, and all the other engines, would lose their collective shit, in admiration <3 . . Thanks, also I'd like it, for my own stuff, if possible . .

jasperbrooks79 commented 3 years ago

last, when you select something, in the ' 3d view ' effect, it looks, like this, or so . . .

2021-01-13 0542

like, a halo or, so, since it's in Godot <3 ya ya . .

that'd be, cool, and people could combine the things, to make their own, special, personal theme or, version, maybe not even using the 3D effect, or pick different dithering effects, for the layers . .

<3

note, the 3D effect, of the nodes, ' fade ' smoothly, into ' nothing ', peace, or joy, ya ya ya . .

Simple and, cool, nice . . Thanks . . .

that's how you code, like a boss or, more . .

ps. people could pick any custom theme, colors, mix and, match, as they want or, desire, that's, the goal, make every-one happy and, safe . . <3 <3 . .

Thanks ..

if you need to maintain the 2D text interface, in 3D, you'd just have to make it snap, to pixels, the boxes, in 3D view . . :OO . . not, sure, atm . . <3

jasperbrooks79 commented 3 years ago

ps. as reliable, as a saint or, angel, for God-ot <3 Thanks . .

I'm an autist, I do stuff like this, for some reason, Thanks . . for, fun or, such, my 'hobby' . .

Thanks <3 <3

Smoke . . :OO <3 . . .

also, I can make it even better, given time, the ' effect ' or, what not, need a few weeks, or so . .

2021-01-13 0554

mom, was a nurse, in Denmark, real dedicated and, hard - working, in health - care, social services, or so, and my OCD, has made me a ' bit ' religious or, spiritual, over time . .

Happy . . <3 Thanks . .

Smoke . .

Health - care, Hospitaller knight Visual scripting, if possible . .

<3 . .

jasperbrooks79 commented 3 years ago

last, arrows would have to be turned into 3D splines, instead of 2D splines, then, I think it works, from all angles or, so . .

Thanks . .

( sorry, I'm an autist, have hard OCD, I come up with really weird stuff, or so, hope you, like it, it will be really cool, no matter how you use it, as well . . . <3

you'd have to combine a 2D interface, with a 3D effect, like UI nodes and, 3D nodes, layered, I think, that's all . . :OO . . <3 . .

I'm not that 'religious', mom was just a nurse, and Hospitaller knights, are the same, so it makes sense, or so . . Really cool, to work in a hospital, for other people or, so . . <3 :O . . . Thanks . . .

<3 . . ;DDD <3 . . .

Smoke . .

jasperbrooks79 commented 3 years ago

for it to work, you'd have to make some 2D nodes, then make some under 3D nodes, that ' follow ' the 2D stuff, and then just ' pan ' the 2D layer, for it to be ' pixel - perfect ', not sure . .

it'd look good, in ' orthographic ' view or, so . .

something, like this, but with ' locked ' 2D effect >

2021-01-13 0620

combining 2D rendering, with 3D, in some ' weird ' way, effect might also be cool, in later 2D games or, so cool . .

I guess, you need to create a ' false ' 3D effect, maybe using shaders or, not sure . . Thanks . . .

jasperbrooks79 commented 3 years ago

I think, you have to combine a 2D + 3D parallax effect, but since Godot can already render 3D, in the editor, it should be able to run well, on any modern / current computer, with a 3D card, and if it's too slow, one can just not use it, as well . . .

when it's done, even a 'god' can use visual script, really fun, or such . . Smoke . . .

<3 . . .

jasperbrooks79 commented 3 years ago

last, to make connecting, between layers easier, if one could select on output port and, one input port and, click connect, so it ' just ' works or, so . .

2021-01-13 0659

however, since most connections will be made, in the SAME layers, it will only be needed, for special cases or, such . .

Thanks . . .

also, it might be a cool effect to explore, in games, and make a 3DParallax node, that can move the different layers, acc. to perspective or, orthographic rules, or so <3

I have, OCD, some autism, it's a bit silly or, so . . should look, amazing, when done and, hum like, a Porcshe or, jet - plane, ya ya <3

also, it'd be plain cool, to look at, or use <3 . .

Thanks . . .

jasperbrooks79 commented 3 years ago

last, if like in Bolt, the ' script ' was live converted to, C# or, GDNative, visual script would be amazing, not sure if one can convert to GDNative, from visual script . . but, Bolt sort of, has a method of, converting the visual script into C#, on the fly, that'd be amazing, and make visual script into an un-heard of beast, possibly, the best in the world or, close . . <3

don't know, how much of this is possible, also having the background layers move, in perspective, creates many weird ' things ', because it breaks each layer, in the back, in odd ways . . :(( <3 . . Sucks . . .

<3 . .

jasperbrooks79 commented 3 years ago

if you want to make the effect, for a ParallaxPerspective3D node, you have to place a camera, for each background layer, and render the objects in each layer, and then ' paint ' the image, on the background, like a Viewport texture, might be cool in games, the disadvantage is you have to make each layer separately, and then only have each camera render those layers . .

Skærmbillede (884)

anyway, that proves the effect is possible, for visual script or, so . .

<3 . .

anyway, not sure, might not work <3

I guess you'd have to render each layer, with the background as transparent or, alpha = 0, then combine them, or so . .

might be a cool node, where it's just ' set up ', the drop elements in, but could be slow, or so . . <3

jasperbrooks79 commented 3 years ago

last part is, the ' 2D face ', of boxes in background layers, will have to be turned into textures and, then put on background boxes, since the camera won't pan very far, to each side, it should be efficient . .

when it's done, if possible, it'll blow all other visual script solutions out of the water, like a breeze or, so . .

Thanks :OO . . .

also, if it starts lagging, one can simply go to 2D mode, at that point and, move behind layers, with a button or, toggle, like, maybe an elevator or, not sure :O . . since there will only be 2 - 3 layers, and there can only be so many boxes, on the screen, it should work, even, in real - time . .

should be, pretty cool, rad <3

Thanks . . even Unreal, will be left, in the dust, any other engine, atm . .

also, since each box, is a low amount of pixels, like 100 x 50, or so, the textures should be fast, to generate, on each box . . :O . .

<3 . . .

jasperbrooks79 commented 3 years ago

here's size, of the textures, that need to be generated . . >

Skærmbillede (885)

I THINK, it would run fast <3

jasperbrooks79 commented 3 years ago

to reduce lag, one could only render maybe, 200 pixels to each side, of the screen or, compress the textures, some - what, as the ' dithering ' effect will mean, super - clear details, won't be seen . .

also, the textures could be generated, each time a new box is made, and then store them, on the SSD, or so, for a faster experience, or, they could be generated each time a script is opened, but this would take time, for larger scripts . . the ' textures ' could then be deleted, before exporting and, stored in a single file, like a .zip, or so . .

or, they could be generated when opening each script, if that is fast, or so . .

maybe, the GPU can do some fancy stuff, to render them fast, in parellel like, GPU particles <3

or, they could be rendered in the background, when opening each script, starting with the ones, on screen, not sure . .

nice . .

jasperbrooks79 commented 3 years ago

also, if this works ( it will ), then every-one will want to start with using Godot, as their first game engine, as it's the best experience, around . . might be a nice boost, over Patreon so, you could hire more people, partial or, - full time, every-body wins ya ya . .

<3 . . .

but, it's about making it solid, first, then see if people will, really like it <3

Thanks . . .

jasperbrooks79 commented 3 years ago

you could make a little progress bar, at the bottom or, such . . that shows, when the entire script, is rendered in memory, I assume it will happen fast, but just to be sure, it's all stable, reliable . . . <3

also, while other engines can copy this, it will so clearly from Godot, it will take some time, or so . . <3 . . to make it, look ' their ' version, if possible . .

nice, fun . . .

<3 . . . .

ps. if there are more view-ports, it could start rendering the nodes there, first . . Thanks . . .

<3 . .

jasperbrooks79 commented 3 years ago

anyway, having a way to see what the visual code looks, like in GDScript and, may-be C#, would be enough . .

then, it'd be cool way, to get into code, as well . . <3 <3

jasperbrooks79 commented 3 years ago

the last thing is, since there will be ' layers ', there needs to be a way, to move an entire layer, the ' selected ' one, like the ' entire ' screen, it'd be really nice, thanks . . <3

bluenote10 commented 3 years ago

@jasperbrooks79 I just wanted to make you aware that people watching the repository get an email + GitHub notification every time you add a new message. You are by far dominating my GitHub email notifications these days, and I'm watching many big repositories. On this issue alone ~29 messages in a row. In fact, it is not unlikely that I have never received more emails from anyone else than from you :wink:

Perhaps you could make your proposals more community friendly by

Any attempt to make your proposals more accessible would be highly appreciated :heart:. The energy you put into this is inspiring, and I'm sure there is a lot of value in your proposals, so it would be a pity if they don't get the attention they deserve!

Zireael07 commented 3 years ago

<3 is just a way to write the heart emoji when someone doesn't have the emoji font.

But otherwise very good points, especially the one about editing instead of posting new messages.

jasperbrooks79 commented 3 years ago

I didn't think, you get e-mail notifications, it's not me sending them :(

Sorry, it can be confusing, also, the excitement, and so much . . .

jasperbrooks79 commented 3 years ago

if you did this, Godot's visual script would leave all other engines in the dust, including Unreal . . I'm very close to make a really good, stable visual script theme, looks like this, so far . .

Skærmbillede (895)

and . . Skærmbillede (900)

if I get the option, to customize all these things, it will run like butter on, a grill / BBQ <3

Skærmbillede (901)

if you want the theme, hex for dark color = 121212 . . dark yellow : c2ac1b . .

Skærmbillede (904)

and, for main lines use same yellow color, on the grid, but for ' smaller ' lines, use this . . >>

Skærmbillede (906)

the dark color = 121212 . . was hoping, it could become a new theme, called ' Visual Scripting ' <3 . . Thanks . . .

the font, is from Windows, called SegoeUI Black ( bold ), or so . . segoeuib.ttf . . <3 might be a good idea, for the new ' default ' Godot font, or so . . since, with 4K monitors, it's nice to have a more easily read font, at least . . . Result, is a cool editor, that runs really well, esp. for visual script, ya ya . .

anyway, if I got all these things, as an OPTION, I could make the most crazy, stable visual script experience, that would blow Blueprint, out of the water, like a bomb or, basically hand - grenade . . also, it'd make my work in Godot, much more pain-free, thanks <3 <3 . .

jasperbrooks79 commented 3 years ago

simply made, from this . . <3 2021-01-15 0411

So, there, hope you like, good fun, ya ya . .

<3 . .

stable, as a rock, reliable . . Thanks . . . .

should give everyone a stable, fun, relaxed experience, and if people don't like it, pick some other theme or, customize it, or so . . <3 <3 Thanks . . .

jasperbrooks79 commented 3 years ago

last thing, we need are some pins or, so . . 2021-01-15 0757

2021-01-15 0758

so, we can do this, or so . . 2021-01-15 0759

or, pin notes . . <3 2021-01-15 0800

the should be made in 3D, so when one uses the ' 3D ' view, if possible, they look ' 3D ' . .

that's a, nice scripting experience, real cool <3 Thanks . .

jasperbrooks79 commented 3 years ago

or, so it can look real ' conspiracy ' and, one can connect ' meta ' ideas, on the canvas, for fun <3 <3 2021-01-15 0802

that way, one can ' box ' in ideas, and draw connections, etc . .

then, you'd have a really stable and, fun scripting experience, that all can enjoy, and customize to their precise liking, with the customization options, different color, different, what-ever . . as fun, and simple, as putting ideas, on a pin - board or, so . . .

so, one can drag string, rubber - bands or, yarn between the pins, to make the final look . . it'd be very unique to Godot, and really different from other engines, a ' custom ' solution, for this engine, that the others can't copy, without it being ' clear ' theft or, ' borrowing ' . . With this, visual script would be an amazing thing, to work in, truly next - gen and, hassle - free Thanks . . :OO

and, super - easy to navigate big scripts, bec. the pins and, strings would show, when zoomed out, how it's all connected, makes sense + strings and, pins, post its are fun, and easy to use, for most users, may-be all . . . thanks . . . . <3

jasperbrooks79 commented 3 years ago

last, maybe ability to put ' photos ' on it, like this . . 2021-01-15 0820

so, it feels like solving a crime or, ' solving ' a difficult case or, problems <3

very unique and, should be a fun experience . . also, very different from other engines . . <3

like, a detective or, private citizen solving a ' crime ' or, case . . fun . . :OO and, easy, for all people, I think . . :OO

shame-lessly brilliant and, cool, to use, or so . . Thanks . . . solving a riddle, puzzle or, 'case', when scripting, making it meaningful and, relevant, 'important' ya ya . . <3

it'd make it super - easy to read really large scripts, bec. when you zoom out, you can see the BIG 'picture' and, the small details, at the same time, perfect over-view, no matter the size, almost <3

find the criminal or, bug or, problem, faster, also . . .

<3 . . we're just hunting bugs or, ' bad ' code, that's the difference and, conflicts or, ' contradictions ', in the code graph . . Thanks . . might also, be cool to look at, etc . . ultimate ' bug ' or, error hunter script style, or so . . .

jasperbrooks79 commented 3 years ago

last, if there is a team, with coders and, visual scripters, they'd get asked, by the visual scripters, to use Godot, as it's the best place, to do that, indirectly, it could make Godot more popular, among written coders, so it's win - win, when it's all done and, humming, like a Ferrari or, two . . Thanks . . <3

make these customization options, and I'll make it shine, like a star, at night . . <3

also, really big AA or, AAA studios, that know they'll hire visual thinkers or, ' artists ' will want to start on Godot, so it's easier, when hiring later, etc . . :OO . . Thanks <3

YuriSizov commented 3 years ago

Jasper, please keep proposals to a single concise idea. You've started with a simple and reasonable request to divorce snapping and grid visualization from each other and give them dedicated buttons. You've added that it might be useful to only show horizontal or vertical lines, which is, alright, but questionable.

But then you went on a tangent about other features, unrelated features. I understand your excitement, but those features are now lost to the amount of messages you leave us 🙂 It makes it that much harder to evaluate your proposals like that, and some of them are actually very useful, valuable feedback from a person who actually uses visual scripting. Can you please do me a favor and keep your ideas in short, targeted individual issue tickets? And if you have more to add on the subject of a proposal, please try to edit your original message to explain more details there.

jasperbrooks79 commented 3 years ago

Ok, I'm sorry, I learned 1 day ago, each time I post here, someone gets a new e-mail, didn't know you could subscribe to gitHub, didn't think it was like that, sorry . . <3

Xrayez commented 3 years ago

basically, this . . >>

Skærmbillede (874)

having these settings, maybe in a ' menu ' or, a few buttons or, drop - down buttons, would make visual script canvas ( maybe also visual shaders ), look more appealing, or fun, totally custom, you decide, what's best <3 . . Thanks . . .

This ability was discussed as part of #2662 proposal (via _draw_line() virtual method and whatnot). In theory, all those grid-based classes with snapping could be refactored to use a general-purpose node which could allow customizations like this everywhere.

Regarding the initial proposal as described in the OP, yeah I think it makes sense to have two separate buttons for this, other software I worked with do have those options as separate tools.

YuriSizov commented 2 years ago

Closing this proposal as we have officially discontinued the VisualScript module. It may return in future as an engine extension, then all the feedback can be reevaluated by maintainers of that extension.

Thanks for your suggestion nonetheless!

Zireael07 commented 2 years ago

Actually, this proposal also applies to visual shaders (it's generally a limitation/annoyance of the graph itself)

YuriSizov commented 2 years ago

Please open a new proposal so it's easier to discuss it in the context of visual shaders.