Maniphest T67071

Rotate drawing canvas (viewport)
Confirmed, NormalTO DO

Assigned To
None
Authored By
Antonio Vazquez (antoniov)
Jul 16 2019, 6:48 PM
Tags
  • BF Blender
  • User Interface
  • Papercut
Subscribers
Ann Zhao (Ann40)
Antonio Vazquez (antoniov)
Brecht Van Lommel (brecht)
Campbell Barton (campbellbarton)
Clément Foucault (fclem)
Daniel Martinez Lara (pepeland)
Jeroen Bakker (jbakker)
9 More Subscribers
Tokens
"Love" token, awarded by Shimoon."Evil Spooky Haunted Tree" token, awarded by AnityEx."Love" token, awarded by ronsn."Love" token, awarded by xorrito."Love" token, awarded by Draise."Love" token, awarded by bnzs.

Description

This is a requested feature for all 2D artists, texture painters and sculptors.
We need a way of rotating the full viewport as other softwares do, because sometimes is easier draw from left to right instead of drawing vertical, especially for lines.

There are some add-ons already for that, but these are partiall solutions and only works in some situations. We need a more general solution.

This is general problem for any mode that need to use a pen for drawing.

Event Timeline

Antonio Vazquez (antoniov) lowered the priority of this task from 90 to Normal.Jul 16 2019, 6:48 PM
Antonio Vazquez (antoniov) created this task.
Antonio Vazquez (antoniov) mentioned this in T63757: Grease Pencil Module.
Antonio Vazquez (antoniov) added subscribers: Clément Foucault (fclem), Jeroen Bakker (jbakker).Jul 16 2019, 6:51 PM

@Clément Foucault (fclem) @Jeroen Bakker (jbakker) I'm sure we will need your help here.

Brecht Van Lommel (brecht) added a subscriber: Brecht Van Lommel (brecht).EditedJul 16 2019, 6:53 PM

Can you explain how this is different than View Roll (shift numpad 4 and 6)? I remember something about being able to do this in camera view.

Antonio Vazquez (antoniov) updated the task description.Jul 16 2019, 6:53 PM
Daniel Martinez Lara (pepeland) added a comment.Jul 16 2019, 9:45 PM

Shift numpad 4 and 6 don´t work with camera view, basically in camera view is where you want to have this feature, you can make some hacks/rig creating drivers with the camera rotation channels to controllers but you don´t want this, just a simple way to rotate the camera view. If Shift numpad 4 and 6 work in camera view will be enough.

Matias Mendiola (mendio) added a comment.Jul 16 2019, 10:04 PM

Although not essential, if Shift-numpad 4 and 6 (in all views) could rotate the view in a more fluid way without steps, it would be more pleasant for the artist/user.
Maybe we can use other shortcut (Ctrl-Shift-numpad 4 and 6) for stepped rotation.

Matias Mendiola (mendio) added a comment.Jul 16 2019, 10:41 PM

And of course incorporate the tilt navigation control for tablet users in the viewport would be a nice addition

Antonio Vazquez (antoniov) added a comment.EditedJul 16 2019, 11:13 PM

About Shift + 4 or Shift + 6, if we solve the problem with camera view, still we have a big issue: Keymap

If you are drawing strokes with a pen, doing texture paint or sculpting, you need leave the pen, and use both hands to rotate.... this is not an option.

We need something like Key+Mouse to rotate viewport and Alt+Key to reset view to default orientation.

Reset orientation is critical for a good workflow also.

Also, it's important to define a key in the left side of the keyboard (the user can change it) because more people is right handed, so he keeps the right hand in the pen and press the rotate key with the left hand.

Antonio Vazquez (antoniov) added a subscriber: William Reynish (billreynish).Jul 16 2019, 11:19 PM
Antonio Vazquez (antoniov) added a project: BF Blender: After Release.Jul 16 2019, 11:32 PM
Antonio Vazquez (antoniov) removed a project: BF Blender: After Release.Jul 16 2019, 11:38 PM
Julien Kaspar (JulienKaspar) added a subscriber: Julien Kaspar (JulienKaspar).Jul 17 2019, 12:33 AM

To give my 2 cents: I find it very easy to roll the view when using trackball navigation instead of turntable. The reason why I would love a more fleshed out feature is definitely for the camera view.
When in the camera view it's one way to just select the camera and start rotating it but there's no way of rolling the view like a canvas without rotating the camera itself.

