Snapping & precision modeling improvements #73993

Open
opened 2020-02-18 22:57:07 +01:00 by Germano Cavalcante · 6 comments

Team
Commissioner: @dfelinto
Project leader: @mano-wii
Project members: @ideasman42

Description
Big picture: Improvement of existing features and implementation of new ones for precision modeling.

Use cases:

  • Architectural works.
  • Interior design.
  • Mechanical design.

Engineer plan:

  • Changes concentrated on bf_editor_transform and bf_editor_mesh.

Work plan

Milestone 1
Minor changes and improvements.
Time estimate: ?

    • Improvement of existing Features.
      • #66420 (Transform: Snap Options: Midpoints and Perpendicular)
      • #66423 (Edit Mesh: Improve 'AutoMerge')
      • #66422 (Transform: Snap to the intersection geometry with the axis constraint)
      • #66426 (Transform: Support snapping for Edge and Vertex Slide)
      • D13310 (UI: Individualize option to use snap by space type)
      • #66424 (Transform: Perform on a base point)
        • Translate
        • Rotate
        • Scale
        • Vert Slide
        • Edge Slide
      • #106008 (Transform: Support navigation)
      • #109387 (Snap: Visualize type by showing different symbols)
      • #69342 (Transform: Make 'Absolute Grid Snapping' a new Snap Mode)
      • #116109 (Transform: Support Snap with options for Snap to Grid - Except Closest)
      • #66427 (Transform: Snap to Grid in Perspective performed at ground level)
      • XXXXX (Transform: Snap to Middle of Faces)
      • XXXXX (Transform: Support snapping for Trackball)
      • XXXXX (Transform: Change the current behavior of the incremental snap)
        • Snapping according to the distance to the snapping point and not to the grid
        • Make the incremental value adjustable
      • #118414 (Shear: enter an angle instead of offset)
      • #73908 (Shear: Support modal axis & user/local space switching)
    • New Features.
      • #75913 (Tools: New tool to add and subtract prismatic volumes)
      • XXXXX (Tools: New tool for "drawing" edges on a specific offset)

Unknown Milestone
Big changes.
Time estimate: ?

    • #66425 (Tools: Support for extended modes: Knife and Bisect)
    • #70865 (Transform: Support for snapping to Lattice objects)
    • #78434 (Transform: Support snapping to faces for objects with DispList (Curve, Surface, Metaballs and Text))
    • #85790 (Transform: Snap support for Grease Pencil objects)
    • #73031 (Transform: snap cursor to selected ignores geometry position with modifiers)
    • D6912 (Transform: Add Live Orientation Mode)
    • XXXXX (Transform: Hot mode switch: Ability to switch snap type during using tools via hotkeys)
    • XXXXX (Transform: Improve interface drawing of the 'Snap With' Closest (drawing boundbox))
    • XXXXX (Transform: Snap to the origin point of objects New snapping option? Only when the origin is visible?)
    • XXXXX (Tools: New tool for creating Arcs)
    • XXXXX (Transform: Modifier key to temporarily disable 'Clipping' from the Mirror modifier)
    • #108409 (Consider the tangent of the Face when 'Align Rotation to Target')

Branch:
https://builder.blender.org/download/patch/PR105941/


Relevant links:

