Blender 2.8 Industry Standard Keymap
Open, NormalPublic

Tokens
"Love" token, awarded by fiendish55."Love" token, awarded by undo."Like" token, awarded by Orv510."Love" token, awarded by juancahf."Burninate" token, awarded by shader."Love" token, awarded by sebastianmroy."Love" token, awarded by sopranoo."Love" token, awarded by zazizizou."Love" token, awarded by razgriz286."Love" token, awarded by jpthrash."Love" token, awarded by julperado."Love" token, awarded by Okavango."Love" token, awarded by johnsyed."Love" token, awarded by 0o00o0oo."Like" token, awarded by duarteframos.
Authored By

Description

ATTENTION: This will not replace blender's default keymap. This is an alternative keymap that will make blender behave more like industry standard apps.

This describes design of a new input map (keymap from now on) variant for Blender 2.8.

Motivation

In the past, we've included various alternative keymaps with Blender. While it has been of some use, we've had a few major problems:

  • The old keymaps couldn't properly mimic the way other apps use tools
  • The old keymaps were not well maintained. There were too many.
  • We used to include options for the Blender keymap, such as LMB select, which never worked properly for all tools and modes

In Blender 2.8, we want to improve this, by making one 'Industry Standard' keymap that we can keep well maintained, and in working order.

This new keymap will make switching back and forth between industry standard apps easier, and will provide a lower barrier to entry for migrating to Blender.


Note: Blender 2.8 includes various new features, such as Active Tools, which makes it possible to work a lot more like industry standard apps, if we choose. This enables us to mimic industry standard input more closely than we could in the past.


Approach

  • It will not replace the default keymap in Blender - this is an alternative keymap for users who use Blender as part of their pipeline, in conjunction with industry standard apps.
  • It should be a minimal, maintainable keymap. Not every command needs to be mapped to a shortcut like the Blender default keymap
  • The design of this keymap is based on an average of default input mapping layouts used in the mainstream computer graphics software

Who is this keymap for?

This keymap is for people who are already accustomed to other 3D packages, and who wish to use Blender as part of their pipeline, or who wish to switch to Blender outright. It is not aimed at existing Blender users, although they are free to use it if they wish.

Tie Breaker App

Not all apps in the 3D industry agree on which shortcuts to use. In cases where no standard exists, we want to rely on a 'tie breaker' app which decides the hotkey. When the tie-breaker app has no hotkey set, we can use one of the other apps' hotkeys then.

These are the tie-breaker apps we have chosen:

Modeling & AnimationMaya
Painting & SculptingZbrush

Overview

This spreadsheet gives clear insight into which keys are used in which apps.

3Ds MaxMayaCinema 4DModoHoudiniUnreal EngineUnityWinner
Viewport navigation
OrbitAlt+MMBAlt+LMBAlt+LMBAlt+LMBAlt+LMBAlt+LMBAlt+LMBAlt+LMBDONE
PanMMBAlt+MMBAlt+MMBAlt+Shift+LMBAlt+MMBAlt+MMBAlt+MMBAlt+MMBDONE
ZoomCtrl+Alt+MMBAlt+RMBAlt+RMBCtrl+Alt+LMBAlt+RMBAlt+RMBAlt+RMBAlt+RMBDONE
Center on selectionZFOShift+ASpace+GFFFDONE
Switch viewportsL, F, BSpaceF1-F5Ctrl+SpaceSpace+1-5Alt+J, Alt+K, Alt+HN/A ?
Selection
Select mode/toolQQN/AQSN/AN/AQDONE
SelectLMBLMBLMBLMBLMBLMBLMBLMBDONE
Deselect???Click in empty spaceClick in empty space????????????Click in empty space
Add to selectionCtrl+LMBShift+LMBShift+LMBShift+LMBShift+LMBShift+LMBShift+LMBShift+LMBDONE
Subtract from selectionAlt+LMBCtrl+LMBCtrl+LMBCtrl+LMBCtrl+LMBCtrl+LMBCtrl+LMBCtrl+LMBDONE
Box selectDrag LMBDrag LMBDrag LMBDrag LMBDrag LMBDrag LMBDrag LMBDrag LMBDONE
Add to box selectionCtrl+Drag LMBShift+Drag LMBShift+Drag LMBDrag LMBShift+Drag LMBShift+Drag LMBShift+Drag LMBShift+Drag LMB
Subtract from box selectionAlt+Drag LMBCtrl+Drag LMBCtrl+Drag LMBCtrl+Drag LMBCtrl+Drag LMBCtrl+Drag LMBCtrl+Drag LMBCtrl+Drag LMB
Loop Select???Double-click edgeDouble-click edge????????????Double-click edgeDONE
Menus
Context Sensitive CommandsRMBRMBRMBRMBRMBRMBRMBRMBDONE
Transform tools
MoveWWEWTWWWDONE
RotateEEREREEEDONE
ScaleRRTRERRRDONE
Mesh Editing
Mesh element modes1-5F9-F11Enter1-31-4N/AN/A1-9DONE - needs operator to go directly to Vert, Edge, Face Mode
ExtrudeShift+ECtrl+EDShift+XN/AN/AN/ACtrl+EDONE
InsetN/AN/AiB (bevel mode)N/AN/AN/AIDONE
Loop cutCtrl+Shift+EN/AK (knife tool mode)Alt+CN/AN/AN/AAlt+CDONE
BevelCtrl+Shift+BN/AM+SBN/AN/AN/ABDONE
Animation
Play/Pause/Alt+VF6/Up ArrowN/AN/ASpaceDONE
Set KeyframeKSSK SDONE

More tools and features could be added here

