Making Blender Usable

Blender 2.69 in actionOne of the biggest changes in Blender over the last two years has been major changes and reorganization of its user interface. The goal was to address Blender’s glaring usability issues, and indeed many of them have been addressed. Yet Blender remains a dauntingly difficult program to use, and — worse — a difficult program to remember how to use. I’d say that to me (and I am hardly an expert user of any) Blender is now still somewhat harder to use and more disorganized than, say, Modo (I have Modo 601) or Cinema 4D (I have v11 XL) but that’s not saying much.

All serious 3D applications, and Blender unquestionably qualifies as a serious 3D application, are plagued by the intrinsic complexity of what they’re trying to do, combined with a lack of agreement on the “right way to do things”, and the fact that real technical improvements are constantly being made in 3D graphics, leading to proliferation of overlapping tools and terminology (consider that there are multiple implementations of subdivision surfaces — such as Catmull-Clarke and Stam-Loop — and it’s important for a 3D program to support as many as possible if it’s to be compatible with other 3D programs. Similarly, there are many different tools for modeling organic objects and curved surfaces, including NURBS, subdivision surfaces, deformation lattices, and multiple approaches to sculpting (including voxels and displacement).

The “Right Way” isn’t obvious

Wordperfect 5.1 for DOS (image from wikimedia.org). Note the F3 for help (F1 was more of a "standard"). While it has an Edit menu, "cut and paste" weren't supported (it had block and move functions instead). And bold was F6 rather than ctrl-B.
Wordperfect 5.1 for DOS (image from wikimedia.org). Note the F3 for help (F1 was more of a “standard”). While it has an Edit menu, “cut and paste” weren’t supported (it had block and move functions instead). And bold was F6 rather than ctrl-B.

If you go back to the era of DOS word-processors there was a similar lack of agreement — Word Perfect, for example, had a completely different paradigm for editing and formatting text than did Microsoft Word, and on the Mac side MacWrite and FullWrite used a “ruler” formatting paradigm while WriteNow and Microsoft Word used “styles” (but each wrapped them in a unique user interface and terminology). Pages and Microsoft Word, by comparison, are virtually identical in how they solve most problems, the differences coming down to nuances. The Mac toolbox (along with excellent free software such as MacPaint and MacWrite, and — eventually — written Human Interface Guidelines) standardized basic text editing operations (selection, inserting the caret, clipboard operations, and undo) but it took close to ten years for the world to settle on the next level of convention — word and paragraph styles with “spot” overrides. (And indeed, Windows still hasn’t quite settled on clipboard or text edit field behavior standards.)

And then let’s return for a moment to the point that — unlike with word-processing — almost every aspect of 3D technology is constantly churning. With word-processors and even page layout programs there have been some technical improvements to be sure (e.g. typefaces have become more sophisticated with things like multiple master fonts and automatic ligatures, there’s Unicode of course, and compositing has improved markedly) but these have been relatively simple changes conceptually, and in general they have just made things easier (e.g. instead of having to render a drop shadow in Photoshop, export it as EPS, and then embed a reference to it in Quark XPress, you can now perform the entire operation in a click or two in your page layout program or word-processor). Contrast this with the world of 3D which has seen  major new technologies emerge in pretty much every piece of core functionality from modeling to rigging to texture-mapping to lighting to rendering — and all these different technologies have to live side-by-side, inter-operate, and somehow fit into a single user interface.

As you’ll discover if you visit Blender’s website right now, Blender is now 20 years old, and that means it has 20 years worth of functionality clogging up its user interface. It supports NURBS and subdivision surfaces and multi-resolution displacement sculpting. Similarly it has support for rigging using bone envelopes, vertex-painting, and heat-mapping. It has three built-in renderers. It has two different node-based shader architectures (or is it three?). I’m sure you’re getting the picture.

Left-Click to Select

Blender remains unusually bad at a fundamental level because it refuses to adhere to such cross-application conventions as do exist. The most hilarious example is left-click to select. It’s almost impossible to find another application anywhere that uses left-click for something other than selection (unless there is no concept of selection at all). It’s simply bizarre. What’s worse, left click is used to position the 3d “cursor” object — which is actually a very clever concept — except that it’s a far less common operation than simple selection, and doing it by accident is really annoying.

(If you consider the behavior of a text cursor, clicking somewhere in a body of text positions the cursor rather than selecting anything. The cursor position determines where stuff you type will appear. This is the exact behavior of the Blender cursor. But it’s not the behavior of any 2D or 3D graphics program I’ve ever seen. But to select text you left-click and drag or double-click — this is definitely not how Blender works, so justifying Blender’s weirdness by analogy to text doesn’t get you very far.)

Now I need to note that Blender does allow you to make left-click into select as a preference, but the program really doesn’t work properly in this mode (and you need to reset the preference when you upgrade Blender) so that’s not a satisfying solution. Just to give you one example: there’s a shortcut in Blender to allow you to “lasso select” using ctrl+left-mouse (why left-mouse when selection is normally with the right mouse?) — this becomes ctrl+right-mouse if you’ve set left-click to select. What I want is to select stuff with the left mouse button. Not flip a ridiculous set of defaults and create a different ridiculous set of defaults. On the whole, I end up sticking with right-mouse to select simply because it means not having to reverse engineer every tutorial I find.

If it were up to me, selecting something (with the left mouse button) would also, by default, position the cursor at the selected object’s local origin (sometimes referred to as its “pivot”). You could explicitly position the cursor with the right mouse button (or perhaps setting the cursor could be a mode or tool), and there would also be an option to lock the cursor (many 3d programs effectively have a “cursor” locked at the origin). This would actually maximize the conceptual mapping between the 3d cursor and the text cursor — left clicking sets your insertion point – and not compromise users’ familiarity with programs other than Blender.

More Annoyances

There's a small + widget for disclosing the Tool Shelf and Properties panels in the 3D viewport.
There’s a small + widget for disclosing the Tool Shelf and Properties panels in the 3D viewport.
Once you've toggled a panel on, there's no widget to make it go away.
Once you’ve toggled a panel on, there’s no widget to make it go away.
So you either need to size the panel down to zero or learn the keyboard shortcuts (you won't learn the keyboard shortcut by hovering over the original widget though).
So you either need to size the panel down to zero or learn the keyboard shortcuts (you won’t learn the keyboard shortcut by hovering over the original widget though).

Blender’s improved user interface — and it is definitely improved! — has two more major annoyances from my point of view. First, contextual tool panes have been added to the 3D view (which is great) but the process of showing them and hiding them is asymmetric. To disclose them you click on a little + widget — which then disappears. To hide them you either need to learn the keyboard shortcut, or use the mouse to scale them down to nothing (which causes the little + widget to reappear).

Screen Shot 2014-01-05 at 12.59.55 PM
To switch the viewport mode to a rendered preview, first you need to switch renderers.

 

Then you'll need to change the viewport shading mode to Rendered.
Then you’ll need to change the viewport shading mode to Rendered.
The render preview looks terrific but no UI affordances show up except for the damn cursor.
The render preview looks terrific but no UI affordances show up except for the damn cursor.

Second, with the advent of the new Cycles renderer, to get a live-rendered viewport you need to switch to the Cycles renderer (one step) and then in a completely different place you need to set the viewport mode to Rendered. For your trouble you are rewarded with a wonderful live-rendered view that gives you no UI affordances (e.g. you can’t tell what’s selected) but remains live for editing purposes. Ugh. So to make this workable, you then need to create a new viewport and tweak its settings.

And unlike every other place in Blender, the render settings are at the top while preview is at the bottom (this is the subdivision modifier settings)
And unlike every other place in Blender, the render settings are at the top while preview is at the bottom (this is the subdivision modifier settings)
To alter the render preview quality you'll need to dive deep into the render tab to Sampling (which is not only near the bottom, but collapsed by default).
To alter the render preview quality you’ll need to dive deep into the render tab to Sampling (which is not only near the bottom, but collapsed by default).

Finally, to modify the quality of Cycles renders — and spent quite a bit of time googling to figure this out — you need to delve deep into the rendering panel and — slightly hilarious — the place where you determine how many samples to obtain for a render is the only place I know of in Blender’s interface where the preview settings are at the bottom and the final render settings are at the top. If you’re used to Blender’s “conventions” everywhere else (e.g. subdivision settings) it’s always the other way around.

New functionality is being added to Blender with a much higher standard of usability than the older stuff.
New functionality is being added to Blender with a much higher standard of usability than the older stuff.

These are most of the first order problems in Blender today (as of 2.69). Clutter and ambiguity are also first order problems — I’d suggest that a lot of that could be improved simply be making a decision as to which slabs of functionality to hide by default. I hope we can some day get to second order issues, but on the positive side most of the new stuff getting added to Blender seems to have a much higher standard of usability than older features. E.g. to do a physics simulation you simply click on the Dynamics tab, select your objects, assign them some properties (e.g. passive rigidbody) and then click the play button in the timeline panel and it just works. More of that please! Similarly, the node-based material system associated with Cycles is very easy to work with (indeed, you don’t really need to use the nodes at all) although right now it’s missing a lot of functionality.

  • Jimmy Gunawan

    I stumbled into your article on Blender User Interface, my impression is that you don’t feel quite happy with the UI design.

    If someone never use Blender reading your article, they might think Blender UI is not good and the program is not worth learning. It feels kind of negative, which is not totally true.

    I dare to say the opposite. With previous Blender version up to 2.49, I agree, the user interface was not as good or user friendly nor intuitive, however still, many Blender artists manage to go over the interface.

    When I found Blender again version 2.5x up until today, I was actually very impressed with the design improvements they have made for Blender. I came from using Maya and Houdini, and Blender UI is unique and I am happy with Blender UI, it is very similar to Houdini, highly customizable.

    Yes, Right Click is different, feels weird at first, but you can get used to it after a while. If you use ZBrush, the UI is even harder for me at least. Blender Right Mouse Button click and that pesky 3D Cursor is actually beneficial for many things in Blender. And this is unique.

    Apart from Blender UI improvements, which is heaps better today than before, Blender has many improvements in the last 2 years.

    I don’t know how you use Blender or actually be using Blender in the future. Blender offers many features that sometimes better than commercial 3D packages out there.

    I want to add notes for some topics you mentioned:
    1. You can close the Side Bar, by dragging the panel until it closes. Or, you can also use the shortcut N and T. Check the Menu Bar for each panel.
    2. For many of your remarks Usability Issue, I think you simply need to create own Preset, for example Cycle rendering, you can make a custom panels. You simply need to get used to it. Blender is not Cinema4D or any other 3D package one used to.

    I am Blender Sushi guy, you can debate more about Blender UI, but in the end, it is totally up to individual to like or hate Blender. I love Blender, it is my secret tool and it is open source, I could install and use it to work on any computer right away.

  • Thanks for your observations. I don’t intend to be negative, and I spend quite a bit of time discussing the problems unique to 3D software that make creating usable 3D software so much harder than creating usable word processors (for example).

    I am well-aware of Blender’s UI improvements, and mention them before I start criticizing. Second, arguing that something has a good UI because it’s (a) better than zBrush or (b) similar to Houdini is self-defeating. Most 3D programs have pretty terrible user interfaces, it’s just a question of which one you’re used to or which one sucks least. The main criticisms I am making have to do with external inconsistency (everyone else in the world has agreed on how selection works, why do it differently?) and internal inconsistency (e.g. toggling a panel off is completely different from toggling it on).

    As for your specific points:

    1) I actually already noted that you can close sidebars by sizing them down to zero — this is better than nothing, but (a) tedious (dragging the panel shut requires precisely clicking on its edge and dragging it), (b) inconsistent (this isn’t how you made the panel appear), and (c) even more inconsistent (you can’t make other panels disappear by sizing them to 0).

    2) The UI may suck out of the box but you can customize it to make it bearable is the wrong answer. (Of course I’ve done this.) The first step in learning to use a program shouldn’t be a bunch of customization steps. Also — I hate having to reconfigure Blender just to do basic things sensibly on every machine I use. And, as I point out, you can’t actually configure mouse-click behavior to the point where it’s actually sensible — making left-click select just leads to more user interface problems.

    “you can debate more about Blender UI, but in the end, it is totally up to individual to like or hate Blender.”

    My goodness. You’re right. I don’t wield absolute power over everyone’s opinions on software. Damn. I better get new business cards.

  • TimTylor

    My main headache’s not with the program so much as with the wiki “manual”. It’s poorly organized and hard to follow, and has a menu bar that continually collapses and loses your place unless you open each page in a new browser tab or something. I think I could tolerate the program’s UI whims if it just had good up-to-date textual documentation. (I stress “textual” because right now, most of the good information seems to be in video tutorial format, and you can’t easily look stuff up in a video unless there’s a transcript, which usually there isn’t.) Spent well over an hour this evening working out how to make a simple vertical gradient in cycles, and that was too long.

  • Pingback: Blender: One Program to Rule Them All | Treetop Media()

  • Tim — I totally agree.

    Another issue with video tutorials is that you often have to sit through a lot of crap before figuring out what the video is about or whether it’s up-to-date.

  • Steve

    As a 3D artist who’s worked in a variety of 3D programs (3DS Max, Softimage, Modo), all 3D programs have bad interface design. I think it’s because 3D is kind of a niche market that doesn’t have as much market pressure to innovate, and because 3D artists see learning ‘Nintendo hard’ interfaces as some kind of a badge of honor. In fact, the only 3D program I know of that has even a moderately intuitive interface is Sketchup, as it was run by Google with mass market appeal in mind. Unfortunately, it’s pretty limited in it’s capabilities.

    Even with this in mind, Blender’s interface is by far the WORST of any program I’ve used. The smart-ass, kind of snobby attitude in the documentation / wiki doesn’t help either. I’m usually all for open source, but Blender is a burning pile of garbage run by people who don’t have a clue and I hope it dies the death it deserves.

  • Jimmy Gunawan

    Well, that is just full of bullshits. When did you last time use Blender? If you cannot use Blender, do not call yourself a 3D artist.

  • Steve

    I last used Blender yesterday. I’m doing a game mod where all the assets are in Blender and it’s just cemented my view on the subject. The only way to make Blender even moderately usable is to disable the clusterfuck called the ‘3D cursor’ and change the interface to 3DS Max interaction.

    But your comment just demonstrates the kind of dumb, brainwashed trolls Blender artists really are. There are 3D artists at ILM that have never touched your flaming dumpster fire called Blender and they are much better artists then YOU WILL EVER BE.

    I’ve used Softimage XSI since 1999, 3D Studio Max, Maya, Lightwave, zBrush – even Truespace, Terragen, and Bryce. You are fucking clueless if you think Blender has anything to do with being a 3D artist, and I bet you can’t accomplish a single thing in most of the programs I’ve used.

    People like YOU are the reason why Blender will NEVER BE ANY GOOD. Instead of taking criticism and trying to improve the program, you just whine about how people don’t love the all the bullshit in your favorite program. Blender is crap, and nobody will ever fix it, because they would rather get offended than make it work properly.

  • Jimmy Gunawan

    And people like YOU are why Autodesk eating all the 3D market.

    Blender has a different UI and ways of interacting with objects. Totally useable and good 3D artists can adapt in just a few days. They are all just tools and Blender is open source and powerful, if you cannot use it, blame yourself.

    You seem like an old school 3D artist with lots of experiences but you need to know things are changing in the industry. Tools are no longer $$$$ and like Blender anyone on any computer can create awesome 3D works.

    Adapt and blend or just disappear.

  • Jimmy Gunawan

    And you are using Blender for works? Hmm… typical free Blender user but saying bad things about it.

    If you want to learn, you need to unlearn. 3D cursor on left click? No worries.