The tilt navigation button is a nice additon but I don't use those navigation gizmo buttons as a regular user.
One way I could see it is a toggle next to "Lock camera to view"saying: "Lock view to camera"
It's a similar result but the difference would be that instead of going out of camera view when rotating it rolls the view.
This would make it behave more like a canvas in 2D applications.
Exiting the camera view could still be done by hitting numpad 0.

What do you think? @Antonio Vazquez (antoniov) @Matias Mendiola (mendio) @Daniel Martinez Lara (pepeland)

Pablo Dobarro (pablodp606) added a subscriber: Pablo Dobarro (pablodp606).Jul 17 2019, 1:06 AM
Matias Mendiola (mendio) added a comment.Jul 17 2019, 3:56 PM
In T67071#724444, @Antonio Vazquez (antoniov) wrote:

About Shift + 4 or Shift + 6, if we solve the problem with camera view, still we have a big issue: Keymap

Agree @Antonio Vazquez (antoniov) Even so, add Shift + 4 or Shift + 6 functionality to camera view is not a bad decision.

In T67071#724509, @Julien Kaspar (JulienKaspar) wrote:

The tilt navigation button is a nice additon but I don't use those navigation gizmo buttons as a regular user.

Sure, this is just to keep consistency in Blender viewport navigation

In T67071#724509, @Julien Kaspar (JulienKaspar) wrote:

One way I could see it is a toggle next to "Lock camera to view"saying: "Lock view to camera"
It's a similar result but the difference would be that instead of going out of camera view when rotating it rolls the view.
This would make it behave more like a canvas in 2D applications.
Exiting the camera view could still be done by hitting numpad 0.

What do you think? @Antonio Vazquez (antoniov) @Matias Mendiola (mendio) @Daniel Martinez Lara (pepeland)

I think I understand your idea @Julien Kaspar (JulienKaspar) , it's possible and of course there could be many other solutions for Roll/tilt.

IMO what we are looking for here, is something more at the core of the viewport navigation like Ctrl for zoom, Shift to pan, MMB to Orbit.
Find a good key+mouse combination to Roll/Tilt the viewport as Antonio saids, would be the best solution.

Pablo Dobarro (pablodp606) added a comment.Jul 17 2019, 4:13 PM

I think a solution could be storing the viewport navigation configuration per workspace and not globally. I was looking to implement this in the sculpt branch because it is nearly impossible to design a navigation model that fits brush related workflows and navigating large scenes. Maybe the tilt rotation could be the default rotation behavior in the grease pencil workspace, leaving the 3D rotation available through the gizmo or a less accessible shortcut

Antonio Vazquez (antoniov) added a comment.Jul 17 2019, 4:16 PM

@Brecht Van Lommel (brecht) I think this task is more general than GPencil only and we would move as subtask to a more general task an not as subtask of T63757. I don't know what is the main task for that.

@Pablo Dobarro (pablodp606) What is sure is we must not do a solution for sculpt, a solution for Gpencil, etc... we need a solution for all.

Brecht Van Lommel (brecht) added a comment.Jul 17 2019, 5:05 PM

@Antonio Vazquez (antoniov), this could be added to T63726: User Interface Module instead.

Different navigation controls per mode or per workspace would be problematic for muscle memory I think. I'd really only do that as a last resort, if we can't find a better solution.

Matias Mendiola (mendio) added a comment.Jul 17 2019, 5:05 PM
In T67071#725384, @Pablo Dobarro (pablodp606) wrote:

Maybe the tilt rotation could be the default rotation behavior in the grease pencil workspace, leaving the 3D rotation available through the gizmo or a less accessible shortcut

I don't think so, Grease Pencil is not only 2D painting on a flat canvas you have to be able to navigate the 3D space

Matias Mendiola (mendio) added a comment.Jul 17 2019, 5:06 PM
In T67071#725453, @Brecht Van Lommel (brecht) wrote:

@Antonio Vazquez (antoniov), this could be added to T63726: User Interface Module instead.

Different navigation controls per mode or per workspace would be problematic for muscle memory I think. I'd really only do that as a last resort, if we can't find a better solution.

Totally agree

Antonio Vazquez (antoniov) mentioned this in T63726: User Interface Module .Jul 17 2019, 5:07 PM
William Reynish (billreynish) added a comment.Jul 17 2019, 5:10 PM

Agree with the basic sentiment of @Brecht Van Lommel (brecht) and @Matias Mendiola (mendio). We should try and find a generic solution to this.