SculptingZbrushMudbox3D CoatModoWinner
Resize BrushSB+click and drag?????????DONE
IntensityUM+click and drag?????????DONE
Blob tool???????????????
Smooth tool???Hold shift or 2(default)?????????
Snake Hook tool???????????????
Grab tool???????????????
Clay tool???????????????
Etc???????????????

More tools and features could be added here

Texture PaintingZbrushMudbox3D CoatModoMariSubstance PainterWinner
Resize BrushS???ctrl+RMB+drag left/right???R+any Mouse buttonctrl+RMBDONE
IntensityU????????????ctrl+LMB+drag left/rightDONE
Paint tool????????????P1
Eraser Tool????????????E2
colour pickerC???V???CP
Display next channel???????????????C
Display previous channel???????????????shift+C
Show Material???????????????M
SymmetryX???S??????L
wireview??????W???shift+W???
Swap foreground and background colorsV?????????XL
rotate environment??????shift +LMB+drag left/right??????shift+RMB
Set Clone tool source????????????ctrlctrl+LMB
Stencil rotate????????????ctrl+LMBS+LMB
Stencil snap rotate???????????????shift+S+LMB
stencil pan????????????shift+LMBS+MMB
stencil zoom????????????ctrl+shiftS+RMB

More tools and features could be added here

Changes needed in Blender to support this keymap

  • The tool system gizmos currently override all other inout, meaning alt+LMB doesn't work while using a gizmo tool.
  • To properly support LMB-select in Timeline and Dopesheet, we need to add the ability to differentiate between dragging the playhead 'grabber' and dragging inside the editor to box-select.
  • Operators needed to be able to switch directly to Vert, Edge, Face Mode directly from any mode
  • Contextual menu needed for Paint and Sculpt Modes
  • Contextual menu needs more entries to be more useful. Should also include:
    • Curve Edit Mode Handle Type
    • More Mesh Edit commands

Current Issues

  • How to set the hotkeys for inside the active tools, to that I can make it work so clicking on empty area deselects
  • It seems as if tool shortcuts are not set in the keymap?
  • The active tool LMB overrides Alt+LMB for view orbit
  • LMB Select should only apply when using Select tool, otherwise it conflicts with other tools LMB action
  • Cmd needs to be added throughout as alternative to Ctrl

Details

Type
Design
There are a very large number of changes, so older changes are hidden. Show Older Changes

A question: is anyone actually looking at the ergonomics of the various proposed keyboard maps?

This is wider than just the industry standard keymap so I'm not sure if this is the right thread, but I can't find a clear 'put your Blender 2.8 keyboard map related issues and questions here' thread.

The Blender keymap needs some serious love, as it is full to overflowing. I ask however, to please also or perhaps first, look at the ergonomics (which includes effectiveness and learnability) of a key map and of using a keyboard in combination with a mouse.

It seems to me that the discussion on keyboard maps / shortcut maps is severely missing the viewpoint of ergonomics. A nice example is the proposal for "A to select all / ALT-A to deselect all" (or, in general, Key_X / ALT_Key_X). The argument for having two shortcuts seems to be that "it is in accordance with standard X and therefore should be in Blender" (insert your standard of preference). It seems like adhering to a standard is more important than having something that is fast to use or in line with the Blender function or operation you are accessing at any given point.

Examples of proposals that impact ergonomics:

  • toggle actions are being removed. In many places, separate key combinations for 'toggle on' and 'toggle off' behavior are introduced, like select all/none (A - ALT-A), or opening/closing a menu (TAB, W, Shift_E, SHIFT-S, etc. to open, ESC to close). These actions are, in principle, toggle actions, teat them as such.
  • serial combinations of keyboard and mouse actions are introduced. Especially with the wider use of the pie menu, you need two actions to select/use a function or operation: TAB to open the menu, then slide/click to select a function/operation: 'sequential' combinations (TAB, followed by mouse action) are always slower to use than either a keyboard or a mouse action. To further complicate: given the placement of keys on most computer keyboards, TAB followed by Mouse action is probably not an easy or fast combination for left-handed people.
  • key combinations are introduced that do not match or relate to the functions they operate. An example of this is W/E/R for Move/Rotate/Scale, respectively. Please select shortcuts to match the functions.

I ask/propose the following:

  • please don't get hung up on 'it is in accordance with standard X and therefore should be in Blender'. Since there is arguably no proper 'standard' (except perhaps the IBM CUA from 1987), you will most likely end up with an amalgam or mashup of things other applications have invented for themselves. It will not necessarlily make Blender more consistent or more usable.
  • please don't introduce serial keyboard + mouse actions if they are avoidable. Provide for keyboard-only or mouse-only operation (preferrably both, to suit different user behaviors), it is generally faster to use one input mode than a combination of modes.
  • please acknowledge toggle actions and treat them as such: use the same keybord or mouse action for 'toggle on' and 'toggle off'. It makes for a smaller key map with fewer combinations to learn and for faster operation of the application.
  • please ensure that functions/operations and the accompanying shortcuts or mouse actions in line. G for Grab/move, S for Scale, R for Rotate, E for Extrude etc. correlate between key and function/operation and are therefore easier to learn.

Unless Blender is aiming to attract a completely new user base, most users will be transitioning from 2.7x to 2.8. Please don't make them relearn the application any more than necessary. For those users that are new to Blender: it is a complex application, let's acknowledge that and own it. Assist them by providing access to basic and/or important functions in a way that relates to what they are trying to accomplish. Also: it is not a bad thing to do your own thing; the Blender UI is itself based on rather rigorous application of a set of principles. Using key maps that help people use Blender effectively fits rather nicely.

I realise that the above is, like with everyone else's proposals and/or comments, rather subjective. I do believe, however, that the current direction of the discussion on keyboard maps is taking is not helping Blender forward as much as it should or could.

