← All ideas
  • Published 27 Apr 2020

StylusUX - pressure sensitive & pen-optimized interface elements & tools [draft]

  • Enhanced user experience with UI elements & tools, optimized for graphics tablet/pen users.
  • StylusUX could be completely switched on/off in the Preferences under the Tablet settings, giving the option for non-tablet/pen users to fully opt-out.
  • However there are alternative ways for mouse users to make the interaction more analogue, this proposal is for them: \

Analog Precision Mode - use the Y dimension of the mouse for the order of magnitude


Pressure Sensitive Sliders & Manipulators

This is the main feature of the proposal.

Problem:
Tweaking a value with its slider, especially the brush size/strength could feel unorganic. Actually quite frequently the rate of the value change with sliders in general (officially Number Fields) isn't the one you want: too fast or too slow. You can use the Shift modifier (Precision Mode/Input), but it is a very binary helper. Thus, tweaking a value with mouse/pen can easily make the UX disturbing, annoying. Additionally it can result runaway situations, like

  • Where is my geometry?
  • Awww this will subdivide the geo with this crazy number, it's better to restart Blender now - before memory saturation...
  • With Shift I still need to move the pointer pixel by pixel:
  • Not enough, not enough, too much...

Solution:
Instead of direct drive, the position reading of the pen would be multiplied by its pressure reading: more pressure means more rapid value change, but if you press gently, you can fine tune. The analogue version of the Shift modifier. Basically the math is:
[pressure] * [movement of the pen] = [value change]

This pressure sensitivity would enhance the interaction with all the applicable interface elements, not just the simple value sliders, but also manipulators, color picker/ball, timeline.
If you've ever used Flame, you know what I mean.

For mouse users: in Fabric Engine (RIP) the multiplier was one axis of the input, the change the other. Similar to the Houdini's value ladder, but much better, no popup, no gaps, but very organic and super simple! The link for that proposal is in the intro (Analog Precision Mode).


Circular Tweak

As an option, instead of left-right (or top-down) movement, you could interact with any value like a knob, turning it around. The circular movement is more fun and better in terms of ergonomics, especially with the pressure sensitive option. (Definitely, I had the opportunity to try the good old 5D Cyborg. Circular tweak avoids the usual problem with the absolute positioning of the tablet: if you reach the edge of the tablet/monitor, you should go back, the mouse cursor wrap doesn't work with pen and goes crazy.)


The latest sculpt/paint/Grease Pencil improvements pushed me to finally share these ideas here (I did in other forums/RFEs of other 3D sw, but no sign for improvements). I think (with no programming skills!) that it might be not too hard to implement these, because ie the sculpt tools already use the pressure values of the pen to multiply brush width/opacity/etc. interactively.


  • Last edit: 27 April 2020

BlenderPress.png

94.4%

Development Status: Open

Upvote 17 Downvote 1
SciVfx
27 Apr 2020

9 Comments

testure

I feel like a rotational motion on a linear control is not intuitive at all. If the UI elements were circles in 'tablet mode' it would make more sense but this seems kinda backwards to me. And I totally get that people would get used to it and maybe even like it once they figured out that it was possible- the problem is discoverability. As a software developer I use car analogies a lot- so the one I'd use for this proposal is this:

Imagine you buy a new car and it looks exactly like cars that you've driven in the past, but when you get in and press the "gas pedal" the car turns right, and the "brake pedal" stops the car. meanwhile, turning the wheel to the left slows the vehicle down and turning to the right accelerates.

Human brains are not wired to immediately grok something so seemingly simple as a rotational input mechanism on a linear input (or vice versa).

1
SciVfx Author

* @testure * What you described with your "gas pedal" analogy is exatcly how the rudder (yaw control) works in aviation. So it's indeed a good example. You, as a programmer have more grounded thinking, and that's good in some situations regarding the UI. However my intention is to leverage the tablet user interaction to the next level, for tablet users. I think the UI of software in general are way too programmer minded. I guess you never used ADSK Flame/Smoke or 5D Cyborg. I miss the UI quirks of those everywhere.

weasel

* @testure * we could have the option thought to change it to rotational motion for specific tools (mesh filter in sculpting for example). people like this guy could then enable that option and enjoy it.

1
SciVfx Author

In 5D Cyborg it was like a small rapid doodling, best with 1-2 finger wide circles, very handy with a pen (and absolutely not with mouse). Image The size was up to you, the algorithm was based more on the amount of circles/angle. Thus actually the radius is also a multiplier (inverted) by it's own as you can fine tune it better with larger radius (the rotation tools in general work in this way). It could be an option for circumfence based behaviour rather than this angle based. Some might find it more intuitive.

alexeyadamitsky

I personally like the idea. It's hard to say if it would feel organic enough but as someone who uses tablet regularly with Blender I would love to see more UX features for it.

1
SciVfx Author

* @Alexey Adamitsky * Thanks for the feedback. Have you ever used Flame/Smoke or 5D Cyborg? In example in Smoke if there is a full 2 hour feature movie edited, if you grab the playhead with full pressure, it sticks to the cursor, so you can grab through the whole with one scrub. If you release the pressure to the minimum, you can go at frame by frame speed. This is very organic for me. Btw Youtube does similar with long videos, where the Y cursor coordinate is the pressure, the timeline zoom in this case. it's worth to try. Similar for non-tablet users would be great. It was in Fabric Engine (RIP) for all the value sliders and was very useful, kind of analogue version of Houdini's value ladder.

alexeyadamitsky

* @SciVfx (xilofoton) * I didn't use the software you mentioned. But I could see how it can be beneficial to tablet users. I also agree that it can be tricky to implement making it obvious for tablet users and not destroy the working UI. I guess UI/UX professional should take a look at these concepts and make a judgement.

Yet in theory it looks interesting and helpful to me.

SciVfx Author

* @Alexey Adamitsky * That's why I mentioned in the intro that it could be a native plugin, and just the ergonomy-fetishist guys like me and perhaps you can switch it on, leaving others totally undisrupted. Then, if people like it and gets some refinements, it might get attention and could spread across the Blender+Tablet subcommunity. Thanks for your interest.

SciVfx Author

The pressure sensitive tweak should be the first, I think it's much easier to implement, based on the existing paint/sculpt stuff. UI developers, are you here, what do you think? How much effort is needed? Could you use the paint/scultpt pressure->opacity code for this?