It still is difficult to approach, but it has come a very very long way and is almost on par with commercial packages wrt usability.
It still is difficult to approach, but it has come a very very long way and is almost on par with commercial packages wrt usability.
- having a stable plugin API that is not Python based is a must for many studios that are working with large computations. A stable C or C++ API is a must for them, versus having to patch and recompile the entire application from source.
- Allowing the plugin API itself to not be beholden to GPL. This stops a lot of commercial plugin developers from supporting Blender.
- Better large scene performance. Right now blender absolutely chugs compared to commercial apps when your scenes get larger
- better undo performance because it's effectively saving a copy of the whole file again per undo.
- potentially more ingrained support for Pixar's USD toolset including a Hydra stage view. Which would open up access to a lot of commercial renderers, but also offload large scene handling to the Pixar stack instead.
The leadership have been resistant to a lot of these over the years. But they seem to be coming about to the value of playing well with existing toolsets rather than being the do-it-all that doesn't fit in well.
I am hopeful with their current trajectory after the revamp of the 2.8x series that it'll see further advancements in the areas I mentioned.
Chaosgroup solved that problem by using the process boundary. They have an integration plugin in GPL and then execute a standalone version of their renderer that they offer separately.
It's not as tenable for things like deformers etc that need to feed data back in to the scene every frame. Well.. at least not without severe performance repercussions.
Some highlights:
- Any panel can be positioned/sized however you like
- You can create custom named layouts for your own common workflows
- Fully extensible via Python plugins (create new UI panels, menu items, hotkeys, etc.)
- Anything you can do manually can be scripted with python
- By default, (although this has changed some) the more-frequently-used hotkeys are single-key. And of course it's all configurable and (if I remember correctly) they have presets for matching other apps like 3ds max / maya.
- searchable commands palette (press [space], start typing command name, press [enter] to execute command)
- on load / "new file": it loads [something like] "default.blend" instead of a hard-coded set of defaults, so that you can configure its definition of an empty file (which IIRC also includes the default layout configuration). To make it quick+easy to change, you can set with menu option [File]+[Save Startup File].
- Windows can be broken out and dragged to a separate monitor
- Lots of highly-specialized UI widgets. e.g. inline ranged slider that captures the mouse on click and adjusts the value as you move the cursor, has a "progress bar" to visualize the percentage, allows keyboard entry if you single-click instead of click+drag, has arrows on left and right that can be clicked to step forward/backward, has label inline with widget, and has description on mouseover
- Generalized interactive timeline for animation and sequencing
- Powerful node-based editors for shaders, textures, etc., with nodes for each stage of the pipeline and utility nodes to apply transformations (e.g. add a node for a source image, draw a line from the image's color output to the input of a "brightness" node, etc.)
And not only can you use it for the obvious 3D tasks, but it can be used as a non-linear video editor (including things like cross-fade of audio and/or video, video superimposition, textual overlaying, cropping, stretching, mirroring, color manipulation, option to use 3D scene output as video input, etc.), shadeless 2D raster/vector animator, 3D printing, and probably other things I don't know about.
Blender UI is great, but Cinema4D UI is arguably better. I've used both for 10 years.
I think most engineers and designers forget that they're just tools. Vim or emacs? PyCharm. Whatever works for you. Stop letting tools define your craftsmanship. This comment reminds me of pixel peeping that most enthusiast photographers do...comparing MTF curves for days. How about going out and taking pictures, learning composition and narrative, story telling and photographic experimentation? But they're too enslaved to their tools.
I guess that too can be a hobby?
But I found this horn-tooting about Blender and saying that its superior to every 3D software out there is a stretch if not flatout wrong.
Ever used Houdini? Yeah, it's not totally free but it's free for non-commercial use. It will blow your mind what it can do: https://www.youtube.com/watch?v=MIcUW9QFMLE
The Houdini UI is nothing short of absolute genius.
I don't see Blender ever competing with Houdini. Like...ever. Because, it is fundamentally a different take on 3D content. It does the same thing at the end (3D content), but the way it does it is different (procedural). Better IMHO, but I could be biased.
Does that mean Blender has no place in the sofware ecosystem? No. Can we me a bit more pragmatic, stop horn-tooting and objectively look at the 3D software landscape as a whole? Yes.
Moreso - the tool tip for each button / text box lists the python code needed to call that function / edit that value - so it’s not just “anything that can be done manually can hypothetically be scripted”, but “if you can do it manually, then you just need to look at the tooltips and write them down into a text file, and you’ve just written a script to automate your workflow”
I heard more than once during that gig that “Blender is not CAD” even though we were doing everything possible to bring it closer to being so.
But with vertex values, those are created directly in Blender’s C layer, so no possibility to make those values have 64-bit accuracy if that is important to your application or external library.
I am in agreement that Blender would make a fantastic environment to pull together many open source scientific and engineering libraries, but the vertex accuracy is the one major drawback there.