Improved tool cursors

I’ve hesitated to wade in here, because I don’t really have any answers, don’t want to get piled on, and don’t want it to seem like I am speaking with authority. But I keep watching this discussion and not seeing it gel into anything actionable (yet).

I’m trying to be a detailed as possible here, so please resist the urge to just write “I don’t care about the details, just make it how it used to be” as that won’t help.

As now understood, we changed from having a cursor type per-mode to having one per-tool. That is the only way forward, really. I mean we could literally set it so that if a tool does not set a cursor then fall back to crosshair. But then someone would change the tool cursor and we’d be back here again. So the issue is about setting the right cursor per-tool.

Some people here want crosshair while selecting mesh components, while others prefer the arrow. Some want crosshair while box selecting, while others do not. I once made a patch where users could select their preferred cursor for precision selection verses other types of uses. But while using the Tweak tool, for example, you can do both of these things, yet I can’t see a way of using two different cursors while using that tool. So not sure how to reconcile these things.

One complication to keep in mind is that we now have the ability to create very detailed antialised cursors for Windows or Mac. But for Linux we are stuck with the old-style crappy cursors. So on Windows you might be inclined to select a specialized cursor over the default arrow, but for Linux users that choice isn’t quite as clear since there is a larger degrade in quality between the OS-supplied arrow and our crappy custom ones.

Another complication is the desire for “companion” icons near the cursor. It is easy to think of these as “cursor plus extra thing” but in reality the two together would be single combined cursor. The only alternative, drawing an icon near the cursor position, would be unacceptable because of the lag between the two. In all applications that you have used where you have those extra bits by the cursor it really is just a cursor that includes those bit. Not a problem, but…

Having “companion icons” combined with cursor shape selection explodes that amount of work. It is one thing to make an arrow cursor in 20 variations, each with a different state icon bedside, but the amount of work doubles every time a new pointer variation is added to the mix.

And I’m not certain that part is even thought through enough. Yes, I also use plenty of applications that have them. But they aren’t blender. If we go back to the “Tweak” tool I would would be fine selecting a range of things with a box selection while the cursor looks like an arrow with a little “box” icon beside it. But I don’t think you’d want that little box icon there while you are selecting a single vertex. It would just be in the way and not make sense.

And I also worry that having a “companion icon” that merely indicates the tool is a lost opportunity. I know what tool I have just selected. It might be nicer for any extra icon on the cursor to instead indicate states that are less obvious. So maybe the selection mode (new, extend, invert, intersect). Or perhaps other hidden states like whether you are selecting “through” hidden geometry or not.

So again, the above wall of text should not be taken as discouragement, just random thoughts.

4 Likes