Blender UI – reinventing the Wheel

I just ran across this proposal for imporving the UI of Blender. First of all it is nice that they are trying to improving one of the most confusing an not intuitive interface I have come across. It is especially also nice since they also recognized some design flaws, like having to set object properties before creating the actual object, which prevents adjusting the properties afterwards.

Another interesting point is to see how it could come that far; Blender was initially intended to be used by the same people who wrote it, which is a small audience that does not care about usability and interface standards, so you can define the UI the way you like it best. But as Blender became opensource the audience dramatically increased and Blender now is used in the context of a desktop, where standards matter.

But what I do not like is the way out of their “self written toolkit” trap; first of all the proposal says, that it is a good idea, that Blender looks the same across the platforms. But that is clearly a false assumption since meanwhile we know that “same everywhere” translates to “integrated nowhere” – this is even something that Mozilla after a lot of struggling acclaimed when they left out their key-lock concept out of firefox3 on Linux. This is also a principle all modern cross platform toolkits try to follow, but Blender wants to keep to its own look, which they want to improve instead.

This shows another problem of the “self written toolkit”; currently they have many problems with usability, because the toolkit is broken at a basic level, like there is no visual difference between buttons and a one out of many selection. Things that were available in GTK for years and which are documented in the HIG, so you can use them correctly.

So basically what we are seeing here is another lack of interaction between Open Source projects – instead of use (for instance) GTK and get platform integration and the experience of years with user interaction for free, Blender tries to fix their inherently broken toolkit and so to say reinvent the Wheel.

8 thoughts on “Blender UI – reinventing the Wheel”

  1. Why not? If they picked GTK, all of the QT people would want a port and no one from KDE would use it. Not to mention all of the heat from planet KDE. If they pick QT, same as above with the roles switched.

    It seems to me that they picked the solution that has the least number of complainers. Besides having pluggable backends which use whatever toolkit you want.

    On a larger level, I would really like to know what would happen if QT4 became LGPL on all platforms. It seems to me that there are only two things keeping the toolkits apart. The license, and a IMHO bogus language argument. Perhaps merging would save a lot of coding time and trouble. GTK3 could be a porting layer for QT4.

    My $0.02. Thanks for listening and caring enough to comment about blender.

  2. This criticism of Blender is simply due to ignorance. Blender does things the way it does for a good reason. For one: all the elements in Blender are scalable, which is impossible to do with GTK and QT. In the future many UI’s will be OpenGL based and then you will realize that Blender is way ahead of its time. The integration of the UI and the 3-D workspace is another. And UI consistency between platforms another.

    I do agree about the buttons, though. The visual clues for the radio buttons are confusing. Especially the fact that when you press a depressed radio button it turns it off and turns on another radio button. That is simply wrong.

  3. sure a OpenGL based UI is nice, but how this helps when things at the human interface level are broken? GTK and Qt are moving to Hardware accelerated now, because only by now the infrastructure is ready and they already got the basic things right.
    So rather than calling the Blender UI ahead of its time I would rather said, it has the wrong focus.

  4. Agreed on “reinventing the wheel”.

    I would point out though that GTK+ is very well centered on the Gnome HIG, so some of the defaults it does align with the HIG. In Qt, you make all of that yourself, save for some very small items.

  5. Hi all, I’m a total newby in all the discussion above toolkits an UI and found this discussion especially interesting because I’m studing GTK+ and blender UI in this days because I did find interesting the way blender split a single windows in multiple ones and would like to study a way to modify the gimp source code for having the same feature. What about this idea/possibility?

  6. As said Blender uses a custom OpenGL based toolkit. Gimp on the other hand uses GTK. These two are very different and not easily interoperable. In short: you wont be able to port anything from Blender.
    And there is already an effort in reorganising the Gimp UI for 2.8 – maybe you can join them – search for it…

  7. I don’t really care how they implement it, when the fundamental interface design is so wrong. Simple things like buttons, radio buttons and tickboxes all looking the same. The basic principle of UI design is that you should understand what a control is going to do before you interact with it. In Blender, not only is the underlying functionality hard to understand, but the controls themselves are – I can’t even tell until I click whether I’m about to toggle a setting or open a submenu window. The colour coding of buttons is a poor substitute, and inconsistent within Blender anyway. They have buttons which are really tabs, but don’t look like tabs even though Blender’s UI has perfectly good tabs. If only the User Interface Hall of Shame was still going…

    If Blender wants to succeed, it needs to become FAR more accessible. This elitist attitutude that you have to learn THEIR interface to use it just turns users off, and makes anyone who works with UI design point and laugh.

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.