Page MenuHome

Modeling: Add "Snap to World Floor" option (WIP)
AbandonedPublic

Authored by Hallam Roberts (MysteryPancake) on Feb 15 2022, 6:40 PM.

Details

Reviewers
None
Summary

This patch adds a new snapping option which allows you to snap objects to the world floor:

BeforeAfter

It has 3 snapping options for each axis:

The options for each axis are "None", "Above", "Center" and "Below":

AboveCenterBelow

Since each axis has a different option, you can center objects along the X and Y axis, while the Z axis is above:

BeforeX = Center, Y = Center, Z = Above

It also means the floor can be any axis you wish:

BeforeAfter

I still have to do Pose mode, but it will be done soon enough.

Diff Detail

Repository
rB Blender
Branch
temp-snapfloor (branched from master)
Build Status
Buildable 20563
Build 20563: arc lint + arc unit

Event Timeline

Hallam Roberts (MysteryPancake) requested review of this revision.Feb 15 2022, 6:40 PM
Hallam Roberts (MysteryPancake) created this revision.
Hallam Roberts (MysteryPancake) retitled this revision from Modeling: Add "Snap to Grid Floor" option to Modeling: Add "Snap to World Floor" option.Feb 15 2022, 6:44 PM
Hallam Roberts (MysteryPancake) edited the summary of this revision. (Show Details)
Hallam Roberts (MysteryPancake) edited the summary of this revision. (Show Details)
Hallam Roberts (MysteryPancake) edited the summary of this revision. (Show Details)
Hallam Roberts (MysteryPancake) edited the summary of this revision. (Show Details)
Hallam Roberts (MysteryPancake) edited the summary of this revision. (Show Details)
Hallam Roberts (MysteryPancake) retitled this revision from Modeling: Add "Snap to World Floor" option to Modeling: Add "Snap to World Floor" option (WIP).

I haven't looked at the patch yet. But while interesting, it's not the way I would like to take to have the "Snap to World Floor" feature.
We have a list of ideas to improve the transform and snapping system. See T73993: Snapping & precision modeling improvements
Snap to the floor can be a strategy of T66427: Snap to Grid in Perspective View performed only at ground level.

Maybe this feature could be another solution for the Align Tools addon:
https://docs.blender.org/manual/en/dev/addons/object/align_tools.html

I haven't looked at the patch yet. But while interesting, it's not the way I would like to take the "Snap to World Floor" feature.
We have a list of ideas to improve the transform and snapping system. See T73993: Snapping & precision modeling improvements
Snap to the floor can be a strategy of T66427: Snap to Grid in Perspective View performed only at ground level.

It's good to see there is a plan toward adding some form of floor snapping to Blender, though I feel this patch meets a different general use case: snapping based on object bounds.

For example, it has the ability to center via bounds along all axes, which is a new way of snapping to the world origin irrespective of object origins:

Snapping to world origin via object originSnapping to world origin via bounds

At the same time, it allows snapping selected vertices to any given axis in Edit Mode:

These features are unique to this idea, and though it's not on the ideas list, it opens up many new possibilities.

T66427: Snap to Grid in Perspective View performed only at ground level seems to simply snap the bottom of objects to the floor, as opposed to any side of the object to any axis, or centering via bounds along any axis.

I see this patch as an extension of "Snap to World Origin" which allows snapping differently per axis. It is equally fundamental of a snapping option, so I wanted to avoid making it an add-on.

All snap options are also in the pie menu (+S):


So it doesn't seem right to leave this new operator out.
We already have 8 snap options in the pie menu. That amount can get in the way a little. Imagine having to add more and more.
Remembering that after adding a new feature, they can hardly be removed.

We have plans like "choosing base point for snap" + "navigation while transform" + "snap to grid floor" that could mitigate this limitation.
I would prefer to work on the strategies already planned before we look for other solutions.

All snap options are also in the pie menu (+S):


So it doesn't seem right to leave this new operator out.
We already have 8 snap options in the pie menu. That amount can get in the way a little. Imagine having to add more and more.
Remembering that after adding a new feature, they can hardly be removed.

We have plans like "choosing base point for snap" + "navigation while transform" + "snap to grid floor" that could mitigate this limitation.
I would prefer to work on the strategies already planned before we look for other solutions.

I understand if you don't want to include this operation, but the pie menu is not the best reason.
It can easily be adjusted to display more than 8 options by adding subcategories ("Selection" and "Cursor" for example), or increasing the limit above 8.

Thanks for elaborating on the plans though, it sounds like many good things are yet to come!

(...)
I understand if you don't want to include this operation, but the pie menu is not the best reason.
It can easily be adjusted to display more than 8 options by adding subcategories ("Selection" and "Cursor" for example), or increasing the limit above 8. (...)

Improving the existing snap UI is something I would be interested to see.