Tools: Per-tool Todo List
Open, NormalPublic

Tokens
"Love" token, awarded by dpdp."Love" token, awarded by Jaydead."Love" token, awarded by A.Lex_3D."Love" token, awarded by dark999."100" token, awarded by craig_jones."Love" token, awarded by TheRedWaxPolice."Love" token, awarded by amonpaike."Love" token, awarded by manitwo."Love" token, awarded by billreynish."Love" token, awarded by Scaredyfish."Love" token, awarded by lcs_cavalheiro."Love" token, awarded by DotBow."Love" token, awarded by xrg."Love" token, awarded by razgriz286.
Authored By

Description

The new unified toolbar and gizmo system in Blender 2.8 will make Blender more powerful, and allow us to reach new audiences.

However, to make this tool system successful, we must follow through and do a good job of actually implementing each tool, to make sure it works as expected, in a consistent and sensible way.

Here's a todo list which explains for each tool, what needs to be changed to make them work well.

Order of importance:

Very Important - needs to be addressed in order for the system to be in a workable state
Somewhat Important - We really should add these features before we ship
Less Important - things that would be nice to add, which would make tools feel better, or give them more capabilities
? Incomplete - Tasks needing more details before implementing.

General tools

  • This goes for any tool with a Gizmo: Currently they break, or don't work at all, when you disable Overlays. You can't even drag inside the viewport to move objects around, which should work even when the Gizmo is disabled. There are a few ways we could solve this, here's my suggestion:
    • First, the types of gizmos that are invisible and cover the whole viewport to grab mouse input are not actually Gizmos from a user point of view. That is just an implementation detail and it could just as well have been implemented without using the Gizmo system. So, these types of Gizmos should never be disabled, even if you turn Gizmos off.
    • Second, I think we should not include tool Gizmos as part of the Overlays. Disabling all Overlays should not make them go away, because it makes it impossible to use many tools. Instead, for any tool that has a gizmo which makes sense to be able to turn off, we can have a gizmo toggle inside the tool settings, rather than the Overlays.
  • Support Undo for tweak gizmos. Currently, the user may have performed many adjustments using adjustment gizmos, but if the user performs one undo, everything is lost.

Transform

  • Add tool settings option to chose what happens when you drag inside the viewport. The enum can be either Move, Rotate, Scale or Nothing.