For background reading, perhaps some of the principles behind Human-computer interaction design or user-centered design might be useful (https://en.wikipedia.org/wiki/Human%E2%80%93computer_interaction and https://en.wikipedia.org/wiki/User-centered_design).

As stated at the top of this page, the industry standard keymap is an ALTERNATIVE keymap and it will NOT REPLACE the standard Blender keymap. So, including an alternative keymap will not make Blender more difficult for current Blender user's to transition from 2.7x to 2.8 as the default will be Blender standard keymaps (with a few 2.8 changes). However, for people coming from using other 3D applications, like Maya, MODO, and Max, the alternative keymap will be there to help make their transition easier. And, as stated near the top of the page, "this is an alternative keymap for users who use Blender as part of their pipeline, in conjunction with industry standard apps." Creating an industry standard keymap allows people who already have an established pipeline to INCLUDE Blender with little trouble. For many people, it's a pain to switch from one app to another when their keyboard shortcuts are vastly different to do basically the same things.

So, you won't have to use the industry standard keymap if you don't want to. And, as has always been the case, you can change the keymap to whatever you like as you can completely customize it. But the industry standard keymap is an attempt to create a keymap that adheres the most common industry standards in order to be an aid to those who want to include Blender into their pre-existing pipelines.

So in essence the "industry standard" keymap is just a mix of the most common hotkeys from every major software... in the end someone is gonna have to do the maya keymap, the max keymap, the houdini keymap, and the cinema 4d keymap, and this "industry standard really weirdly mixed mix of things " will become obsolete pretty fast.

Sorry for the negativity. it just hit me, and to tell you my experience, i've turned and help turn a couple of studios and artists to blender, and honestly the only things bothering people are the move, rotate, scale, but really more importantly the way you move around your scene and the rmb / lmb thing, thats it. the rest of the hotkeys they dont mind, and they love having SPACE BAR as search functions because it aids them learning the rest of the stuff they need quite fast, and its all compatible to learning the blender defaults.

just my 2 cents.

  • key combinations are introduced that do not match or relate to the functions they operate. An example of this is W/E/R for Move/Rotate/Scale, respectively. Please select shortcuts to match the functions.

You're talking about ergonomics here, yet I fail to see how this suggestion is pro-ergonomics. You're saying that instead of grouping together 3 of the most used hotkeys (actually 4, "Q" reverts to default/selection tool), that they instead should be spread out to "more appropriate letters". That is anti-ergonomic. It comes off as "it bugs me it doesn't match the letter, so it's no good". Most people in the industry are very comfortable with their hand in the WASD and QWER positions as they are the most commonly used keys for software and games, and QWER allows you to rest your hand very comfortably on all 4 letters so you can rapidly move, scale and rotate your objects.

I believe the combination of A select_all/deselect_all + alt-A deselect_all is Compatible and and satisfies everyone!
for those used to using the classic combination selection_all - deselection_all with A continue to use this combination as usual, for those who complain that A for deselected in scenes too heavy is inconvenient can easily use alt-A to deselect_all

It comes off as "it bugs me it doesn't match the letter, so it's no good".

Your interpretation, not mine.

You seem to have missed the 2nd line in the post though: this is not about the industry-standard map alone. All over, discussion seems to concentrate mostly around people's personal preferences, not about having a consistent key map or effective use of Blender as an application. Factoring in ergonomics makes for better consistency, better learnability and more efficient use of the application. While this particular key map does not have 'learnability' as a goal, others do.

Most people in the industry are very comfortable with their hand in the WASD and QWER positions as they are the most commonly used keys for software and games, and QWER allows you to rest your hand very comfortably on all 4 letters so you can rapidly move, scale and rotate your objects.

Fair point. I'd like to see the stats on 'most people are very comfortable', though. If W/E/R works for people and it is 'standard': put it in. What I am saying is don't put it in because 'it is standard', but because it works better than the alternatives. That is the bit I don't see in each of the discussions.

Wow, a keymap which actually uses the *same* mouse button for select and box-select? Revolutionary! ;)

@noki paike (amonpaike) Although it's not in the list yet, I believe Ctrl+A is far more standard than A/Alt+A for select all.

Most apps don't actually have a deselect all shortcut other than clicking on blank space, although often there will be a "Select None" option in the dropdown menus which you can assign a shortcut to if you're so inclined.

