Closed charlesmlamb closed 2 years ago
Unfortunately, most people expect the scroll wheel to zoom without any modifier keys. I can argue for the panning with the scroll wheel, but I guess some people use it, though it's less universal. In my experience people usually pan by other means, with the drag, not with a scroll wheel.
So if I understand what you want correctly, this suggestion will make it less intuitive for many users. If you have a bad mouse then you have a bad mouse. I would argue most people don't have a broken mouse. But be that as it may, we don't have the ability to use mouse interactions in bindable actions in 3.x, so we can't please everyone anyway and we have to appeal to the majority and what is the most expected behavior.
Well, the problem is, to pan, or drag, one has to press or, click middle-mouse button . . .
The problem is, for most mouse, the middle-mouse button is ALSO, the scroll whell . . . And, it's sort-of been a problem, except for the most expensive mouse, that the combination of scroll-wheel and, middle-mouse buttons means, on often ' accidentally ' scrolls instead, of pressing, sort-of like, a double - button event . . .
I agree, sort-of I haven't really been deep, into the mouse market, for several years . . What I remember, is that only the most expensive mouse, have a scroll that's so good, or well - built, that one has no problem, with accidental scrolling, when one wants to make a middle-mouse button click . . .
I understand full well, that people want the best use, for the middle - mouse button / scroll wheel and, zoom is definitely what I'd use there . . I have no argument with what has been done, my problem is, haven't really followed the mouse - market for years, last I checked, unless you got an expensive mouse, not cheap, or mid - level mouse, you get a middle - mouse / scroll wheel, that tends to ' accidentally ' makes a scroll, when one tries, to click it . . .
So, I have no problem with adding zoom, to middle - mouse scroll, it'd the way I'd have done, problem is, for the users with not top - of - line mouse, it makes panning ( you call, it drag ? ! ) . . Well, every time one wants to drag the canvas, one has to be quite careful or, or the canvas just ' jumps ' in a strange way and, the well UX, gets worse, DESPITE theoretically the middle mouse wheel being zoom, makes a ton, of sense . . .
The problem isn't the idea, problem is the people who did the feature, perhaps didn't have a cheap or, medium - expensive mouse, but a professional mouse, so they missed it . . . .
So, I have zero problem with what's been done, it's amazing we can use the scroll - wheel, to navigate, nice . . The problem is, unless you have a professional ( expensive ) mouse, the scroll-wheel tends to be sort-of ' jittery ' and, well not be the best button . . When I was a hard-core PC guy, only the 150 - 200 dollar mice were so good, this never happened . . For cheap and, mid - range mice, the scroll - wheel kind of sucked . . . That said, I haven't been a hard - core PC guy, for some time, I moved to laptops, that can't be upgraded, and began using consoles ( PS3, etc ), in about 2006, and haven't really been hard-core into PC advancement, since then . . Atm, I have a AMD 5800H + nVidia RTX 3070 laptop, so I'm pretty hard-core, about gear, but I can't really upgrade it, and don't know the details, of PC tech today . . . Don't read PC Magazines, so on, don't really know the standard, of PC tech, just get a laptop with the best features, and don't look back, so . . .
My point here is, for any-one with a cheap or, even mid - range mouse, at least when I followed PC tech hard-core, read all the magazines, was into upgrading everything, the problem is, on everything except a PRO mouse, as in, EXPENSIVE, the scroll wheel almost always sucks . . :OO . .
That isn't a problem, except since panning ( dragging ), now accidentally gets confused, with I think, a vertical scroll jump, on screen, if one accidentally scrolls, when trying to press middle - mouse button and, that makes the UX, even though I agree with the general improvement, and use of the scroll wheel, it sort of destroys another feature, the pan or, drag . . .
So, since zooming is less important, when working in a graph edit, one tends to move, or drag canvas, and rarely use zoom . . My suggestion is, make it so, one zooms with scroll - wheel + SHIFT or, CTRL . . There are already two / three icons, that clearly allows one to zoom, and as some-one who uses Visual script, it's something one uses 2 - 3 % of time, compared to the pan canvas ( drag ) . . .
So, really like the feature, hope you'll take into account, for anything but a PRO, hard - core mouse, the scroll wheel tends to such and, that means the basic UX, has gotten worse, not better . . . It would all be done easier, if the scroll - wheel only zoomed, if one pressed CTRL or, so, to zoom . . :OO Thx . . .
Also, my mouse isn't bad, it's a 30 - 40 dollar Logitech mouse, got it in a super-market, or like, in a local computer store . . . It's not ' cheap ', it's Logitech, quality . . When I was a hard-core PC guy, the only mouse with a rock-solid scroll wheel, that never made mistakes, cost like 200 - 300 dollars, had a track-ball and, for me, that's not what I'm gonna pay, to get a mouse . . .
I'm saying, it was good to add zoom, and use the scroll - wheel but, it's made a new problem, for any-one without an EXPENSIVE, pro mouse, now it's worse to well navigate, a canvas . . . .
Unless mid - range mouse has gotten VASTLY better, since I moved to consoles and, stopped reading about PC's, to get one with a scroll - wheel, that never makes a mistake, cost was about 250 - 300 dollars, for a PRO mouse, with top features . . And, I think for most users, that's not what they have, at least I'd never pay that much, for a mouse, unless it was for well ' architecture ' work or, some professional use, job - related . . .
On a side note, having used Visual script for a while, think I understand how coding works, in Godot, currently trying to learn written code, so I have both systems . . . <3 . . . I sort-of began using Visual script by accident, bec. it looked like a faster way, to get the same job done, but now I see, written code has ' advantages ' :DD <3 <3 . . Thx . . .
Listen, I'm not really looking for problems with pan, or ' drag ' :OO . . .
Not sure, well could one add a setting, to possibly disable mouse scroll wheel zoom or, such . . .
Back in the day, I switched to laptop, to go to school, college . .
The only mouse, that didn't had that scroll - wheel stuff, was like this, the one's they used for hard-core work, like in some company, design or, CAD, more . . .
They had a METAL, custom scroll-wheel, and they sort-of worked . . . Don't know how mouse have progressed, since about 2006, but only pro - gear back then, didn't have mediocre scroll - wheel and, I'm not looking to spend 250 dollars on a mouse, so I can 'drag' or, pan, the canvas, in graph edit . . . .
Honestly, this never happens to me even with a cheap logitech mouse, if it's in a working order.
I 100 % agree, also I began using Visual script bec. I needed to make some games, with important for the public information and, it looked like a short-cut, logical choice . . .
So, I'm not sure why it's called ' drag ', problem is, it sort of makes it weird, to use Visual script . .
Looking at it now, I definitely want to learn both systems and, have no problem, with coding, learned C# when younger, also Turbo Pascal, for university . . . Here's the point, one sees this as a major improvement, nice feature, problem is, it causes problems, with cheap or, mid - range mouse, from when I kept up, before I moved to consoles and, laptops, for school . . . :OO . . .
I'm also trying to do my best, to make Visual script a rock - solid experience, I've been a bit surprised, that it didn't work perhaps, like what I'd expect, from a coding system, I'm sort-of, noob . . Anyway, trying to make it better, so it becomes rock - solid, like a car - door, but atm. this new feature, that one would THINK is really cool, sort-of does the opposite, at least for my Logitech mouse . . :OO . . . Thx . . . .
To fix this, as far as I know, I need to get a professional - grade, 250 dollar mouse and, it kind of sucks, bec. they use those in hard-core CAD work, or perhaps big architecture studios . . :OO
And, I'd rather get a new monitor or, better CPU, atm . . :OO . . . .
It's annoying there's a new feature, that also means, I have to go looking for professional - grade mouse, I actually like those but, atm. making stuff in Godot, is a hobby, program is free and, it's sort-of, I can live with my average, semi - cheap Logitech mouse, and I'd rather get other gear, maybe a pro audio - card, anything . . . I was hoping, maybe one could just well disable this, in well a menu or, so on . . Thx . . . . I have no idea what to do, I can just say UX went from nice to, well sucks, or ' horrible ' . . :OO <3 . . . .
You don't need a 250 dollar mouse. I use a cheap mouse, and it doesn't slip from a middle-click into a scroll. You just need a new mouse if your current one is broken. That said, you can also hold down spacebar and use the left mouse button to drag the editor.
Ahh, thanks . .
lol, don't actually mind getting a mouse, for pro - CAD work, or designing jet - planes, it's just not an upgrade, I'd get to make some hobby video - games . . .
Imo, this is a COOL feature, zoom, on scroll - wheel, I'd have made that, as well . . . It's just, my scroll - wheel works fine, the problem is, the button, middle - mouse click, tends to be a bit ' jittery ' . . It's a quality, and solid mouse, but that one button doesn't work well, bec. it's also, the scroll - wheel . . .
I'll use space-bar and, left, for now . . Wanted to say, this is a logical step, scroll wheel is zoom . . In practice, it causes problems with entry - level mouse and, from my PC days, needed a laptop, to go to the lab . . Only the most expensive mouse, had buttons, that didn't do that . . . .
Plan was, to get 32 GB in my new laptop, not spend it, on an industry - level mouse, CAD - work, NASA, hard-core industrial design, I suppose, architect - stuff or, high - precision equipment . . They're cool, but I'd not get one, unless I had a job, where it mattered, it's sort-of too much, to spend, to make hobby - stuff, sort-of, wasted money, for a hobby, though they're cool, as well . . . :OO . . .
Is this necessary, to use Godot, make some demos or, have fun, not work, at least, for me, atm . . . <3 . . .
Atm, I think that's the only solution, I can think of . . .
SOLVED it . . .
I'll get a mouse, with three buttons, no scroll wheel :OO . . Thx . . .
Ok, they don't make many 3 button mouse, any-more, with a dedicated middle button so, I got my-self a pro CAD mouse <3
I love good stuff, and now I have a pro CAD - level mouse . . . Also, it has more buttons, for faster work-flow, more . . .
Well, finally got a pro - mouse, for CAD - stuff, industrial - grade . . :OO <3 . . . A tad expensive but, sort-of, a long wish, to have the ' best ' gear . . .
So, now I can design a space - shuttle, on my PC <3
It's gonna, happen :OO . . . <3
Or, work in micro-meter precision, it's the ' best ' . . :OO :OO . . . .
I hate it when, programs I use are ' unreliable ' or, ' buggy ' . .
Watched a review, of a guy, shirt said, Elite Autodesk CAD worker . . He looked at it, like it was a bit too much, even for him . . .
Could have gotten 32 GB for my laptop, and a 512 GB SSD, for the money . .
Now, I need a pro - 3D mouse, and I have the best ' gear ' <3 . .
Microsoft, Logitech or, Razer, don't make 3 button mouse, with a dedicated middle button . . <3
Also, the scroll wheel, atm . . Doesn't actually zoom . . .
Scroll - wheel = vertical jump . .
SHIFT + scroll - wheel = horizontal jump . . .
CTRL + scroll - wheel = zoom . .
Well, I'd like to make it, so the scroll - wheel doesn't do those jumps, bec. it's really annoying when you're looking at the screen, and suddenly you're some-where else and, don't know why . . :OO . . . And, the ' drag ' middle - mouse click, moves the canvas, any-way . . . I just can't stand bugs, esp. if it gets chaotic or, ' random ' . . . .
Rather spend 200 dollars on a mouse, than have a ' random ', or weird UX . . <3 . . . .
If you're on Windows, you could use AutoHotkey to map the middle mouse button to some key combination like Ctrl+1 or something.
The only change I see worth doing is: Scroll Wheel - Zoom and then have shift and ctrl + scroll wheel be left-right and up-down like they are now
Now for some Advice: You don't need a 200$ Mouse. You just don't. And From what I've understood here, the Changes you want to make, You're just trying to make the UX less intuitive because of a broken mouse. Just buy a cheap mouse replacement and that's it. If you're worrying about some ~20$ for a mouse, you've got bigger problems. And yes even a cheap mouse like that is perfectly fine to use, I'm using them all the time, and it's been years since I had to replace one.. They Might not have some gimmicks (extra buttons and such) and just your standard LMB-Scroll Wheel-RMB, but those are all you really need for most of the things one does on a PC.
The things you need to worry about the most in terms of budgeting if you need to get a work setup:
The only change I see worth doing is:
Scroll Wheel - Zoom and then have shift and ctrl + scroll wheel be left-right and up-down like they are now
This is how we do it: https://github.com/godotengine/godot/pull/47986 I admit I thought we already cherry-picked it for 3.x and it was a part of 3.4 hence why Jasper was distressed by a change. But now I'm not sure why.
The point is, the two added ' jump vertical distance ' ( scroll-wheel ) and, ' jump horizontal distance ' ( scroll-wheel + SHIFT ) are almost useless . . Zoom is very nice, but the normal 3.3 pan ( ' drag ' ) . . Basically does a better job of, navigating the canvas, than those two ' jump an arbitrary distance ', that are on scroll-wheel and, scroll-wheel + SHIFT . . .
CTRL + scroll - wheel, that is ZOOM, is a nice thing, the other two, a. don't do anything, that pan ( ' drag ' ) doesn't do and, at least for me, my slightly cheap mouse, accidentally does one, or the other, and I have to think, for ½ - 1 second, before trying to ' pan ' . . . Point is, while these things are quite good, and I like them, also idea, in REALITY, they make Visual script 20 - 30 % more frustrating to work with . . .
So, I think the core idea is really good, and it's AMAZING to get even any Visual script feature, I'm a big fan, of the basic idea . . . The problem is, it becomes much more frustrating to USE Visual script, and the two added features, does what pan / ' drag ' already does, but worse . . It adds nothing and, for some users, makes the experience WORSE <3 . .
That was harsh, sorry . . . I'm super - grateful for any feature or, improvement, this one is just a bit of a failure, though it is nice and, in theory would be nice, it a. wrecks an existing feature ( ' pan ' ), for me, and, b. adds nothing, that wasn't already there, ie. pan / ' drag ' was better for navigating a canvas . .
So, big thanks for even adding anything to Visual script, in my experience, it wrecked the entire UX so much, I'd rather spend a sum of money, on a mouse, so I could ' skip ' those two features . . .
ZOOM, CTRL + scroll - wheel = zoom, is a REALLY nice feature . . The other two are redundant and, at least for me, wreck a better feature, sigh . . .
There's just no need, for what the two scroll - wheel buttons do, besides zoom . . . Bec. with ZOOM on the scroll - wheel + 3.3 pan / ' drag ' why would anyone use those things, they add very little, I don't think anyone will use them and, they actually make a good feature, much worse, for at least me . . .
Thanks, sorry for rant, amazing to get ANY Visual script updates, so thanks . . Please reconsider those two features, scroll - wheel = move vertical distance, scroll - wheel + SHIFT = move horizontal distance, bec. who's ever gonna use them and, they wreck the normal pan / ' drag ', for some . . . :OO . .
10 / 10, for any Visual script feature, <3
3 / 10, for those two, well imo . . .
We use plain scroll to zoom everywhere in the editor. It's a universal thing and is unlikely to change. Having a modifier key here confuses people for the most part.
As for the usefulness of panning with the scrollwheel, I am not a proponent, but some people need it for usability and it doesn't really take away from anything, at least not for the most users. And I'm not really sure why you have so much trouble with your mouse when cheap and simple mice don't have this problem. Maybe yours has some uncommon usability features that we cannot test ourselves, I don't know. If you're sure it's not broken, then I have no idea.
I personally only pan by holding spacebar, because that's what I am used to from a lot of other programs.
I also don't like the current control scheme. I don't use graph edits, but the new tile editor has these controls for consistency.
Unfortunately, most people expect the scroll wheel to zoom without any modifier keys.
Do they? Any graphic editor (e.g. GIMP), text editor or web browser has the control scheme proposed here. I've seen zoom with modifiers used only in Godot's 2D editor.
@KoBeWi To me a GraphEdit control, or the 2D editor, or any other plane-based editor that we have is more like a map than a web page or a text document. I definitely do not expect that the scroll on a plane would cause panning instead of zooming. At worst it shouldn't do anything at all, and spacebar with drag should be used for panning (like the Godot editor and most graphic editors already do).
To further expand on my point: on a web page or in a text document I usually only ever have one direction for interactivity: up or down. Zooming is a possible interaction, but not the main one. Hence the scrollwheel is the perfect way to do the panning, it was literally designed for this interaction. And a modifier key can be used for zooming with it. On a plane-based control, however, I expect to have free 2D-space motion, and a scrollwheel is less than ideal for that. At best, you can have a mouse with a wheel that can tilt to the sides to do the horizontal panning, but that's imprecise.
So as the scrollwheel doesn't perform well for 2D movement, something else is used (spacebar + drag for me, but also the middle click), and the scrollwheel is not utilized. At the same time, zooming becomes more important with plane-based editors, especially texture and tilemap editors, canvas item editor, and the graph editor to some degree. And zooming is a 1-directional motion, with obvious forth and back inputs, perfectly mapping to the unutilized scrollwheel.
Edit: Either way we put it, the proper solution is to make mouse actions re-bindable. I think we support that in master
already? Not sure if it can be backported to 3.x
.
mouse actions re-bindable. I think we support that in master already?
No, it was never implemented in the end.
Unfortunately, most people expect the scroll wheel to zoom without any modifier keys.
Do they? Any graphic editor (e.g. GIMP), text editor or web browser has the control scheme proposed here. I've seen zoom with modifiers used only in Godot's 2D editor.
I expect Scroll wheel to zoom without any modifier keys, and plenty of other people do.
Also, you've seen zoom with modifiers used only in Godot's 2D editor, or Haven't? It's a little unclear, because as the sentence stands, it seems to contradict itself
Also, you've seen zoom with modifiers used only in Godot's 2D editor, or Haven't?
I mean Godot is the only software where I've seen it. Maaybe it's like this in Unity too, but I haven't used it in ages, so I don't remember.
To further expand on my point: on a web page or in a text document I usually only ever have one direction for interactivity: up or down. Zooming is a possible interaction, but not the main one. Hence the scrollwheel is the perfect way to do the panning, it was literally designed for this interaction. And a modifier key can be used for zooming with it. On a plane-based control, however, I expect to have free 2D-space motion, and a scrollwheel is less than ideal for that. At best, you can have a mouse with a wheel that can tilt to the sides to do the horizontal panning, but that's imprecise.
idk, in GIMP you have a canvas that you are free to scroll in all directions and wheel is panning. Same in Photoshop IIRC, but it uses Alt for horizontal scrolling instead of Shift. Same in Inkscape. I can't really think of any software that does otherwise.
But I don't mean that 2D editor controls are bad. My comment only referred to sub-editors, especially the tile editor. They have their own canvas, which is used in a different way, so their control scheme should be different. The non-modifier zoom was introduced in https://github.com/godotengine/godot/pull/47986 for consistency with 2D editor, and later in https://github.com/godotengine/godot/pull/50621 for consistency with the former. I think these two don't need to match the 2D editor. Not sure about GraphEdit, but in tileset scrolling is much more common than zooming. So common that panning with dragging is inconvenient.
Well, anyways my main problem is that, as I noted above, the scroll to pan is much more intuitive to me (and more common from my experience) and the Ctrl+Scroll to pan vertically just feels very off to me.
but in tileset scrolling is much more common than zooming. So common that panning with dragging is inconvenient.
Fair enough, you have more experience with tiles than I. But I still think that for graphs those make more sense, as interactions with graphs are reminiscent of a mapping/planning tool. Note that I don't use the visual editors we have, but I use GraphEdits in my own tools all the time.
Well, new mouse solves everything . . .
It's sort of, when one makes a scroll-wheel, that ALSO works like a button, it just has to happen . . One can click it, with a press and, also rotate it, so what happens . . . I suppose that's why most program, don't use middle mouse button anymore, just the scroll wheel . . .
Also, scroll - wheel mouse, is for noobs, pro users don't even have it, it's more reliable, to have three buttons so, my little nerd - cave, got an upgrade :OO . . .
Like, scroll wheel has always been buggy, for use as also, a button . . So, I'm glad my new mouse, I can stop using scroll - wheel, feels more pro <3 . . . .
Never tried a mouse, where the scroll - wheel was ALSO, a button, where it worked reliably . . Good riddance . . I have heard, for really expensive mouse, it works mostly well . . So, nice upgrade <3 . .
Describe the project you are working on
A 2.5D game with barbarians and, lore . . .
Describe the problem or limitation you are having in your project
There have been amazing updates to Visual script, in Godot 3.4 . . Zoom levels are remembered, for the scripts, and also the grid size . . . And, there's now a short-cut, to scroll the canvas, with middle-mouse roll, and CTRL-middle mouse, to pan . . .
These small updates, even if quite small, are really nice, bec. it shows Visual script is getting a little updates and, I think they're sensible updates, and increase QoL, so on . . So, thanks, for the work, also for Visual shaders . . .
My problem is, the order of the middle-mouse click setting . . . If one doesn't hold CTRL, then one scrolls up, and down . . . So, my middle mouse wheel, is a bit ' unsteady ', so if I click middle-mouse, to pan the canvas, I sort of often accidentally 'scroll' by accident . . This makes it sort-of ' difficult ' to use the pan feature, that does the job, of the scroll canvas feature . . .
So, my proposal is, to remove the feature to scroll up-down, and scroll side-left with SHIFT and, keep the CTRL + mouse scroll, to do the zoom, or maybe move that, to SHIFT + scroll - wheel . . One uses pan the canvas almost all the time, and the scroll canvas with mouse-wheel, for a mouse with a well shaky scroll - wheel means, I often scroll the canvas, instead of panning . .
So, so far the updates to Visual script are very nice, but adding the scroll canvas with mouse - wheel, is a bit frustrating, I have to be super - careful to not click the middle-mouse scroll, on the mouse, to not accidentally move the canvas, and the pan one normally uses, works as well, as scroll up - down or, left - right . .
So, amazing features added, it's really getting to be top feature, as a new coder, also visual shaders, it's a big help to get started, learning Godot, etc . . . not sure, if maybe you could remove the scroll canvas with middle - mouse scroll, or SHIFT and, middle - mouse scroll, bec. I'm constantly accidentally scrolling, instead of using the pan feature, that does the same effect, as the added scroll - canvas . . <3
Describe the feature / enhancement and how it helps to overcome the problem or limitation
Well, make it so, perhaps, SHIFT + scroll-wheel zooms the canvas, and for now, remove the scroll canvas, with middle - mouse, it's really nice in theory, but with most mouse, that have a slightly ' jittery ' scroll - wheel, it leads to weird stuff and, one often accidentally does something, one didn't want . . At the end, it becomes frustrating to use the mouse, even if these features have a ton, of potential <3
Describe how your proposal will work, with code, pseudo-code, mock-ups, and/or diagrams
Uhmm, I'm not sure, was hoping someone might look at it, and find a way, of doing this . . . If I had to add a scroll feature, I'd rather have it be hold CTRL and, move mouse . . . If one moves mouse horizontally, the canvas scrolls, in small jumps, horizontally and, etc, and hold CTRL and, move mouse up-down ( not scroll - wheel ), the canvas jumps . .
Well, Visual script has gotten so much better, with just these additions, so I feel it's sort-of a shame, to remove the features . . Was hoping there might be a better way, so we have these features but, they don't cause UX issues . . . Thx . . .
If this enhancement will not be used often, can it be worked around with a few lines of script?
Sigh, I'm never fully sure, what to answer here, I think not <3 . . . .
Is there a reason why this should be core and not an add-on in the asset library?
Well, again, I think so . . . The problem isn't really the feature, imo the problem is, the coder who made it prob. had a really good mouse, my old Logitech mouse, the scroll-wheel is sort-of ' jittery ' and, I tend to make the ' wrong ' move, or scroll the wheel, when I try, to click on it . . . <3
Add : You could also use SHIFT + middle mouse to increase the pan speed, if that's what you want, so one can quickly move over large script, graph edits, visual shaders . . .