Hi,
for the past ~9 days I’ve been working on a complete overhaul of Blender’s input mapping, to make it more consistent with all the other software out there, while preserving vast majority of the functionality that’s mapped in the Blender’s default keymap.
I’ve came up with what I call a “Standardized Keymap for Blender”.
It is intended to:
- Reduce learning curve by making elementary actions work as expected by both new users and user coming from other packages.
- Prioritize consistency, so that the same basic actions like interaction and selections are as consistent between Blender’s different editors as possible.
- Promote confidence, so that once you learn the basics of interaction with the software, you will feel confident to interact with the editors other than 3D View without any worries that a wrong key press or a mouse click will make things go haywire.
I did succeed from the most part, however due to a few bugs and input editor architecture limitations, I had to do some compromises here and there, so things are not as consistent as they could be.
Who is this keymap for:
- A new Blender users, who are seeking to learn Blender and have hard time doing so because of the unfriendly default keymap.
- Existing Blender users, who use Blender alongside other tools, especially other 3D packages, and don’t like having to switch their muscle memory to a significant degree when switching between the software.
- Existing Blender users, who do use Blender’s default keymap, but do not like it. Those, who probably tried to customize it, but have failed because it is too time consuming and/or frustrating process.
Who is this keymap not for:
- Blender users who are already used to a default Blender’s keymap, and like it, or have customized it to their liking. If you voluntarily use Blender’s default keymap, then using this one will probably drop your productivity down to nearly zero and cause you a lot of frustration. It takes about ~2 weeks for muscle memory to be rebuilt, and by 2 weeks I mean really 8+ hours of work a day. So if you are to try this keymap, you need to consider if re-learning all your Blender muscle memory from scratch is worth 2 weeks of significantly hindered productivity.
Just the customization part has taken me over 80 hours to get finished, which speaks a lot about deficiencies of Blender’s input editor, which needs some serious cleanup and unification. On top of that, there are numerous bug which will corrupt your keymap for apparently no reason. I have spent all this time and undergone all this troubleshooting so that you do not have to
I do hope that alongside helping 3D newbies as well as users migrating from other packages to get into Blender, it will also prove the importance of a good defaults, which Blender development has neglected in the past.
So, here is the link to a series of video tutorials showcasing this new keymap in action:
Here is a link to the keymap itself:
https://drive.google.com/file/d/1qozxfQW_TKQvQGWmWaR2NhngEKybVKAV/view
And here is a link to a reference sheet for all the customized hotkeys:
You will find that not all key bindings are listed in the sheet, that is for several reasons:
- Some mappings are not there because they do not differ from Blender’s default. I did not change everything just for the sake of changing it. If something worked well, I left it alone. I really changed only things that were ergonomically wrong, or things that required to be changed to be consistent with things on other places.
- Below the sheet are tabs for different editors. Some of the editors contains only hotkeys unique to them, which means rest of the hotkeys are derived from/work the same as global hotkeys.
- Some editors are not even listed because they did not require any changes at all. For example, Blender adheres very well to the standards when it comes to text editing or Python console input.
Also, on the leftmost column of the Global tab, you can see a few unsupported features:
- Circle select: I wanted to originally include it but it has this weird modal system, which can not be customized, so it did not set in very well with the rest of the keymap
- Hotkeys for switching layers: I needed number keys for a lot more frequent and important actions than switching layers. Furthermore, I noticed that majority of even the most experienced blender user still interact with layers by clicking the UI icons. Lastly, 2.8 will completely change the layer management, so this system is doomed anyway. If you are someone who relies on rapid, hotkey based layer switching, this keymap may not be for you.
- NDOF (3D mouse): I don’t own one, so I could not test if, and how it works, therefore I’ve disabled all the NDOF bindings to make sure it won’t conflict with anything. If you own a 3D mouse, this keymap won’t work with it
If you find any bug, or a conflict, let me know, and I will do my best to fix it
Thanks