**Team** **Commissioner:** @dfelinto **Project leader:** @mano-wii **Project members:** @ideasman42 **Description** **Big picture:** Improvement of existing features and implementation of new ones for precision modeling. **Use cases**: * Architectural works. * Interior design. * Mechanical design. **Engineer plan:** * Changes concentrated on `bf_editor_transform` and `bf_editor_mesh`. **Work plan** **Milestone 1** *Minor changes and improvements.* Time estimate: `?` * - [ ]*Improvement of existing Features.* * - [x]#66420 (Transform: Snap Options: Midpoints and Perpendicular) * - [x]#66423 (Edit Mesh: Improve 'AutoMerge') * - [x]#66422 (Transform: Snap to the intersection geometry with the axis constraint) * - [x]#66426 (Transform: Support snapping for Edge and Vertex Slide) * - [x][D13310](https://archive.blender.org/developer/D13310) (UI: Individualize option to use snap by space type) * - [x]#66424 (Transform: Perform on a base point) * - [x]Translate * - [x]Rotate * - [x]Scale * - [x]Vert Slide * - [x]Edge Slide * - [x]#106008 (Transform: Support navigation) * - [x]#109387 (Snap: Visualize type by showing different symbols) * - [x]#69342 (Transform: Make 'Absolute Grid Snapping' a new Snap Mode) * - [x]#116109 (Transform: Support `Snap with` options for Snap to Grid - Except Closest) * - [x]#66427 (Transform: Snap to Grid in Perspective performed at ground level) * - [ ]XXXXX (Transform: Snap to Middle of Faces) * - [x]XXXXX (Transform: Support snapping for Trackball) * - [ ]XXXXX (Transform: Change the current behavior of the incremental snap) * - [ ]Snapping according to the distance to the snapping point and not to the grid * - [ ]Make the incremental value adjustable * - [ ]#118414 (Shear: enter an angle instead of offset) * - [ ]#73908 (Shear: Support modal axis & user/local space switching) * - [ ]*New Features.* * - [ ]#75913 (Tools: New tool to add and subtract prismatic volumes) * - [ ]XXXXX (Tools: New tool for "drawing" edges on a specific offset) **Unknown Milestone** *Big changes.* Time estimate: `?` * - [ ]#66425 (Tools: Support for extended modes: Knife and Bisect) * - [ ]#70865 (Transform: Support for snapping to Lattice objects) * - [ ]#78434 (Transform: Support snapping to faces for objects with DispList (Curve, Surface, Metaballs and Text)) * - [ ]#85790 (Transform: Snap support for Grease Pencil objects) * - [ ]#73031 (Transform: snap cursor to selected ignores geometry position with modifiers) * - [ ][D6912](https://archive.blender.org/developer/D6912) (Transform: Add Live Orientation Mode) * - [ ]XXXXX (Transform: Hot mode switch: Ability to switch snap type during using tools via hotkeys) * - [ ]XXXXX (Transform: Improve interface drawing of the 'Snap With' Closest (drawing boundbox)) * - [ ]XXXXX (Transform: Snap to the origin point of objects *New snapping option? Only when the origin is visible?*) * - [ ]XXXXX (Tools: New tool for creating Arcs) * - [ ]XXXXX (Transform: Modifier key to temporarily disable 'Clipping' from the Mirror modifier) * - [ ]#108409 (Consider the tangent of the Face when 'Align Rotation to Target') **Branch**: https://builder.blender.org/download/patch/PR105941/ --- **Relevant links**: * !105941 (WIP: Snapping & precision modeling improvements) * #45212 (Absolute Grid Snapping Corner Cases) * https://blender.community/c/rightclickselect/rmhbbc/
Germano Cavalcante changed title from Precision Modeling Tools to Snapping & precision modeling improvements 2020-02-18 22:58:43 +01:00