Move

  • Currently, distances are not well communicated while dragging, only the axis. We can make it much clearer how far you've moved your item, like so:

  • Q: should this only be displayed when dragging on an axis? ~ ideasman42.
  • A: Yes, only when dragging on one axis ~ billreynish
  • Comment: This seems weak, What if you constrain to a plane for eg and want's to see the distance. It makes it look as if the feature is missing. I think we should not be exposing details *sometimes* in cases when it's hard to know if the information will be useful, the information is already there in the header, we could make that more prominent or label it more clearly. I think if the header status is not something users can rely on to show helpful information, we should try improve that instead of sometimes duplicating the information around. ~ ideasman42
    • Suggestions:
      • Only show the distance when using the manipulator, but always show it, not depending on constraint axis.
      • Improve header display, eg: replace (1.234) with (distance: 1.234) (possibly other tweaks to make the information stand out more, the way it's just a small number at the end of everything else is quite easy to ignore).
  • Answer: for moving on one axis, we already display a line representing the axis. All that is needed here is to make the part of the line that represents the delta movement to become different from the rest of the line. We can keep the number value in the header, but the axis line makes it impossible to see how far you moved along the line. Makes sense? ~ Billreynish
  • Showing a line or not is a separate issue to optionally showing distance text in some situations and not others. In general I think we could have a separate design task for transform system, unless changes are obvious improvements or regressions from 2.7x, we can skip them for the initial 2.8x release (note, visual indication of delta-line I'd consider obvious improvement), other changes I'd rather have own design task for and do them as part of more general transform system usability improvements ~ ideasman42
  • The Redo panel for moving items should be simplified. The Constraint Axis controls should be hidden, and the Move X, Y, Z controls should always work. The current UI here is annoying to use and takes up lots of space.

  • The tool has 3 names: 'Grab' (in the toolbar), 'Move' (inside the Redo panel), and 'Translate' (Redo panel title). It should have one name. 'Move' is the most universally understood word, that everyone will understand. The other two are ambiguous and unclear.

Rotate

  • Use more communicative pie design, so users can better judge how far they rotated, while dragging handles
  • Add visual tick marks while holding Ctrl, so that users get visual feedback on snapping:

  • The Redo panel for rotating items should be simplified. The Constraint Axis controls should be hidden, and the Rotate X, Y, Z controls should always work.

Scale

  • The Redo panel for scaling items should be simplified. The Constraint Axis controls should be hidden, and the Scale X, Y, Z controls should always work. The current UI here is annoying to use and takes up lots of space.

Scale Cage

  • The Gizmo cage doesn't appear most of the time at all when using this tool. Should always show the cage when something is selected. This seems like a bug. It seems to always work when two objects are selected. rBf34a2af4b37cc9f90ab5739f97796d3e6a273def
  • Dragging in the viewport outside the Guzmo should uniformly scale the selected item

3D Cursor

  • Add button in the Tool Settings to reset the Cursor position to 0,0,0
  • Add XYZ controls for 3D Cursor next to it
  • Q: Both of these are incompatible with 3D view-port spesific local view cursor, how to solve? ~ ideasman42
  • A: This would only affect the 'real' scene 3D Cursor, not the local view 3D Cursor. I think that's acceptable ~ billreynish

Circle Select

  • Add Radius control to the tool settings, to set the radius of the select brush
  • There should be a brush circle size preview cursor always visible, just like a paint tool. Currently the radius is only visible while painting your selection.
  • Add options to create new selections, add to selections or subtract from selections
  • Rename to 'Paint Selection'. 'Circle Select' is simply not correctly descriptive of what the tool does.

Add Create Object tools

  • From Object Mode, users should be able to drag out meshes in the scene, with a two-step process. Once to set the base size and second, to set the height.
  • Plane: The user can drag out to create the plane. From here, the user can drag the blue ring to increase the scale. The red and green handles can be used to scale the primitive in X and Y.
  • Cube: The user can drag out the cube to create it. From here, the user can scale it along X and Y.
  • UV Sphere & ICO Sphere: The user can drag out to create the sphere. From here, the user can drag the blue ring to increase the scale. The red and green handles can be used to scale the primitive in X and Y.
  • Cylinder: The user can drag out to create the cylinder. From here, the user can drag the blue ring to increase the base size. The blue handle can be used to set the height. The red and green handles can be used to scale the primitive in X and Y.
  • Cone: The user can drag out to create the cone. From here, the user can drag the blue ring to increase the base size. The blue handle can be used to set the height. The red and green handles can be used to scale the primitive in X and Y.
  • Torus: The user can drag out to create the torus. From here, the user can drag the blue ring to increase the major radius size. The white handle can be used to set the minor radius size.

Annotation

  • Add back option to select the active Annotation in the tool settings

  • Q: Previously this was changing the material of what you had already drawn. Where as this should set the annotation that is drawn onto next, not change the current annotation, right? ~ ideasman42
  • A: Correct, this popup should show a list of the annotation layers, affecting the next strokes. This was, afaik already how it worked before it was removed. That commit just needs to be reversed so it comes back. ~ billreynish

Mesh Edit Mode tools

Extrude

  • Add option to only show the Normal direction of the Extrude Gizmo, enabled by default.
    • In the tool settings, the user is presented with this enum: [Normal : Orientation]. When set to Normal, only show Normal direction. When set to Orientation, the user sees three axes, aligned to whichever Orientation is set in the viewport header.

By default we set the Extrude tool to only display the Normal direction:

After initial extrusion, users can use arrow to adjust it:

If the user sets the tool to use the Scene Orientation, all the axes are displayed, the direction of which follow the Orientation setting:

  • Currently, the Extrude Gizmo is HUGE, and often goes off screen. As you can see here, the Extrude Gizmo is almost twice the size of the regular gizmos. We should make it the same size:
  • The Extrude Gizmo handles don't actually work at all. Should be fixed. Fixed rB49fa58e330
  • We could combine Extrude Region, Extrude Individual, Extrude Along Normals into same tool, and simply add a tool setting to switch between the various extrusion methods
  • We could add a setting to generate divisions along the extrusion

Loop Cut

  • Here it would be a nice improvement to make it so you can create cuts anywhere along a loop, not just in the center. This would be a tool setting.

Spin/Lathe

  • Should allow dragging to change amount
  • We should add the new gizmo design
  • The gizmo should respect the Scene orientation
  • Just like the transform gizmos, dragging anywhere performs a spin along the view (just like now), but dragging on the manipulator performs a spin on that axis
  • Just like the transform gizmos, the manipulator should be visible immediately, not only *after* the initial spin operation.

Updated Gizmo design, here:

When enabling the Spin tool, we present an option in the Tool Settings for the X, Y or Z axis.

1: Before executing the Spin tool, the user is presented with a widget like so:

This looks like the Extrude widget, but is curved, and shows a dotted line to the 3D Cursor, to indicate the center point.

When the user hovers over this line, we see the entire circle visualized, like so:

After the initial spin step, the user is then able to adjust the result using the gizmo, like so:

  • The Angle can be adjusted with the large disk.
  • The axis can be adjusted with the rotation handles.
  • The center can be adjusted using the arrows
  • To start a new spin operation, the user can use the + button, consistent with the Extrude tool, or select a different element.

Note: What makes the Spin tool & widget powerful and useful, is the ability to interactively adjust the result. This already works for the angle, but the ability to adjust the center point and axis is also crucial. Making the gizmo a redo-gizmo is what will make this work. Mostly, you would not want to keep using Spin on the same selection, so it can reset itself when you make a new selection or hit the + if you really want to.

Randomize

Smooth

Shear

  • We should add Shear to the toolbar
  • Click and drag to increase amount
  • Shear should have a manipulator to shear in any direction, the orientation on which is controlled by the Orientation setting, just like the Transform manipulators. Dragging any of the handles shears in that direction:

  • Just like the transform gizmos, the manipulator should be visible immediately, not only *after* the initial shear operation.
  • Add Tool Setting to switch between horizontal and vertical shearing

To Sphere

  • We should add To Sphere to the toolbar
  • Click and drag to increase amount
  • The tool should have a way to change the center point via a manipulator.

Note: The initial center point should follow whatever is set in the Pivot dropdown. If the user wants to use the 3D Cursor as a center point, they can select the 3D CUrsor from here. When the user has engaged the To Sphere tool, we display a redo-gizmo which lets users interactively adjust the center point and see the result update live.

Bisect

  • We should add an updated Gizmo here


    Comment: should this gizmo's plane be an outline (design looks opaque), also, it's quite different to the previous design, see: T54661 ~ ideasman42

    Answer: This design is more similar to what we have now, but makes it easier to rotate and move the bisect plane along specific axes. The blue plane here should be transparent, not opaque. ~ billreynish
  • We should add these options to the tool settings: Fill, Clear Outer, Clear Inner. Otherwise, users have to keep setting these settings for every bisect operation.
  • We should add an option called 'Only Selected' just like the Knife tool. Currently it always only applies to selected elements, but that makes many successive bisects annoying because you constantly have to select all.

Bend

  • We should add the Bend tool to the toolbar
  • Should work with drag-release paradigm, similar to other tools in the toolbar
  • We should introduce an interactive Gizmo for this tool, such as this:
  • Just like the transform gizmos, the manipulator should be visible immediately, not only *after* the initial bend operation.

Curve Edit tools

Extrude

  • Add Extrude tool to Curve Edit toolbar
  • Add Extrude manipulator when using this tool

Shrink/Fatten

  • Add Shrink/Fatten tool to Curve Edit toolbar

Randomize

  • Add Randomize tool to Curve Edit toolbar

Tilt

  • Add Tilt tool to Curve Edit toolbar

Armature Edit tools

Extrude

  • This tool is currently the same as Extrude to Cursor. This should not be the case.
  • Extrude should be made to work like the Mesh Edit Extrude tool, with a visual Gizmo to perform extrusions.

Grease Pencil Edit tools

Shear

  • The tool should execute on release, so when you click and drag, it stops. Currently you need to click an extra time, which is inconsistent and annoying.
  • Add Tool Setting to switch between horizontal and vertical shearing
  • Shear should have a manipulator to shear in any direction, the orientation on which is controlled by the Orientation setting, just like the Transform manipulators. Dragging any of the handles shears in that direction.

To Sphere

  • The tool should execute on release, so when you click and drag, it stops. Currently you need to click an extra time

Mirror

  • Mirror is not an interactive tool, and should be removed from the toolbar. We can make sure it's available in the menus instead.

Hair Edit Tools

  • Remove 'None' tool from toolbar
  • A default tool (probably Comb tool) should be enabled by default when switching to Hair mode.

Hair Comb

  • Remove the Brush popover, which only has the same settings as are already in the top bar
  • Add Deflect Emitter & Distance to Tool Settings. These are currently buried in the Options popover, but there's plenty of room to put them directly in the tool settings

Hair Add

  • Add Interpolate, Steps & Keys to Tool Settings. These are currently buried in the Options popover, but there's plenty of room to put them directly in the tool settings

Sculpt Mode

  • General Note: We should not allow changing tools via the Tool Settings popup. Currently this makes things go weird - it shows different icons and makes things go out of sync in strange, ugly ways. (Glitches should be fixed, we can't disable brush changing entirely, any other glitches should be reported as bugs ~ ideasman42).
  • The toolbar for Sculpt Mode should be expanded more. Too many of the most common tools are nested and thus not discoverable. We should promote Flatten and Inflate sculpt tools to become top level-accesible tools.
  • A default tool (probably Draw tool) should be enabled by default when switching to Sculpt mode.

Border Mask

  • When this tool is selected, it currently shows the wrong tool settings which affect the brushes, not this tool. These should not be visible when this tool is active.
  • We should add a tool setting to add/remove the mask as you drag. Currently, the only way to remove from mask, is very hidden: You drag with RMB. This could become more consistent and more discoverable if we added the same Add/Remove buttons as with other Sculpt tools

Border Hide

  • When this tool is selected, it currently shows the wrong tool settings which affect the brushes, not this tool. These should not be visible when this tool is active.
  • Add button in tool settings to unhide
  • We should add a tool setting to add/remove the mask as you drag. Currently, the only way to remove from border hide, is very hidden: You drag with RMB. This could become more consistent and more discoverable if we added the same Add/Remove buttons as with other Sculpt tools

Vertex Paint / Weight Paint Modes

  • Select tool should only be visible when Face Selection is turned on.
  • A default tool (probably Draw tool) should be enabled by default when switching to Vertex Paint / Weight Paint modes.

UV Editor

Currently, the UV editor has a bunch of confusingly overlapping tool-modes. This should all be simplified via the new active tools system.

  • Remove old tools panels
  • Add 2D Cursor tool to toolbar
  • Add Grab tool to the toolbar
  • Add Rotate tool to the toolbar
  • Add Scale tool to the toolbar
  • Add Scale Cage tool to the toolbar
  • Make the Transform Scale Cage Gizmo only appear when Scale Cage transform tool is used
  • Add Shear tool to the toolbar
  • Fix Annotate tool in the toolbar, so that it actually works
  • Add UV Sculpt tools to the toolbar - (also add Radius, Strength and the other relevant settings to the top settings )
    • Sculpt Grab
    • Sculpt Pinch
    • Sculpt Relax

When in the Image Editor Paint Mode, we should follow the design of the Paint modes in the 3D View, meaning;

  • Tool Settings should be in top bar
  • Toolbar should work the same as in 3D View

Details

Type
Design
There are a very large number of changes, so older changes are hidden. Show Older Changes

Texture Paint Mode - same as Sculpt mode, need a brush to be default instead of the cursor in the 2d and 3d view.

Craig Jones: Yes, this is actually a general problem, not specific to Sculpt mode.

Rip Edge and Rip Region are inappropriate names and use inappropriate icons for operators called Rip Vertices in Vertices menu.

Both can be used on only one vertex or a selection of edges. And both will not work with a selection of faces.
Both icons are showing behaviors that will be obtained by using Rip Region. Rip Edge produce Ngons and never cut the surface.

Those operators should have a name coherent with names in menu.
I suggest to rename them as is :
Rip Region -> Rip
Rip Edge -> Rip & Extend

At least, Rip Edge icon should reflect behavior of corresponding tool, not behavior of another one. It should show an Ngon.

ronan: This is true. We should change that, as you say

Exactly, it is adequate. It should remove confusion.

@Campbell Barton (campbellbarton) Can you delete my account completely and without mercy
I have nothing to do here.

"We could combine Extrude Region, Extrude Individual, Extrude Along Normals into same tool, and simply add a tool setting to switch between the various extrusion methods"

Yes, yes, yes please yes!

Reduces UI clutter by removing multiple tools and replacing it by one, and at the same times makes it easier and faster to contextually switch between desired results. Simply a Win/Win scenario.