There are two reasons for writing this post. First is that I frequently get asked by my fellow workers and other 3D artists why I don’t use Blender. Second reason is to point out the unique position Blender is at the moment regarding other 3D software.
First of all I want to emphasize that I have nothing against Blender and I am actually very glad that it is available free for everyone - thank you Ton.
The 3D package I currently use is Cinema 4D. Having tried many times to jump from C4D to Blender I have not been successful so far.For a hobbyist and for those who started out with Blender without dabbling in other software it would be a no-brainer choice. On one hand people who do not want to spend money on other software because Blender is free and on the other hand people who started with and only know the ways of Blender and nothing else. There are people who have jumped ship from other software to Blender. Most notably when version 2.8 came out. And I thought that I would also be one of these people. I have tried Blender on several occasions before version 2.8 but every time I came away frustrated. So when 2.8 arrived I was again hyped to try it out. It looked more professional and thought through. At that time the reason to familiarize myself with Blender was to create smoke and fire simulations. But like before I would come away frustrated.
Soon thereafter Cinema 4D went the subscription route. I despise software as a service model so that was the time I stopped my renewal and stayed on C4D R20. And that was yet another reason to start thinking of alternatives when C4D R20 would no longer fill my requirements.
Features wise Blender easily tops Cinema 4D R20. Native fluid simulations, unbiased GPU renderer with nodal materials, eevee, procedural modifier workflow etc. There is A LOT to like but despite this I do not want to use Blender. So what is the problem?
I know there are a lot of people who work professionally with Blender and are super successful at it. In this writeup I'm focusing more on my own problems that I have with Blender. And I’m very biased towards Cinema 4D. But as it is still widely considered to be the easiest 3d software to pick up and get going(because of the UX), it would be a good measuring stick - in my opinion.
A brief introduction of my work before I start my list. As a product designer I mainly do product visualizations and occasional short animations. This includes some rigging, dynamics, texturing etc. One unique thing in my work is that I need to import quite heavy cad models that consist of many thousands of individual objects with large polycounts. Largest model I have imported had over 8000 objects. Now granted some of them were instanced otherwise the viewport would have been unworkable. But still - that's quite a lot of objects. But other than that the usual stuff.
For those of you who have limited time. In short, Blender's user experience(UX) is a MESS.
Now do not get me wrong, Blender's user interface is beautiful. But UX and UI are not the same thing. UI is how the software looks and UX is the way it works/behaves.
The basic things like moving, scaling and rotating a 3D object.
In order to move an object you need to press the shortcut (G) and after activation you would have to pick the axis you want to move the object without seeing the movement gizmo. The problem I have with that system is that I always change the viewport viewing angle when I’m working in 3D space so the problem is guessing the axis I want to move it in. In actuality I don't even care what the axis is, I just know the direction I want to move it. So I end up constantly switching the wrong one because I have no sense of the axis orientation without the object gizmo. Same problem occurs with rotate and scale accordingly. Which brings me to the 2.8 update. From that update on Blender has a dedicated move, rotate and scale buttons on the left side of the screen. Pressing them will bring up the appropriate object gizmo. Absolutely wonderful. BUT the move button(or any other left pane buttons for that matter) does not have a shortcut key as such and you can not assign a custom one. And the default shortcut(G) or grab will not actually activate the move button and will not bring out the gizmo. (G) will activate the regular axis guessing game. The most probable reason behind this is that the long-time users wanted to keep the initial way of operation intact. Can not argue against that. But is it so difficult to give the buttons their own shortcut? Well they kind of have one. By default it’s Shift+Space and this will bring up a sub-menu near the cursor that lists the left pane buttons so you either can choose the desired button manually by clicking on it or NOW pressing the key shown next to the command (G for move etc.). So this clearly shows that this is just some quick fix and quite a convoluted way of doing things. Another workaround for this is to keep all(move, rotate, scale) the gizmos active all the time. But this is also not a very good solution because I often use what’s in Cinema are called axis bands, the little squares between two axis that enable you to move an object in two axis at the same time while locking the third. I don’t know what they are called in Blender but they are super useful. And they are missing when I turn on all the gizmos by default. And working like this is quite frustrating because you would have to precisely navigate through all the other gizmos to pick the one you want to activate.
Cameras.
I usually have over a dozen different cameras for any given project for different angles and camera settings. First problem. As far as I know Blender lets you choose the active camera. So when you want to look through the camera you would need to press the shortcut numpad 0. You either need to memorize that or go searching into the menu under view-cameras-view to camera. And this will switch your view to the “active” camera. Say you have 10 cameras. And let's say you have camera 1 as the active scene camera. But say I want to see through camera 5. So I would need to set camera 5 as my active camera and then I can jump to that view. Why do I need to make so many steps for this? As a comparison, Cinema 4D has all the scene objects listed in the outliner like Blender. And switching cameras in C4D is as simple as clicking on the camera view icon next to the camera, you want to look through, directly in the outliner. No need to dedicate the camera first and then switch. So you can jump through cameras very fast just by clicking the camera you currently want.The other thing in cinema is that when in camera view the camera movement is on by default. This means that when you are looking through the camera view and navigate your view you actually adjust the camera position also. In Blender you need to switch on the lock view checkbox first. Otherwise you will just navigate off the camera view. Now whether this is on by default or not is up for preference. Could work either way. In Cinema I sometimes forget that I'm in the camera view and navigate my camera away from the position I wanted it to be. This is one problem with the default navigation view camera lock. To prevent this, Cinema has a protection tag you can apply to any object in the outliner to restrict either its movement, rotation and scale. So for the cameras I do not want to move by accident I apply this tag on them.Second problem. Camera creation. In Blender when you create a new camera it will appear in the world origin. So when you want to move the new camera to where you want, you would then need to first activate the newly created camera. Then switch to the camera view. Then lock navigation to the camera and then navigate it to the correct place. I believe there is also some clever shortcut business for that but I think you still need to make the newly made camera the active one before activating the shortcut. BUT what if, when you press the new camera button the created camera will match your current view? So creating and placing new cameras is as easy as navigating the scene and clicking the new camera button and you’re done. This is how it works in Cinema.
Object grouping.
In january 2021 Blender guru posted this in his Twitter feed.Andrew Price
@andrewpprice
Interesting perspective. Anyone know if collection transforms (with quick pivot changes) are on the roadmap?https://www.youtube.com/watch?v=P_RcY0wtfSg&ab_channel=AndrewHodgson
Link to the tweet: https://twitter.com/andrewpprice/status/1345103190828539905?fbclid=IwAR0ti4CPKflF448PCVLn-Tw7jqvr8MBHViS6coW8VZoe4bBAAxbfGbE0ZT8
As only a Blender user I can understand that this would be an INTERESTING PERSPECTIVE :) It kind of begs the question what else other similar software are doing differently besides grouping. BTW that still works the same way it has always worked. Apparently a non issue…go figure.
The outliner.
As simple action as hiding objects from view. Clicking the eye icon on a standalone object is all fine and good. Works the same as in other software. Now when you have some objects parented under an object or under a null and you click the eye icon in the hopes of hiding the parent and all the children along with it. What really happens is that the object that will be hidden is only the parent object or when it’s a null then nothing will actually happen. All the children will remain happily visible. Why is this a problem? Well other software that have some sort of a hierarchy, be it layers or object trees, actually work in a way that when you have the so-called parent and you hide it then all the children will hide with it. Many other software behave like this. After googling around I learned that when I hold down Shift and then click the eye icon then it will work the expected way by closing all the eyes of the parented objects in addition to the parent. Why this extra step? When I hide the parent then most of the time I also want the children to hide with the parent. I know there are cases where you want other outcomes but then you could use the SHIFT modifier. I don't know, maybe I'm wrong. The UX development work in that regard has been already done in other or similar software. Why not do it similarly?(It’s like the right click select all over again). Second beef with the outliner. Similar to the previous in some way. Drag and drop parenting again is something that requires the use of other modifier buttons to achieve. I guess that Blender users are so enveloped in doing all things via shortcuts or popup menus and the outliner has not received as much love as other parts of Blender. Overall working in it is super tedious compared to Cinema 4d - then again the whole Cinema 4d workflow revolves around the outliner. I could not imagine working and organizing a cad imported model that has thousands of separate objects, groups etc. And this is my everyday work.
A minor nuisance I have. Say you create a sphere. Why is smooth shading not the default shading? Usually I want smooth shading right off the bat so, why? This is again personal preference but unless you are a low poly artist then this is again an extra step you could remove.
This is more of a wish and it’s kind of already solved by the asset browser. Materials. They are hidden away in some dropdown list. I would like to see all my available materials in a separate window/shelf with a big rendered shaderball. When texturing I can easily pick out and drag it to the desired object. Similarly like in other software.
Also the simulation workflows seemed kind of convoluted when I tried to get fast results. Turbulence FD for comparison is a lot more productive.The first four are the biggest pain points that I have experienced while trying to bend my head around Blender. You could say that this is nitpicking but they are the most used actions you do in any 3D program and for me they are enough of a hindrance for migrating to Blender - for the time being at least. Until then I'm going to stick with Cinema4D. I see that Blender is getting better fast but it’s focus is more on adding even more features and not enough on organizing/streamlining the user experience of the existing stuff.
REASON nr 2
The second reason for this post. Blender is currently in a very interesting position. As noted before Blender already has all the features and more to compete with any 3D software on the market. But currently I see that the competitors are raising their prices. That means that they see little threat from Blender in that artists would want to jump ship to Blender.
What the developers now need to do is to hire willing UX designers who will dare to take up the monumental task of reorganizing and streamlining Blender’s user experience. If Blender manages to lower its learning/using curve to a similar level as Cinema 4D or even lower, then things will get very interesting in terms of paid software prices. Unless of course the developers do not want to upset all the existing users who are already familiar with the ways of Blender.
Because Blender is free, the developers have no pressure to sell their software to anyone. So in essence they can add what they want and they do not need to listen to the customer feedback as critically as other software developers because they do not actually compete for the market share with other software providers. On the other hand because they do not need to sell it they can change things around regardless of what the existing users think. If you do not like it, don't use it. So that enables the developers to take the software in new directions regardless how the users feel about it. For example 3DS Max(and other paid software) developers do not have such luxury in my opinion - The more time goes on the harder it is to change how the software operates - without fearing to alienate the existing users.
Blender people are proud to be different. And I'm all for that, but only if it's better than other ways of doing things. Maybe some of you are familiar with the latest version of Cinema 4D (R25). That version introduced a new UI that resembles Blenders UI - good job Blender. So, Blender development team, use the same logic. Look at what other software is doing better than Blender and copy it over. Or make an even better solution not just different but actually better - like the UI example. Being different just for the sake of being different does not justify it, in my opinion. Being different by being better.
Anyway that’s all I wanted to say for now. Im eagerly keeping my eye on the development and waiting for the time when I feel comfortable enough to jump to blender and never look back. Feel free to elaborate or make counter arguments or anything that comes to mind you want to share about this topic.