← All ideas
  • Published 15 Jun 2024

3d viewport navigation

Hello, When orbiting with the middle mouse button switching between orbit and pan by clicking and releasing the shift key WITHOUT releasing the the middle mouse button. It's such a small feature but it makes navigating a whole lot smoother.

Thanks

100%

Development Status: Open

Upvote 2 Downvote 0
natan
15 Jun 2024

1 Comment

NinKorr

I have no idea why it's does not work like that by default, it's quite easy to configure via "View3d Rotate|Pan|Zoom Modal" settings. However, modal settings are buggy starting with blender 4.0 =(

So, until it's fixed, there's an alternative solution: export your current keymap from Edit/Preferences/Keymap, then replace corresponding blocks using any text editor, then import it back. Voi la, now you have seamless navigation!

 ("View3D Move Modal",
  {"space_type": 'EMPTY', "region_type": 'WINDOW', "modal": True},
  {"items":
   [("CANCEL", {"type": 'RIGHTMOUSE', "value": 'PRESS', "any": True}, None),
    ("SWITCH_TO_ROTATE", {"type": 'LEFT_SHIFT', "value": 'RELEASE'}, None),
    ("CONFIRM", {"type": 'MIDDLEMOUSE', "value": 'RELEASE', "any": True}, None),
    ],
   },
  ),
 ("View3D Rotate Modal",
  {"space_type": 'EMPTY', "region_type": 'WINDOW', "modal": True},
  {"items":
   [("CANCEL", {"type": 'RIGHTMOUSE', "value": 'PRESS', "any": True}, None),
    ("AXIS_SNAP_ENABLE", {"type": 'LEFT_ALT', "value": 'PRESS', "any": True}, None),
    ("AXIS_SNAP_DISABLE", {"type": 'LEFT_ALT', "value": 'RELEASE', "any": True}, None),
    ("AXIS_SNAP_ENABLE", {"type": 'RIGHT_ALT', "value": 'PRESS', "any": True}, None),
    ("AXIS_SNAP_DISABLE", {"type": 'RIGHT_ALT', "value": 'RELEASE', "any": True}, None),
    ("SWITCH_TO_MOVE", {"type": 'LEFT_SHIFT', "value": 'PRESS'}, None),
    ("SWITCH_TO_ZOOM", {"type": 'LEFT_CTRL', "value": 'PRESS'}, None),
    ("CONFIRM", {"type": 'MIDDLEMOUSE', "value": 'RELEASE'}, None),
    ],
   },
  ),
 ("View3D Zoom Modal",
  {"space_type": 'EMPTY', "region_type": 'WINDOW', "modal": True},
  {"items":
   [("CANCEL", {"type": 'RIGHTMOUSE', "value": 'PRESS', "any": True}, None),
    ("SWITCH_TO_ROTATE", {"type": 'LEFT_CTRL', "value": 'RELEASE'}, None),
    ("CONFIRM", {"type": 'MIDDLEMOUSE', "value": 'RELEASE', "ctrl": True}, None),
    ],
   },
  ),