Photoshop offers a great way to resize your brush and to choose the softness/hardness of your brush. You press ALT+RMB +drag LEFT/RIGHT to resize and UP/DOWN to affect the hardness of the brush. This keeps people from having to learn a new keyboard shortcut and you do most of what you need to with your brush while painting via this one shortcut. Now, I am not married to ALT+RMB, but I do like the LEFT/RIGHT, UP/DOWN way of doing things. Clip Studio Paint uses CTRL+ALT+DRAG to resize the brush. MODO just uses RMB+Drag to resize (since you don't have it in the chart above).

I know that 3D programs may work a certain way when it comes to painting, but it seems to me emulating Photoshop (or other paint programs) would be the way to go for these shortcuts as most people who paint textures will be using these programs and having similar shortcuts would make it quite easy to shift between them when needed.

Just tested that in Photoshop, that doesn't work here? All I get is the brush menu?

If you just click the RMB, you get the brush menu. If you press+hold ALT and then press+hold+drag the RMB and drag left/right, you get a circle showing you the brush size and hardness. Keep holding the ALT and RMB and drag left/right to increase/decrease size and up/down to increase/decrease hardness. I've used this shortcut for years because it's interactive (and much better than using the bracket keys).

Newest Photoshop here. That most certainly does not work by default. The Brush menu appears every time.

If you're on a Mac, it's Control + Option plus drag left/right (according to a website ... I'm on a PC).

I'm also running the latest Photoshop CC 2018 and it most definitely does work. If you do a Google search, you can see people talking about it (especially when it stopped working for them due to Windows 10 updates, Wacom driver issues, etc.).

For CC 2018, Adobe now says to use CTRL+ALT+RMB drag left/right, up/down. So, give that a try. Surprisingly, BOTH work for my on my system.

What follows is from an Adobe blog article on this (http://blogs.adobe.com/jkost/2017/05/brushes-and-painting-tool-shortcuts-in-photoshop-cc.html):

  1. Resizing Using the HUD (Heads-Up Display)

On Mac: Control + Option (Mac) –drag left/right in order to decrease/increase brush size and up/down to decrease/ increase brush hardness.
On Windows: Control + Alt + Right click -drag left/right to decrease/ increase brush size and up/down decrease/ increase brush hardness.
To use the change Brush Opacity (instead of the Brush Hardness), based on the vertical drag movement, select Preferences > Tools and uncheck “Vary Round Brush Hardness based on HUD vertical movement”.

Aha, yes, it works, but your explanation was wrong. To do that in Photoshop 2018, you have to hold Ctrl+Alt+LMB-drag. No RMB involved.

No. It is RMB. Even the Adobe docs say so (see my post above):

"On Windows: Control + Alt + Right click -drag left/right to decrease/ increase brush size and up/down decrease/ increase brush hardness."

This has been in Photoshop for over a decade at least. I've been using this since at least PS4.

When a brush is selected, ALT+LMB has always given Photoshop users access to the Color Picker tool. ALT+RMB provides access to the ability to interactively adjust brush size/hardness.

Yes, but Ctrl+Alt+LMB is the thing you were referring to. At least in the latest Photoshop on Mac.

Sigh. No. I was not because, as stated, I am on a PC. I can't speak for a Mac as I don't own one. So, no, I was not explaining things incorrectly. It was and is still the RMB on the PC. However, because it wasn't working for you, I did post, from the Adobe blog, how it works on the Mac as well (see my posts above). Sorry for the confusion ...

This comment was removed by Luis Burdallo (LuisB).

All this talk about ergonomics is moot for left-handed users like me. The default layouts in the apps discussed here, like blender's, are all right-handed creations for right-handed people.

I prefer that you make key mapping easy to do, redo, undo, save and export.

I'm going to have to make my own keymap anyway.

Currently in Blender 2.79, under the Circle Select Modal keymap, C key Release event can be set as Confirm, essentially making it only work when it is pressed.

This simulates well allowing navigation in between selection strokes, when in reality it just quits the modal operator.

That would be so much better for my tired hands. I'm not sure it's available on all platforms.

I cannot find this setting, nor reproduce the behavior, that duarteframos describes here. I'm using 2.79 on a Mac. None of the available KeyMapItem.value options are "Confirm" and none of the available options produce the behavior described.

For those interested in a quick way of finishing/canceling the C select mode, a right-click will do it.

Consider using Max's viewport rotate/pan/zoom shortcuts to avoid conflicts with LMB shortcuts and actions, since all off them are based on MMB shortcuts. It wount affect LMB and RMB in any way. I´m already using them without any issue in blender for some time.

@noki paike (amonpaike) Although it's not in the list yet, I believe Ctrl+A is far more standard than A/Alt+A for select all.

Agreed,.... totally.

I see a bunch of these have been marked as "DONE". Where is the work on the current keymap being done? Is there a keyconfig or a git branch I can try somewhere?

Selection:
Important logic behind adding and subtracting from selection:
Shift + LMB : add to selection is ok, but do not copy it like it works in Maya.
Explanation:


Selecting several obects wih LMB box selection


Adding another objects to selection (Shift++LMB), while selection overlaps to some of already selected objects


Result is – already selected objects touched by box selection become removed from selection. This is not good. You can prevent this behavior by performing box selection by Shift+Ctrl+LMB. In this case, all the boxes will be selected. I think this is against logic of ”add to selection”, because in fact it is not only adding, but subtracting as well.
So, the ideal, and most logical solution should be: Shift+LMB box selection always adds to selection everything, without subtracting from already selected. Subtracting from selection by Ctrl+LMB. Maya Shift+LMB button behavior could be then logically mimicked by Shift+Ctrl+LMB.
Exactly like it works in File Explorer:


LMB selection


Adding items to selection by Shift + LMB


Shift+Ctrl+LMB – adding unselected while removing already selected item.

Mesh Editing:
Extruding by Ctrl+E is ok. But inset shortcut “I” does not follow shortcut logic. Intuitivity, and logic speaks for using same shortcut scheme for same level type of commands. Basic mesh editing commands like inset, extrude, loop cut, and Bevel are the commands from same logical level, thus should be controlled by same shortcut logic So, if you decide to use Ctrl+ (key), you should use this logis for all the mesh editing commands For example:

Extrude: Ctrl+E,

Inset: Ctrl + I could be logical solution, but it is hard to press I together with Ctrl at once, so, this should be some other key within comfortable reach area. Ctrl+T? (yes, it is triangulate shortcut, but triangulate is much less used command than inset. Stronger beats weaker.)

Loop cut: Ctrl+C, But this is commonly used as copy command. Copy is stronger, so it wins. Ctrl+W seems to be within comfortable area, and no other command in blender seems to be using this shortcut.

Bevel: Ctrl+B. Seems like blender 2.8 will be using this shortcut for setting render border. Which, in terms of Ctrl logic should be assigned to some different shortcut. So, Ctrl+B is more important for bevel.

Animation:
Space for play/pause animation is good choice. It is commonly used in video players, and video editing apps for playback. But it needs to work very well with jump to previous/next keyframe shortcuts. Nicest solution for animation was IMHO in Softimage.

Arrow Up: start / pause playback
Arrow Down: pause playback
Arrow left: previous frame
Arrow right: next frame
Ctrl+arrow left: previous keyframe (on selected object(s))
Ctrl+arrow right: next keyframe (on selected object(s))
Ctrl+arrow up: first keyframe (on selected object(s))
Ctrl+arrow down: last keyframe (on selected object(s))
Home: jump to timeline start
End: jump to timeline end

This is flawless example of total animation playback control under one hand.

Pivot point / origin:
Easy origin manipulation is definitely one of the most crucial things that needs to be addressed in Blender.
I am not going to reinvent the wheel - combination of Maya and Softimage origin manipulation is surely the way to go.

Maya:
When translation tool is active, just press „D“ and hold. Move mouse over object, and pre-selection highlight will show you active element on which you are going to snap the origin. Click on desired element (also see „universal snap“ topis later), and origin will jump righ there.


D key pressed, mouse over active object will highlight future origin location.


LMB click, and origin snaps to previously pre-selection highlighted element.

Once the origin is at it’s new position, it is super easy to align it to any desired direction. Just press D+Ctrl, and move mouse over object , and pre-selection highlight will show you active element on which you are going to orient the origin.


Pressing D+Ctrl allows you to orient origin to any element


LMB click, and origin orientation is aligned to previously pre-selection highlighted element.

Moreover, you can aim origin’s x axis to any point of the object by pressing D+Ctrl+Shift


Aiming origin’s X-axis to the center of pre-selection highlighted polygon, using D+Ctrl+Shift shortcut..


LMB click and origin is oriented…

Of course, this works on multiple objects selected. If you want to lock pivot orientation, just check “Pin Component Pivot”.


Next time you will select object again, pivot will have your custom orientation.

Softimage:
Softimage approach is less powerful, but much more systematic. While moving origin in Maya means really moving origin, in Softimage you have basically two options (super foolproof):

1 direct origin manipulation
2 temporarily overriding actual origin position (transform pivot, or temporal pivot)

1 – direct origin manipulation is super easy – just press “Center” button on right panel..


…and you can freely move origin anywhere, or when you press Ctrl while translating origin, it will snap on any desired element (point, edge, midpoint, center of polygon) . But here comes the ultimate Softimage advantage over Maya. You can actually snap origin on any unselected object’s element:


Snapping origin of selected object to the vertex of unselected object (just holding Ctrl while translating).

This is killer feature (see “universal snap” and “knife tool” topic).

Once the origin is relocated, it stays there even after deselecting the object.

2 – Temporarily overriding actual origin position (transform pivot or, temporal pivot)

You can temporarily relocate origin without actually affecting origin position. In fact, it looks like you are relocating origin, but without “Center” button pressed. This origin relocation is temporal, and is active only while the object is selected.


However this looks complicated it is super easy. Just press Alt+LMB gizmo drag, and you can temporarily relocate origin anywhere. If pressed Alt+Ctrl+LMB drag, temporal origin will snap on whatever is predefined in snap settings (again, see “universal snap” chapter).

Moreover, if you need this temporal/transform origin to stay on this temporal position, even after you deselect the object, you can do it by clicking small white arrow, and choose “Lock”


Locking transform/temporal origin

This way you can work with origin super fast, without ever loosing it’s position accidentally.

Quick example:


I want these four points translate, so A1 vertex snaps to A2…


Alt+LMB click on A1 vertex will move&snap temporal origin to it’s position (even with no need to press Ctrl to snap. It knows what you are going to do… but still, if you drag instead of click, you can move it anywhere…)


Now, just Ctrl+LMB click drag to A2 position. Finito.

In Softimage, here are not such great tools to align, and orient origin like in Maya, unfortunately.

So, what is the output? Working with pivot relocation is very similar and straightforward in Maya and Softimage. With one big difference. While in Maya you can relocate only actual origin, in Softimage, you can use temporal (or in other words - fake) origin relocation which acts exactly like in Maya, but without affecting original origin position.

So, the ideal solution: Fake origin behavior from Softimage with total control over its alignment and orientation from Maya.

How this can work:
1 – we need direct switch (button like “Edit pivot” in Maya, or “Center” button in Softimage) to be able to manipulate only origin. After this button pressed, we will be able to translate origin only, with all the usual SRT shortcuts, and snaps. After button switched off, You are back in object manipulation mode. This would serve for true origin manipulation.
2 – To manipulate fake origin, there seems to be good solution to use Alt+LMB click&drag on center of the transform gizmo. In conjunction with Ctrl (meaning Ctrl+Alt+LMB click&drag) you will be able to snap fake origin to desired element.
3 – To Align/Orient origin to some of the object’s element it would be good to set shortcut to Shift+Alt+LMB click (on pre-selection highlighted?? element… this is supposed to work in object mode as well)
4 – In case of need, there could be also Maya’s Aiming origin’s X-axis to element mimicked by Shift+Ctrl+Alt+LMB click.

In terms of Blender logic, it maybe possibly OK, if we take Origin (in Blender meaning) as the “real” origin I mentioned above, and Pivot point (in Blender meaning) as “fake”, or temporal origin. So, “Origin“ would be the real center of object which could be manipulated easily like I described in point 1 above, and “Pivot point” would be this temporal / fake origin. This could bring some logic behind those terms.

Additional, very-nice-to-have feature:

1 - Softimage COG button functionality.
The functionality is visually similar to Bounding Box Center Pivot point in Blender.


But this works differently. If you press COG button, your manipulator is always in the center of geometry of selected object, no matter where your origin location is. This is very useful in case your object is far away from the center of the scene, but it’s origin must be in the 0,0,0 for some reason.


COG button off


COG button ON

2 - Softimage manipulator always in viewport functionality.
If your object’s origin is far away from object itself, you naturally cannot see transform manipulator, because it sits on object’s origin. Softimage has beautiful function (not switched on by default), which ensures you always see the manipulator. Check video:

Universal snap:

Pressing CTRL should enable (sticky toggle) snapping with predefined properties. You should be able to easily define what you are going to snap on – at least those:

1 – points – vertices, curve points, curve knots,
2 – edges – possibility to define number of edge divisions to snap on. For instance division 2 = snap to midpoint, division 3 = snap to thirds, 4= snap to quarters etc.. Division1= snap anywhere along the edge
3 – polygons/nurbs surface - snap on the surface
4 – origins / centers– snap on the origin, and snap on the center of polygons

Those are the basics, but list can continue: grids, custom grids, particles, lattices, hair, hair tip/root…

The idea is, that user should be able to define everything he wants to snap on. All of it, none of it, or anything of it. Once the CTRL is pressed (again – sticky… pressed on, released off), user can snap on all he defined.

But most of all - snap must work on ALL objects. Universally. Means, If user wants to snap origin of selected object to some component of unselected object, he should be able to snap on it. If user wants to knife cut through selected object by snapping on some other “guide” objects that are unselected, he must be able to snap on it.

Knife Tool:
Doesn’t matter what shortcut will be used to run this tool. Functionality is more important. Please, allow knife tool to snap also on unselected object’s elements, to make precise cuts.


Knife tool cutting the selected geometry with snapping on unselected objects elements.

This is extremely important - at least in game development.

Repeat last command and MMB click functionality:
Pressing “G” for repeating last used command in Maya, is not exactly life saver, but definitely carpal tunnel avoider.

Middle mouse click on any button and menu item in Softimage, for repeating last command that was used through this button or menu item is also not life saver, but it definitely speeds up work significantly. For instance – if switch viewport to material editor, then you do not need to switch it back after. Just middle mouse click on menu item, and you will end up switching between viewport and material editor. The same applies to switching display modes. Once you switch from textured, to wireframe, then you will just click on menu item with MMB, and you will be cycling viewport modes. And it works throughout complete software - you need to assign some constrain to large amount of objects separately? Just do it once, and then just select another object, and perform MMB click on menu item, and constrain will be applied. No need to go through submenus..

That’s my 2 cents addition for Blender’s industry standard keymap discussion. Hope it will be considered. All of those suggestions are strong workflow accelerators.

Marek

EDIT: You can snap origin of selected object to unselected object element in MAYA as well, of course...

Marek: Many good points here. I largely agree, esp with the more consistent keymap comments.

Softimage's approach to animation & playback is interesting for sure.

Many of your suggestions are outside of the scope of this keymap though. Some of these things are more like feature requests, which this keymap can't fix.

My primary focus first, is making sure LMB to select and RMB for contextual menus work well. The next thing is making all the hotkeys activate the active tools, rather than the immediate-mode ones. Then there will be a process of refining the keymap.

Cheers

This is shaping up to be an excellent upgrade to general usability.
My only concern so far is that I think Select All operator should be mapped to Ctrl + A, in the name of keeping up with "industry standards".
It is the common select all in many applications, and the default behavior in operating systems, like the file manager, lists of items, or text input boxes, among others.

It still solves the previously raised valid issue of unintentionally selecting all in heavy scenes or potentially slow situations, or having to toggle All/None when in doubt.
A key could then be either direct Deselect All, or be kept as the current toggle behavior. Alt + A would be for deselecting, which would be consistent with many other operators "Alt behavior".

This is shaping up to be an excellent revamp of the default key map.

@Duarte Farrajota Ramos (duarteframos) You mean "This is shaping up to be an excellent industry standard key map", right? The default Blender standard key map is another task altogether.

Bill: Thanks for positive feedback. If possible I would gladly put more of my time and knowledge into this... (testing, feedbacking...)
Which of the things I mentioned above, you think would be possible to consider for industry standard keymap?

Do you have any powers to propose pivot/origin things to core team, to be considered?

You say LMB to select, RMB for contextual menu (!happy!), does it mean, industry standard key map will not rely so much on 3D cursor? As I wrote several times, I am not a friend of 3D cursor - most of it's functionality could be easily replaced by smart origin/pivot relocation implementation. But until then (and I strongly hope, Blender core team will come to knowing how important this thing is), 3D cursor presence is, in my opinion, inevitable. Do you plan to discard 3D cursor completely in industry standard keymap, or you are just planning to push it little more to the background? I would be glad if you can describe it little bit more clearly.

I see a bunch of these have been marked as "DONE". Where is the work on the current keymap being done? Is there a keyconfig or a git branch I can try somewhere?

Can we please get this because i agree

@William Reynish (billreynish) this is totally unfair you don't count Softimage in the Industry Standard Software WTF ???

Otherwise this is a very good job, but I have a very specific request, keyframe in Softimage is "K", this makes it the winner could you change this one please ^^ ?

For further work I believe outside of the scope here please have a look too about the Softimage workflow and essentially how the pivot point handling and snapping is done, I'm in the industry for about 25y and never saw a better workflow.

About the default keymap or alternative keymap thing.

I assume the Blender keymap is for Blender users and the Industry one is for newcomers?
So why not making the inverse? This is a really serious issue, you don't even know how many artists I saw ditching blender some hours later for his alien keymap thing...
You should at least present that on a first run splash screen, leaving the option to old blender users to keep the old way.

@William Reynish (billreynish) this is totally unfair you don't count Softimage in the Industry Standard Software WTF ???

Softimage is EOL/dead since 2014.
This Task about the Industry Standard Keymap is more about currently relevant and more important alive Industry tools.

@Noel Froger (NNois): Softimage was a great DCC app, but was unfortunately killed years ago, so I didn't include it here. Even so, K for keyframe has a certain logic to it. May change it.

@William Reynish (billreynish) this is totally unfair you don't count Softimage in the Industry Standard Software WTF ???

Softimage is EOL/dead since 2014.
This Task about the Industry Standard Keymap is more about currently relevant and more important alive Industry tools.

The fact is, that Softimage was the youngest app from Maya/Max/Softimage trio. I mean Softimage XSI, not Softimage 3D. XSI was completely rewritten, and released in 2000. Maya 1.0 was released in 1998, and Max 1.0 was released back in 1996.

Until XSI was eaten by Autodesk, each of main XSI releases brought groundbreaking features (2.0 - compositor, hair, fur. 3.0 - crowd system, 4.0 - RBD, syflex,,schematic view, 5.0 - GATOR, physX, FaceRobot, Shape manager, 6.0 - animation layers, MOTOR, material manager, delta referencing. 7.0 (last Avid release) - ICE. 7.5 (first Autodesk release) - viewcube... )

Softimage had youngest core of all programs, best documentation, and best performance ( multithreaded when Maya and Max were just dreaming about it).

This program deserves very serious respect. Any former Softimage user will tell you, that none of current apps have comparable workflow and logic. Those guys who created Softimage were really smart. Now, when XSI is dead, there is big chance for Blender to get inspired by this beautiful, artist friendly, and extremely well done app.

I understand, why Bill did not included Softimage. But for me it is very sad to see, how XSI heritage fades out, without being noticed.... And the fact, that it is dead, means wasting your time speaking about it for most of you. Softimage is history. Wise man said "A people without the knowledge of their past history, origin and culture is like a tree without roots". See? History! Construction history in XSI. Even now, nobody can beat it.... See? Origin! Even he is speaking how good was work with origin in XSI... See? Culture! This is culture of use - keyboard layout, and overall program logic...

But seriously. We must learn from the past. XSI can not be added to industry standard comparison, because XSI is standard. Even when it is dead. Like Da Vinci is standard for renaissance man.

Blender devs - get inspired by this history. And put the seed of XSI inside Blender. You will never regret it. Me, and (i am sure) lots of other Softimagists will gladly offer their time for you, to see this seed grow.

I agree with you. I know Softimage XSI fairly well, and have used it in the past. It was an excellent app, with some very well thought out paradigms, workflows and features, that all seemed to fit together well, rather than being a random hodgepodge of checklist additions.

Cheers.

the melting pot between the Softimage XSI users and the blender users, is something that I have somehow imagined it could happen ... for the simple fact that there is a whole community of ex users of Softimage XSI that wants dead a certain company.
and Softimage XSI users were people with attributes ... maybe a minority but smart

I agree with you. I know Softimage XSI fairly well, and have used it in the past. It was an excellent app, with some very well thought out paradigms, workflows and features, that all seemed to fit together well, rather than being a random hodgepodge of checklist additions.

Cheers.

...and, isn't that what you named, exactly what Blender lacks? :-)
There is still large Softimage users community. Alive, and kicking. Still using Softimage, because they haven't found any good alternative. What are their choices?
Maya?:

  • NOPE. Until not forced to use it, they will not.. Trust issue. It is Audtodesk. It is like buying a car from the guy, who stole your old one.

Max?

  • Max is joke for XSI users. Substantial workflow and user experience downgrade..

Cinema 4D?

  • Well, decent feature set, stable, easy to use. But, there is not so much Cinema users. Cinema seems to reach some amount of users, and this amount is not going to grow so much in future. And this means, limited job opportunities.

Modo?

  • Not really.

Houdini?

  • Yes. More technical users already migrated. Houdini's procedural approach is top notch for simulations, pyro, fluids, liquid, and all variety of simulation based effects. But day-to-day use for modeling/texturing, is still not the best.

Blender?

  • This is for lots of XSI users light at the end of the tunnel. No - the fact it is open source is not the main Blender feature for us. Rich feature set, braveness to implement new features, rapid development, and user base growth are the main features. Showstopper is UX, logic, overall consistency, and mulish inclination to some old paradigms. But 2.8 is again raising some good amount of hopes. Industry standard Keymap even more...

Lots of former XSI users, who are seeking for "swiss army knife" DCC app, which will replace XSI, are looking at Blender. That's it. It's up on Ton, or whoever is responsible for general Blender heading, if he decides to welcome this community, with arms wide open (you all know what I mean...), or just will ignore them... I suggest - take that chance, it will pay off more than you think.

Anyway, my bi*ching around would change nothing. So let's get back to work: Bill - is there any real work, that can be done on our side, to help you make ISK great?

Marek

@Marek Hollý (asil8567): Once we have it implemented, which should be in a few weeks or so, you can help out by testing and giving feedback.

I am sorry, but question at me. When include this at standard keymap in Blender user preferences? Because you have to start getting used to the new keymap, and her is not in user preferences. A she will in beta?

As someone commented above, industry standard should be the default keymap, and a "classic" option could be added perhaps, for the current one. People getting into 3d usually are already familiar with a lot of software, and Blender is the last one they are gonna consider when they try to navigate inside the application. Blender as it currently is, contradicts the navigation and selection system of every software out there, including operating systems. Learning 3d is hard enough without having to relearn everything you know about navigating on a computer. I went to Maya 10 years ago after trying blender because of this, I'm not the only one. But why should it be the default, and not just an option? Because future realeased training and tutorials will be more inclined to teach the default keymap, and this is specially important in training aimed towards beginners. Advanced users are not that much concerned about the shortcuts when watching tutorials, they already know most of the basic ones. And throughout the software's lifecycle, it is most likely going to have a lot more new users than the ones currently using the software. ESPECIALLY if you guys adopt a new keymap system that is intuitive to people that already uses software like Photoshop, Illustrator, Unreal Engine, Unity, Maya, Cinema 4D... I've been following the development of Blender for a long time, and I want to migrate from Maya, but I just can't when it makes my muscle memory works against me, giving me zero benefit on my workflow.

@Marek Hollý (asil8567): Once we have it implemented, which should be in a few weeks or so, you can help out by testing and giving feedback.

Bill, if I may, here is sum of my previous posts + couple of my thoughts about shortcuts hierarchy rules and prioritizing.

1. Operating system inherited commands: are the highest, first grade priority (like Ctrl+A,Crl+C,Ctrl+V, mouse selection logic, left click (with Shift, Ctrl+Shift..), right click for context menu, etc...). If you really care about new users - if you want current children to become future Blender users, keep this in mind - those are the shortcuts of their first contact with computer. It will be stored deepest in their memory. That's why every program respect it. This is holy grail. Commands from this club, are supposed to win against anything else.

2. Common shortcuts from other DCC: the wider use of specific command, the higher priority. Although, you can find areas of improvement - like Maya box selection I mentioned above - but first rule should solve this. Some of those commands can be beaten by 3rd rule.

3. Ergonomics: Left hand would naturally sit on left part of keyboard, because of navigation shortcuts - which is most frequently used. All the other command should be prioritized according frequency of use. Most frequent shortcuts should sit just under left hand. The less frequent command, the farther to the right. That's why W,E,R, is better than G,R,S. Also ergonomics rule should beat Common shortcuts rule in some cases. Like component object/selection in Maya (F8-F12), is against ergonomics, thus 1-5 is far better.

4. Key combination logic: as mentioned in my previous post, same command class = same key combination logic. For instance - using CTRL+"key" for mesh editing commands like extrude (Ctrl+E), means, inset command (from the same command class) should use same logic - CTRL+"key". Although, there is really lot of commands inherited from operating system which use Ctrl+"key" combination.. So in this case, I would suggest to look at different key combination. For instance Alt+"Key", which could serve much better according ergonomics rule.

5. Command name rule: While Ctrl+E for extrude is OK, Ctrl+I for inset is not (ergonomics rule). So, it is OK for shortcuts to follow first letter of commands name, but Ergonomics rule is stronger. As soon as shortcut will have good position under left hand, muscle memory will do the rest. No need to look at the keyboard to correctly press Ctrl+I.

6. Left handed users: Sorry to say that, but ignore them for now. I know, it is politically incorrect. And a lot of people could be angry on me. But I have good reasons to say that.

a. There is approximately 10% of world population left handed. 90% vs 10%. Stronger wins.
b. None of major apps and systems is specifically designed for left handed users. Windows can be only customized (switch to left button priority), Maya - nothing, Houdini - (just the possibility to roll out menu to the right side, so it is easier for left handed to select.....)
c. There can not be any keyboard shortcut logic which will fit left and right handed people at the same time, and equally well. One group will always suffer, one less. But nobody will be satisfied.
d. Most of left handed people are using their own keymap anyway.

I do not say, to abandon left handed people at all. But now, good implementation of ISK is priority.

Marek

@Rafael Ivan Hattge (rafaelhattge) i agree with you in most parts making blender more intuitive in left select mode is essential however blender has things that are completely different from other apps like 3d cursor, entering/exiting modes..etc they need to be taken into consideration...i came from maya and i had to heavily modify the 2.8 right click keymap to work with left click/select box ..etc..some parts need more work like pivot pointing from origin and snapping.....pie menus help a bit but you always have to enter and exit edit mode and use menus.

@Marek Hollý (asil8567) i am a left handed and i don't think this is an issue..it works very well for us since in blender u can swap everything top/bottom or left and right, actually when i used maya i wasn't able to change certain things because they are hard-coded with not the possibility to change them.

6. Left handed users: Sorry to say that, but ignore them for now. I know, it is politically incorrect. And a lot of people could be angry on me. But I have good reasons to say that.

a. There is approximately 10% of world population left handed. 90% vs 10%. Stronger wins.
b. None of major apps and systems is specifically designed for left handed users. Windows can be only customized (switch to left button priority), Maya - nothing, Houdini - (just the possibility to roll out menu to the right side, so it is easier for left handed to select.....)
c. There can not be any keyboard shortcut logic which will fit left and right handed people at the same time, and equally well. One group will always suffer, one less. But nobody will be satisfied.
d. Most of left handed people are using their own keymap anyway.

I do not say, to abandon left handed people at all. But now, good implementation of ISK is priority.

I am left handed and I've never had any issue with any program, I don't even use the mouse with my left hand, is just weird. Maybe I'm in the minority of a minority hehe, but I don't think a left handed specific keymap would be of much help, it would only confuse people more. Being left or right handed is only important when you're setting up a wacom tablet, otherwise is just a waste of time.

About the Industry Standard Keymap being the default I completely agree. Any experienced user of Blender already knows how to change the preferences according to their own taste so there's no loss with having the current keymap as an option, call it Classic Keymap, or Blender Keymap and add a dropdown to choose the desired keymap on the splash screen.

For Sculpting and any brush/painting related modes, can we have something like in the addon by Vrav, Sculpt Paint Workflow Suite.
The feature allows both brush size and strength to be adjusted by gestures on the same hotkey. RMB Click-Drag Up/Down=Strenth; RMB Click-Drag Left/Right=Size.
You could borrow some of the code he has?

Vrav
https://blenderartists.org/t/addon-sculpt-paint-workflow-suite/553819

This is (generally) the way it is in Silo, 3DCoat, Sculptris. I find it the most ergonomic way to adjust Strength/Size for brush related modes.

@0rAngE (undo): That's certainly a quite interesting way to handle basic brush settings. I will keep this in mind.