A good candidate for this roadmap might be to enable snapping before tool activation (https:*developer.blender.org/T73874#876956). Useful for tools like knife, measure etc. But might also be helpful for transforming using explicit basepoint (https:*developer.blender.org/T66424)

A good candidate for this roadmap might be to enable snapping before tool activation (https:*developer.blender.org/T73874#876956). Useful for tools like knife, measure etc. But might also be helpful for transforming using explicit basepoint (https:*developer.blender.org/T66424)

I am glad this is all being worked on, and thank you to everyone whose working on this, and here are my thoughts 4 what they are worth, i think Transform on a base point (https:*developer.blender.org/T66424) is the most time saving feature of all of these, but i understand if its too much work and needs to be planned for Milestone-2 but until then, I understand @mano-wii had an add-on called "snap utilities"that can do something similar, if its still working it would be nice if the full version of the add-on was included in blender, also there is this patch calledDestructive Extrude (https:*developer.blender.org/D5336) i have tried it on a bone studio build, its nice in certain situations but its not consistent, it would be nice if it was added for review somewhere on this list.. and once again thank you guys 👍👍👍👍👍👍

I am glad this is all being worked on, and thank you to everyone whose working on this, and here are my thoughts 4 what they are worth, i think **Transform on a base point** (https:*developer.blender.org/T66424) is the most time saving feature of all of these, but i understand if its too much work and needs to be planned for **Milestone-2** but until then, I understand @mano-wii had an add-on called **"snap utilities"**that can do something similar, if its still working it would be nice if the full version of the add-on was included in blender, also there is this patch called**Destructive Extrude** (https:*developer.blender.org/D5336) i have tried it on a bone studio build, its nice in certain situations but its not consistent, it would be nice if it was added for review somewhere on this list.. and once again thank you guys 👍👍👍👍👍👍

The problem is that holding some keys during operation turns into some kind of a finger pushups during intensive work.

The problem is that holding some keys during operation turns into some kind of a finger pushups during intensive work.

I looked through these suggestions but not sure if there is one to allow snapping to faces along normals? As a gamedev artist i find current camera based approach not productive. Here is illustration from devtalk from another user.
43e166dbe0f8f52ecae81f48f664ca536a7ff055.jpeg
Simple example is retopology of cylinder. Right one is expected lowpoly, but middle one is current result with Face snap enabled

I looked through these suggestions but not sure if there is one to allow snapping to faces along normals? As a gamedev artist i find current camera based approach not productive. Here is illustration from devtalk from another user. ![43e166dbe0f8f52ecae81f48f664ca536a7ff055.jpeg](https://archive.blender.org/developer/F8742552/43e166dbe0f8f52ecae81f48f664ca536a7ff055.jpeg) Simple example is retopology of cylinder. Right one is expected lowpoly, but middle one is current result with Face snap enabled

In #73993#989870, @zelfit wrote:
I looked through these suggestions but not sure if there is one to allow snapping to faces along normals? As a gamedev artist i find current camera based approach not productive. Here is illustration from devtalk from another user.
43e166dbe0f8f52ecae81f48f664ca536a7ff055.jpeg
Simple example is retopology of cylinder. Right one is expected lowpoly, but middle one is current result with Face snap enabled

Because such kind of snap is not a "snap", it is workflow-dependent tool approach, that is needed for specific case like cylinder retopology.
It have nothing to do with camera based snapping approach and its productivity.
There are some realizations by different people (such as AFX with Quadwrap and Retopoflow authors attempts), and shrinkwrap modifier as well.

> In #73993#989870, @zelfit wrote: > I looked through these suggestions but not sure if there is one to allow snapping to faces along normals? As a gamedev artist i find current camera based approach not productive. Here is illustration from devtalk from another user. > ![43e166dbe0f8f52ecae81f48f664ca536a7ff055.jpeg](https://archive.blender.org/developer/F8742552/43e166dbe0f8f52ecae81f48f664ca536a7ff055.jpeg) > Simple example is retopology of cylinder. Right one is expected lowpoly, but middle one is current result with Face snap enabled Because such kind of snap is not a "snap", it is workflow-dependent tool approach, that is needed for specific case like cylinder retopology. It have nothing to do with camera based snapping approach and its productivity. There are some realizations by different people (such as AFX with Quadwrap and Retopoflow authors attempts), and shrinkwrap modifier as well.

Edge Constraint.mp4
plz guys, Edge Constraint from Maya\3DSMax is veeery useful especially on complex mesh loops.

MACHIN3tools 0.8
https://www.youtube.com/watch?v=9H_gjtJ8J5s

[Edge Constraint.mp4](https://archive.blender.org/developer/F12784542/Edge_Constraint.mp4) plz guys, Edge Constraint from Maya\3DSMax is veeery useful especially on complex mesh loops. MACHIN3tools 0.8 https://www.youtube.com/watch?v=9H_gjtJ8J5s
Philipp Oeser removed the
Interest
Modeling
label 2023-02-09 15:29:20 +01:00
Germano Cavalcante added this to the Modeling project 2023-03-01 19:25:43 +01:00
Germano Cavalcante referenced this issue from a commit 2023-09-27 22:03:26 +02:00
Sign in to join this conversation.
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
6 Participants
Notifications
Due Date
The due date is invalid or out of range. Please use the format 'yyyy-mm-dd'.

No due date set.

Dependencies

No dependencies set.

Reference: blender/blender#73993
No description provided.