We could add a gizmo, as already suggested. Finding an unused keyboard + mouse combo is the harder part.

We could implement this feature regardless, and later find a combo that works, or let users set it up for now.

Pablo Dobarro (pablodp606) added a comment.Jul 17 2019, 5:30 PM

I think that options such as tilt rotation or constant zoom speed are not a user preference but a workflow design consideration. When people use different specialized programs for different workflow tasks, they have these navigation models build it, even if they share the fundamental concepts and shortcuts. Texturing programs that are designed to be used with a pen tablet usually have a slower rotation and constant zoom speeds, some of them even use trackball rotation by default, general-purpose 3D suites have faster rotation and variable zoom and panning to navigate scenes with a mouse and programs with a 2D view use tilt rotation. In my opinion, having a workspace designed for a task with an incorrect navigation model is worse than losing a bit of muscle memory when starting a new task.

I'm not sure how to solve this in the UI side, maybe we can add simple options in the workspace tab to control some viewport navigation options such as default tilt/orbit rotation, or use navigation configuration presets. I think that trying to fit architectural visualization, sculpting and 2D drawing, with both mouse and pen tablet support, into a single navigation model with global settings is not going to be the optimal solution for anyone.

But I agree, we can implement this feature first and then experiment with it for a while to see how it fits the navigation system in general.

Antonio Vazquez (antoniov) updated the task description.Jul 28 2019, 11:38 AM
B (bnzs) awarded a token.Aug 26 2019, 8:56 PM
Martin Capitanio (capnm) added a subscriber: Martin Capitanio (capnm).Sep 3 2019, 1:44 PM

I think that options such as tilt rotation or constant zoom speed are not a user preference but a workflow design consideration …

Exactly. I needed the rotation for my workflow, so I made a proof-of-concept add-on (and tested with over 30 happy students):
https://capnm.github.io/b8RollViewport/
But we shouldn't be forced to implement this via the Python API.

Andres Stephens (Draise) awarded a token.Oct 3 2019, 12:00 AM
Lucas (xorrito) added a subscriber: Lucas (xorrito).Oct 3 2019, 8:16 AM

Martin Capitanio's add-on is perfect, this should be in master.

Lucas (xorrito) awarded a token.Oct 3 2019, 8:17 AM
Campbell Barton (campbellbarton) triaged this task as 30 priority.Dec 11 2019, 1:41 PM
Campbell Barton (campbellbarton) added a subscriber: Campbell Barton (campbellbarton).

Marking as incomplete until design is finalized.

ronsn awarded a token.Jan 16 2020, 12:35 AM
ronsn added a subscriber: ronsn.Jan 17 2020, 3:08 AM

This guy explains also why Shift + Num X isn't a good option for artists: https://youtu.be/6Q-w5ZBWIEk?t=1993 :)

AnityEx (AnityEx) awarded a token.Mar 16 2020, 3:59 PM
AnityEx (AnityEx) added a subscriber: AnityEx (AnityEx).
Simon (Shimoon) awarded a token.Jun 4 2020, 3:24 PM
Campbell Barton (campbellbarton) added a project: User Interface.Jun 18 2020, 8:49 AM
Campbell Barton (campbellbarton) moved this task from Backlog to Papercuts Backlog on the User Interface board.
Campbell Barton (campbellbarton) added a project: Papercut.
Philipp Oeser (lichtwerk) changed the task status from Needs Information from User to Confirmed.Jul 6 2020, 9:55 AM
Philipp Oeser (lichtwerk) added a subscriber: Philipp Oeser (lichtwerk).

@Campbell Barton (campbellbarton) : From your actions, I assume this can be confirmed then?

AnityEx (AnityEx) removed a subscriber: AnityEx (AnityEx).Aug 15 2020, 1:22 AM
Ann Zhao (Ann40) added a subscriber: Ann Zhao (Ann40).Jan 15 2021, 10:52 PM

does this get fixed now? any update for the new version?

user1 (user1) added a subscriber: user1 (user1).EditedAug 18 2021, 2:19 PM

If it's all about being able to rotate the canvas in camera view mode, why not just adding a button beneath the camera window? Workflow: (Extra step for sculpting/texture painting: Lock "Camera to View",) touch that new button with the pen and drag to left or right to rotate the camera's local z axis ccw or cw, and drag down to reset. One-hand-solution. Maybe like a pie? Should work also for sculpting/tex.-painting, if you are willing to accept that you have to sculpt/stencil in camera view. You could set passepartout to 0% opaque.