WIP: Snapping Redesign: Defaults | Navigation | Drawing | Removals #109062
No reviewers
Labels
No Label
Interest
Alembic
Interest
Animation & Rigging
Interest
Asset Browser
Interest
Asset Browser Project Overview
Interest
Audio
Interest
Automated Testing
Interest
Blender Asset Bundle
Interest
BlendFile
Interest
Collada
Interest
Compatibility
Interest
Compositing
Interest
Core
Interest
Cycles
Interest
Dependency Graph
Interest
Development Management
Interest
EEVEE
Interest
EEVEE & Viewport
Interest
Freestyle
Interest
Geometry Nodes
Interest
Grease Pencil
Interest
ID Management
Interest
Images & Movies
Interest
Import Export
Interest
Line Art
Interest
Masking
Interest
Metal
Interest
Modeling
Interest
Modifiers
Interest
Motion Tracking
Interest
Nodes & Physics
Interest
OpenGL
Interest
Overlay
Interest
Overrides
Interest
Performance
Interest
Physics
Interest
Pipeline, Assets & IO
Interest
Platforms, Builds & Tests
Interest
Python API
Interest
Render & Cycles
Interest
Render Pipeline
Interest
Sculpt, Paint & Texture
Interest
Text Editor
Interest
Translations
Interest
Triaging
Interest
Undo
Interest
USD
Interest
User Interface
Interest
UV Editing
Interest
VFX & Video
Interest
Video Sequencer
Interest
Virtual Reality
Interest
Vulkan
Interest
Wayland
Interest
Workbench
Interest: X11
Legacy
Blender 2.8 Project
Legacy
Milestone 1: Basic, Local Asset Browser
Legacy
OpenGL Error
Meta
Good First Issue
Meta
Papercut
Meta
Retrospective
Meta
Security
Module
Animation & Rigging
Module
Core
Module
Development Management
Module
EEVEE & Viewport
Module
Grease Pencil
Module
Modeling
Module
Nodes & Physics
Module
Pipeline, Assets & IO
Module
Platforms, Builds & Tests
Module
Python API
Module
Render & Cycles
Module
Sculpt, Paint & Texture
Module
Triaging
Module
User Interface
Module
VFX & Video
Platform
FreeBSD
Platform
Linux
Platform
macOS
Platform
Windows
Priority
High
Priority
Low
Priority
Normal
Priority
Unbreak Now!
Status
Archived
Status
Confirmed
Status
Duplicate
Status
Needs Info from Developers
Status
Needs Information from User
Status
Needs Triage
Status
Resolved
Type
Bug
Type
Design
Type
Known Issue
Type
Patch
Type
Report
Type
To Do
No Milestone
No project
No Assignees
3 Participants
Notifications
Due Date
No due date set.
Dependencies
No dependencies set.
Reference: blender/blender#109062
Loading…
Reference in New Issue
No description provided.
Delete Branch "mano-wii/blender:snap_defaults"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
This PR is a step towards applying the changes suggested in #108669.
The changes here are:
Snap Base
symbol has been changed (before it was an X, now it is the same as the target)Snap To
:Vertex
,Edge
,Edge Center
andEdge Perpendicular
Affect
:Move
,Rotate
andScale
Also made another minor change not mentioned in the main task:
How to test:
Snap Base symbol
G
+B
, click on a snapped point orOne of the reasons for this change was to not conflict with any possible symbols used for #107054. These symbols follow a pattern already quite usual in the industry.
Navigation while transforming
G
,R
orS
to move, rotate or scale an object. Mouse Scroll to ZoomNote now that to change the Proportional Edit area you now need to press
Alt
and Scrool with the Mouse.Tools and DragDrop snapping
TODO:
Pivot
is in the same position as theSnap Base
Builds:
https://builder.blender.org/download/patch/PR109062/
@blender-bot package
Package build started. Download here when ready.
The removal of Closest snapping seems like a step backwards to me. I understand the need to remove redundancy, but in this case it doesn't serve us well. It makes the snapping workflow much slower, by forcing one to set a base point most of the time.
Unless an option exists to always ask for a base point before any transformation (which would still be more cumbersome than current behavior) , the removal of closest makes some trivial snapping scenarios unpractical.
For example it makes Scale snapping seem broken and not work by default when using Median , neither in Edit Mode nor in Object Mode.
See this common scenario that used to work well before
I merged the patch #107054. This will make it easier to test and better decide the design for
Snap Base
.@DuarteRamos , good explanation and demonstration.
Removing
Closest
is indeed one of the most controversial points.It is worth remembering that this patch is not the final decision.
Closest
has some drawbacks, confusing usage, different behavior depending on mode...Now it can kind of be replaced by
Snap Base
.Removing it could have the advantage of simplifying the interface and usage.
But I can see that keeping it has its advantages. And
Median
doesn't seem to be the most ideal for Scale and Rotate operations.In fact, removing it might not be the most convenient.
Snapping Redesign: Defaults | Navigation | Drawing | Removalsto WIP: Snapping Redesign: Defaults | Navigation | Drawing | Removals@blender-bot package
Package build started. Download here when ready.
Update:
The Snap Base symbol is now the Snap Target symbol at confirmation time.
@blender-bot package
Package build started. Download here when ready.
I updated the PR so that:
Snap Base
symbol is now the circle when the type (Edge, Vertex or Edge Center) is not defined.Snap Base
inSet Snap Base
mode appears while multi-point snap points (A
key) are being added.@blender-bot package
Package build started. Download here when ready.
@blender-bot package
Package build started. Download here when ready.
Latest build seems to have broken snapping to and from curves.
Setting base point while in curve edit mode also doesn't work for curve points, only meshes or other object types.
@blender-bot package
Package build started. Download here when ready.
Updates:
Closest
option has been brought back (and it's the default one as it works well with Scale and Rotate).For the design I considered what was mentioned in devtalk.
The design mixes two solutions. Symbols and icons.
The choice of icons followed the logic:
@blender-bot package
And another change: rename "Mix" to "Multi" when enabling more than one type of snap.
"Multi" is a more direct name that indicates that more than one option is being enabled, while "Mix" implies that the enabled options are creating a mixed type of snap.
@blender-bot package
Package build started. Download here when ready.
Really like where this is going now, the pictogram icons and the snap indicators overlays really add to the experience.
Curve snapping is now working as intended, and Closest snap is back.
I seen now that the snap source icon is no longer a dedicated shape, but takes on the shape type of the type of snapped geometry.
I really like them and I'd certainly keep them on, but I can see it how some will find them too obtrusive. Risking aggravating the excess of options maybe make them optional as a preference, or a toggle in the 3D View overlay perhaps.
In my display they are considerably smaller that your screen capture, they are hard to see because of size and occlusion from the transform cursor. If possible maybe make them scale along with the Interface > Resolution Scale preference.
Regarding the shapes, I like how you've set up a "hierarchy" based on the constrained degrees of freedom, but maybe we can make some improvements. Some shapes are hard to distinguish (pentagon and circle become the same at small scale), and may feel out of place. Id suggest something like:
3 DOF - No snap set, volume snap
2 DOF - Snap to face (square is vaguely reminiscent of a face)
1 DOF - Snap to an Edge
0 DOF - Snap to a point (Center, Vertex, Empty, X marks the spot)
Snap source - Optionally, when the base point snap is defined and the transform operation starts, use this icon to show the base point different from the rest.
One other thing regarding Navigate during Transform.
It works pretty well so far. In my personal keymap I use a custom Right-Click-Drag to rotate view (orbit).
I had to change all context menu entries to Click (instead of default Press to avoid conflict).
I've also changed View 3D Transform Modal > Cancel from Right-Mouse Press to Right-Mouse Click but could get my custom keymap to work during transform.
It is fine as it is, not really a major concern but I was wondering if it is supported at all, or is it just an accepted limitation of the system.
Should I have added a new entry for my custom Right-Click-Drag anywhere else? I couldn't figure out where.
Thanks for the mockup @DuarteRamos, I liked the suggestion.
I was thinking about something like this:
Notice that the Snap to Edge symbol aligns with the Edge. Center and Perpendicular too.
But I need to test every idea.
Those do look better, especially the edge snap one, I really wasn't a fan of mine.
Will it line up parallel with the edge it is snapping to? Sounds hard to achieve but If it did it would look great.
In the end, after a discussion in PM, the symbols returned to the initial proposal (with some minor changes):
Note that there is a distinction between snap for Loose Points and Edge Points (Endpoints)
@blender-bot package
Package build started. Download here when ready.
Checkout
From your project repository, check out a new branch and test the changes.