Discussions for "Better snapping and precision modeling"

Hi, you should know that the snapping options I put on my experimental CAD node will work in object mode with a few minor changes, as the selected vertices persist when you switch modes. I am away in Sweden this week, but may be able to show how that works on my mate’s machine, or I can do that when I get back.

I’ll say it again, this node was only to prove possibilities and work out methods, if anyone wants to try writing a patch for Blender, let me know and I will share the code and techniques.

Cheers, Clock.

Edit:

@mano-wii does this mean you can write these options into Blender now? :grin:

7 Likes

what about snapping by percentage ,would that be possible!
perc

16 Likes

Snap Targets and Mouse Motion

The snap target is picked by moving the cursor over it, so based on absolute mouse position. When moving without snapping (or when using increment snapping) it uses relative mouse movement. This means that depending if you intend to snap or not, you need to do a different kind of mouse motion. Things also flicker a lot between the two states while moving the mouse as it finds a snap target or not.

It’s something that trips me up every time I use the snapping tools, but that I haven’t seen talked about. So I’m wondering if there is a discussion about this somewhere, or if others are just not encountering this problem?

Would it make sense to use the pivot point (or base point) position to pick the snap target instead of the mouse position? It would effectively make snapping use relative mouse motion too. I can imagine some downsides. Maybe it’s inconvenient when the base point or pivot is off screen or far away, or it might be less efficient than moving the mouse cursor over the target in some cases.

3 Likes

Only situation where I have found slightly inconsistent or “flickering” snapping behavior is after the mouse wraps around when Continuous Grab is enabled.

Once the cursor goes over the viewport border, if one tries to do geometry snapping like vertex or edge to any visible object, after the mouse wrapped around a 3D View, Blender can no longer detect hovered geometry, even if the transformed object is still in view. “Wrapping it back” restores normal behavior.

BSE_Snapping

2 Likes

Would this project include a Python API component like the experimental snap module or is that not being considered for this project?

Also… congradulations @mano-wii ! :slight_smile:

Too early to say, but probably :slight_smile:

1 Like

I think it will be difficult to have a consensus on this because moving an object off the screen can be useful even with the snap option enabled.

It would be a simple change that can actually help new users.
But old users are already accustomed to the current behavior so they may bother a bit with this change.
So I think it would be difficult to reach a consensus.

Good idea, the middle point could be configurable and snap to percentages of an edge.
I’ll consider this idea :wink:

5 Likes

It would be nice to see pictures and more details of your proposal :wink:

1 Like

Do you refer to setting a key to choose a base point manually instead of always relying on the calculated by Snap Target (in the snapping options)?
This is being discussed.

1 Like

proposal https://blender.community/c/rightclickselect/4jdbbc/

For clarification, will some of these tools come to blender natively? Or will these tools stay as an add-on, and other systems will be developed for native blender.

This for 3D cursor

1 Like

I did some fiddling this past weekend, and I think I’ve found a way to make certain snapping features more accessible by tweaking the keymap.

I added two keymap entries to 3D View → Object Mode → 3D View Tool: Cursor. Both entries call the same operator (transform.translate) with the same key (F13) . The first entry is set to activate on press, with Transform Cursor enabled. The second entry is set to activate on release, without any property tweaks. Here’s a screenshot:

I then added three entries to the Transform Modal Map:

Second_Boxes_Cropped

With Confirm set to double-tap and Add Snap Point set to single-tap, this lets you call the first operator to move the cursor, snap the cursor to things, confirm the cursor translation, and then immediately call the second operator by pressing the same key. If you want to move the cursor without calling the other operator, confirm the movement with a different key (enter, left click, etc). If you want to skip moving the cursor and go straight to moving your selection, double-tap the hotkey without moving your mouse.

Here’s a quick and dirty example video of this setup in action:

There’s a lot of functionality packed into the transform operators, but they’re put together in a way that limits their extensibility. I’d love to see a solution that focuses on fixing those limits, rather than circumventing them.

3 Likes

Here is the simpliest proposal in this thread, I think:

11 Likes

@mano-wii I had created this thread some time ago, and there are video examples of the addon of @1D_Inc can you check it out? they look interesting

The simplest thing I’d like to see added as soon as possible is the snap increment values exposed in the snapping panel.

I’m currently helping someone learn Blender and changing the rotation snap increment is one of the first things they asked about and something that’s been bugging me for a while.

11 Likes

Also as someone that’s always working with backface culling on in environment scenes, snapping not working though backfaces is a papercut that I work around daily.

7 Likes

There are quite a few pictures in earlier posts from me, post 20 onwards. If you like I will put together a pdf of where my thoughts are now, with pictures. I can also upload my CAD node to my GitHub, if you would like to see what I have done so far.

My thoughts are not to have a node, but to have the options from my experimental node as options in Blender for snapping, moving objects and moving/extruding vertices so Blender becomes more CAD friendly to designers like myself.

5 Likes