91 comments

[ 3.3 ms ] story [ 159 ms ] thread
Really happy with the direction Blender is going, more polish and better outreach. Just scrolling through and being able to see the before/after for new features is amazing, makes it really easy to share with friends who haven't checked Blender out before.
Right? I also find the accelerating growth of their dev fund really exciting. Somehow this software just keeps getting more promising!
Well that was fast considering how long the 2.8 lts release series took...
One exciting thing is two long-standing reworks (GreasePencil for 2D art, and new Sculpt mode) landed in 2.8x and now are being iterated on.
Grease pencil is a feature that needs re-naming as it is now so much more than it was at the time it was originally named.
IIRC, they actually announced they’re changing how version numbering works starting with 2.90 :)
They messed up on the versioning; 2.8 should have been version as 3.0
Blender is as far as I can tell one the best run and marketed Open Source projects out there. They seem to have a great way to pay for development. They are have a lot of industry invested in their success. They have a great focus on the end power user.
They got $1.2M from Epics megagrant last year, and has lots of people and companies donating. They are slightly above the goal of funding 20 full time employees. I'm happy that an open source software have been so successful. It's come very far since when I first used it, version 2.42 I think.

Shoutout to those donating (and how to contribute): https://fund.blender.org/

Someday when I can afford to pause taking a paycheck for a while, I am going to figure out how to reproduce this sort of model for numerous other applications. At least, that's my dream.
Do it for messaging!

Make what WhatsApp was:

- independent

- financially sound

- user friendly (ux)

- respecting users (privacy)

Add in what Telegram provides today:

- bots

- sign in

- payments

In addition: do tie yourself to the mast somehow so you can't give in to the siren song of Facebook or anyone else.

Just make sure that millions of people use the application, that it's a niche application that no one else makes a competing version of at the same price point, and that giant corporations give you millions of dollars to keep making it. Boom, success.
Godot is slowly but surely moving in the footsteps of Blender. What you need is to craft your app and gather a loyal crowd who see a future in it. People skills are paramount, because here is where tons of open source projects fail to inspire. Set patreon like goals and hand off side projects to like minded devs. Blender also had its yearly feature reels and projects that helped its way to the limelight.
The open movie projects are a large reason for Blenders success. It moved the focus from "Deliver developers pet feature" to "What do we need if we want to produce this kind of a film short."

It put the focus on Blender as a tool for delivering actual film instead of various disconnected features. Roadmap focus is one the harder things for a creative OSS tool to get right.

I started using blender around the 1.6x mark I think, back in the 90s. It was the only 3D software I could afford (you could unlock features with a c-key back in those days, I still don't know what c-key means) that would also run on IRIX. I had an SGI o2 back in those days and no clue about how to use any of it.

Blender was difficult to learn, but it was a lot of fun and thankfully the community was extremely helpful with tutorials and what not. When NaN (the company that developed Blender) went belly up in the early 00's I like many others had absolutely zero confidence that Ton and gang would be able to raise the $100k to buy out the IP from the venture capitalists who'd invested in NaN, only to then give it away for free and open source to boot.

It sounded absolutely mad, and I'm overjoyed that Ton and gang managed to prove doubters like myself wrong. Here's to hopefully many more years of success!

> …it was designed to allow those who paid, faster access to new features. For whatever reason, the C-key was dropped, and eventually replaced by the requirement to purchase a Publisher license.

https://blenderartists.org/t/what-is-the-c-key/297959/2

Right, I know what the c-key did but I can't recall ever learning why it was called a c-key. What does the C stand for?
I would guess “commercial” key, like a commercial license for a software.
It's also one of the most impressive technically, up there IMO with the likes of gcc and linux.

The amount of non-trivial tech built into it is staggering, and - most impressive, at least to me - the feature bloat has been really well managed, first from a usability perspective, but more importantly, from a performance perspective: blender remains, for many things, the fastest thing there is out there.

If you want to convince yourself of that fact, try to load a rigged 1M poly scene stored in native blender format, and try to do the same thing with the Mayas and other 3DS maxes of this world.

That's great news. Glad to see Blender keep moving forward.

One thing I wish they would add is to export the color information along with the vertices in the Wavefront OBJ file when exporting an model.

.obj files don't hold any material information. When you check "Write Materials" in the obj-exporter properties (should be enabled by default) it will also export the materials to a separate .mtl file and reference them in the .obj file.

Edit: see also here: https://en.wikipedia.org/wiki/Wavefront_.obj_file#Material_t...

That's a very straightforward extension to add, and if Blender does it, its popularity will ensure everyone else picks it up.
This has been supported in Blender since the dark ages, eg.

https://blenderartists.org/t/objs-and-mtls-how-do-you-work-w...

Most artists don't really seem to work with OBJ anymore anyway, it's an ancient format. I only use it when working in conjunction with ZBrush. Most people have moved onto FBX (especially for rigged meshes) and glTF is the new format that supports way way more:

https://www.youtube.com/watch?v=6IWKWT_2_Ls

https://forums.unrealengine.com/development-discussion/conte...

There is an "extension" to .obj where vertex colors are added to the v line, like

  v x y z r g b
But this stores a color per-vertex. Vertex colors in Blender, like UVs, are per-corner-of-poly. The ideal way to store vertex color information in .obj would really be

  vc r g b
  p v1/vt1/vn1/vc1 ...
As it is, exporting per-vertex colors would require splitting a vertex into multiple vertices, one per distinct vertex color that it uses.
That's what you do with normals anyway, right?
Normals are specified per-corner-of-poly in OBJ, just like UVs.
I wish there was support for Metal on macOS for EEVE.
As a long-time Mac and Blender user, I used to be in the same camp. After looking into it though, I found out implementing Metal support would take thousands of developer hours, and knowing that I think I would rather just trust the Foundation to put those hours towards other development that would benefit more than just Max users.
The new search will be great for people like me that only use Blender sporadically. I often know what I want to do but don't use it often enough to remember where to find it or the shortcut. And even for regular people it can be great, I use "find action" in IntelliJ all the time just because writing the name of a seldom used feature is faster than navigating to it.
Searchable menus should be standard at this point, they're so handy in macOS, and Unity had them while it was around.
This is also handy in Reaper with its 5 billion actions.
"The new shadow terminator offset setting helps you to avoid shading artifacts with smooth normals on low-poly meshes."

THANK GOODNESS, man those shadows always looked so ugly. I primarily use EEVEE so this makes me happy.

I scrolled down a page or two...

> Meet Nishita, a physically based texture built-in Cycles.

I think the hyphen shouldn't have been added. The sentence doesn't parse with it present.

(comment deleted)
seriously impressive, we're on an exponential
It’s so exciting watching that dev fund number climb faster and faster. I mean just in the past year donations grew by about 20%, and seeing so many new corporate sponsors join up too...

It’s just inspiring.

This is great, but I have to say, I'm a bit concerned about multiple Intel tools (Embree, OpenImageDenoise) that are now integrated into Blender. The tools seem to depend on Intel MKL, which has famously been crippled on non Intel CPUs.

The big concern, for me, is the wide usage of Blender in common CPU benchmarks, which potentially could give Intel an unfair advantage in those.

AMD can contribute their own tooling if they feel it's worth it. They aren't broke.
AMD helped pay for the development of the OpenCL backend for cycles. Before that cycles gpu support was limited to CUDA. They actually hired a developer to work on it full time.
As a user of blender on AMD GPUs, they should probably put a little more effort in. Many of the shaders used to render scenes in cycles from 2.82 onward crash, and therefore make it impossible to use an AMD GPU to run cycles.

I'm surprised they don't push their ProRender renderer into the main release. I can't tell if I like it or not

I tried to play with ProRender a while ago, because we had a few people working in Blender who had to suffer with lousy performance on Cycles on our iMacs, but because ProRender requires a bunch of different settings, our artists would have had to migrate existing projects, as well as (potentially) their workflow, to what ProRender supports.

I couldn't tell if that was "everything, but differently" or "most things, occasionally", or some other venn diagram of confusion, and they didn't have time to figure it out because they were busy doing actual work, so we just ended up paying some company that apparently has massive render cluster that you can rent out for basically pennies.

The most common reasons for crashes are outdated graphics drivers with bugs and/or hardware below the minimum requirements [1]. If you think you've found a bug in Blender please report your issue on the bug tracker [2] (Help > Report a Bug in Blender).

[1] https://www.blender.org/download/requirements/ [2] https://developer.blender.org/

Indeed I have actually tracked and posted a few bug reports on the blender forums. I'm running an AMD 5700XT and an R5 3600 so I sure hope my configuration is supported! My only concession is that I had to download the "optional" driver for august in order to get Microsoft Flight Simulator 2020 support.
Thank you for reporting bugs and helping improve Blender! Every AMD graphics card that is GCN first generation or later can be used for running Blender [1]. GCN second generation or later is required for GPU rendering [2]. Unfortunately the AMD Radeon RX 5700 XT does seems to be affected by some technical issues, that are still under investigation. Might be a bug in Blender or an issue with particular OS, hardware and driver combinations. See ticket T75319 for updates on this problem.

[1] https://www.blender.org/download/requirements/ [2] https://docs.blender.org/manual/en/latest/render/cycles/gpu_... [3] https://developer.blender.org/T75319

I fail to understand what your point is.

Or, rather, I sincerely hope you are not suggesting that the deliberate crippling of compiled code on competitor cpu is solvable by "just make your own compiler"

That would suggest a fundamental lack of understanding regarding the whole issue to begin with.

Perhaps instead you are suggesting that if AMD doesn't wish for its users to suffer poor performance due to said issue, they should provide an alternative implementation of any library compiled with ICC?

Surely that cannot be what you mean? That would be absolutely ridiculous.

Neither Embree nor OpenImageDenoise use MKL. OpenImageDenoise does use a fork of mkl-dnn, now called one-dnn, but it has nothing to do with MKL.
From the oneDNN documentation[1]: > The library is optimized for Intel Architecture Processors, Intel Processor Graphics and Xe architecture-based Graphics.

Now, whether "optimized" means tuned for Intel architecture, or crippled for other architecture, is something to be figured out. Given the precedent set by MKL, I wouldn't trust it to be the 'tuned' option. Someone who speaks C++ may be able to better discern if such concerns exist with one-dnn.

[1] https://github.com/oneapi-src/oneDNN

Full disclosure, I work with the team behind Embree and OIDN. I've never personally worked with oneDNN. I'll just say that we test our code on Intel CPUs (obviously) and therefore optimize performance based on those tests. We don't have AMD CPUs readily available to test with (as you might imagine).

However, since all the code is open source, third parties often do benchmarks across platforms. Michael Larabel from Phoronix does a really good job of this.

https://openbenchmarking.org/test/pts/onednn

> We don't have AMD CPUs readily available to test with (as you might imagine).

I mean, it makes perfect sense to me that Intel would only care about optimizing (or even supporting) their software on Intel chips, but I'm sort of surprised that you don't have AMD systems to test on just to compare performance.

Wouldn't it be something that you (or management, or whoever) would want to know if you were about to release a version that had much worse performance on AMD systems because of a regression ("Intel is intentionally crippling AMD CPUs!") or much better performance ("Intel released a new update but it runs better on AMD at half the price lol")?

If it's a small team then you may not have the budget (or want to spend it on that), but surely it would be nice to know either way?

Thank you for replying. This assuages my concerns behind Embree and OIDN.

I guess I just get suspicious whenever I see MKL mentioned.

But you're the one that first mentioned MKL. You made yourself suspicious.
Embree doesn't use MKL, and in fact, the code runs very well on AMD machines, as can be seen by any recent Cinebench version benchmark (of which AMD themselves often show the result) which utilises Embree for intersection.

What will be interesting is other architecture support entirely (ARM) possibly being added to it by contributors. I doubt it will happen, but Intel did accept patches for TBB for ARM and POWERPC, so it's technically possibly...

I'd love to see blender expand into precise modeling area more (CAD).
Strongly agree, and I'd also wish they took a shot at the Architecture market (god knows Autodesk and Archicad sorely deserves the competition) but it's not easy to build a product that fits all possible uses cases, especially when the initial focus of the app was SFX and animation.

Specifically, for CAD, blender lacks IMO two fundamental things:

    - a strong NURBS engine, complete with filleting, trimmed NURBS, CSG, full brep, etc.. (something at least on par with OpenCascade).

    - a node-based (à la Houdini) modeling system to do full blown paramaterics. The current destructive + Undo/Redo model is simply not strong enough for serious CAD used.
For the latter, there are add-ons (e.g. sorcar, sverchok) that try to patch the gap, but they all feel like band-aids when you try to really put them to work.
After spending a lot of time working on the code for SolveSpace, I can say NURBS are hard. Conceptually not bad, but in practice there are a lot of complex or tricky things to do well. My hope is to one day write a new NURBS kernel in Rust. But first I need to find good solutions to those tricky problems.
I’ve recently been picking up Fusion 360 for use with a 3D printer and I’d love to be able to model this precisely with blender. I don’t love having my projects live in someone’s cloud service (for non commercial use) where they could vanish at a moment’s notice. Tried FreeCAD which is in the same vein of parametric mechanical modeling, but had a lot of trouble getting anywhere productive.
Agreed. What I wouldn’t give for an Inventor-esque sketch-based parametric workflow.
Definitely. It's pretty much impossible to do parametric modelling at the moment, unless you're willing to resort to generating entire geometry from python.
I know this is a thread about Blender but FreeCAD has been making good progress in that area. Parametric sketching is still different from some of the commercial packages but reasonably functional.
How is blender compared to competitors? Are people starting to use it as a professional tool?
Most people like to stick with what they know, e.g. 3DS-Max is still very popular, despite being a slow, outdated bugfest with a terrible interface.
I work exclusively using Blender doing professional product visualization. It’s really an incredible triumph of open-source software.

EDIT: I actually haven’t tried Max or Maya, but then again, I haven’t needed to. Blender’s feature set has been perfectly capable for my needs and use cases.

I think that Blender has pushed Autodesk and Side-Effects to recently offer vastly-reduced price "indie" licenses for Maya, Max and Houdini. There are some limitations, of course, particularly a maximum revenue limit of $100K/yr, the licenses can't be used in the same pipeline as full-license seats, etc.
It has significant professional following nowadays, including media studios - for example, Hideaki Anno's studio that was responsible for the Rebuild movies AFAIK switched 3D modelling fully to Blender for the last movie, including pledging non-trivial amounts of money to development of Blender itself.

The reasoning included the part where they can simply sponsor features earlier for specific needs.

I work in feature film and game cinematics, where Blender is still a toy.

An increasingly interesting toy since 2.80, but it'll take a killer-feature to tear a studio or artist away from their tool of choice. Houdini for FX is still unmatched, Maya for character animation is still unmatched, ZBrush for sculpting is still unmatched, and so forth. As of this writing, Blender does each of those increasingly well but not as well, and certainly not well enough to warrant a transition.

That said, ZBrush started as a really good hobbyist tool and grew from there. I wouldn't be surprised if Blender took a similar route.

Even if Blender can't match any of these point solutions at their respective niches, I have to imagine there would be a ton of value in a team that all mostly works in a common tool they all know well a pipeline of Maya, C4D, Modo, Nuke, Houdini, Zbrush, etc strung together.

I'm just starting to learn Houdini, but with the OpenVDB support in Blender it seems like the most elegant workflow for someone without existing experience is run simulations in Houdini and then just export the volumetric data to Blender and work with it there.

More and more studios are starting to use Blender. For instance Tangent Animation used it for their movie "Next Gen" that is on Netflix.
I used Blender extensively the last few weeks for a prototype project. It's really a great piece of software but when it came to baking/texturing/painting my models (game assets using the PBR workflow) I grew more and more impatient with the build-in tools it offers .

So I gave up at some point and following some suggestions I finally tried Substance Painter to do these things (Industry standard). Using both tools in tandem was a real game changer for me. Definitely would recommend it if you want to speed up your process. I am sure all this can be done in Blender but it will be a pain to do so.

Some things I was missing within Blender:

- Baking and baking groups (it's extremely annoying to select all the objects each time but I have seen a few extension who help with this process)

- Painting on multiple layers at the same time (e.g. paint a PBR material on a PBR material)

- A non-destructive workflow with support for the above

Nevertheless I love Blender and I would like to be able to use their UI-Framework for my own applications because it works just great.

There's nothing wrong with using multiple apps to get what you want. That's what the pro VFX houses do

A typical pipeline might be Maya for modeling, ZBrush for sculpting, Substance Painter for texturing, Houdini for procedural/dynamic effects, Nuke for compositing, and Renderman for generating the output.

Nothing at all wrong about picking the best tool for the task at hand.

Sure, I mean these are one of the best tools for each stage (and they are all not free). But all of it can be done in Blender too in some way or the other saving you from the upfront investment.

I just wanted to highlight the texturing because I really didn't see a way how to achieve my results without going with a commercial product. So based on my experience Blender is lacking quite a bit of features in that space.

I mean, I see the downvotes on my original post but I have the feeling that people tend to praise Blender without even using it productively.

Edit: Can't edit the original post but here are some open tickets about these things if somebody is interested:

https://developer.blender.org/D3203

https://developer.blender.org/T68896#988891

Having recently started trying to learn to make and setup game assets (I can do CAD but not rigging etc.), I was really shocked how much cleaner Blender is compared to Maya.

I'm aware Maya is more powerful for some tasks, but - considering that other Autodesk tools are not too bad - Maya genuinely nearly put me off doing it at all.

After trying blender for the first time the other day I was amazed at how good the interface is for an open source program, it feels really modern.

I'm used to open source programs usually having pretty janky/outdated interfaces.

You’re lucky enough to have started in the post 2.8 era :)

Things used to be a lot less user friendly interface-wise. It was a major weakness of the program until 2.8 launched and magically fixed everything. The Blender Foundation is REALLY good about interacting with and gauging the needs of the community!

Honestly, as a long term user, 2.8 is not that different to 2.6. From 2.4 to 2.6 was a much bigger jump in terms of UI improvements.
It must be a really fun job to be the person that just makes all these different demo scenes to show off new features
Recently on HN someone mentioned the core UV tools were lacking. Now the release notes highlight several improvements in that department :)
I've posted this before but it feels appropriate again...this Blender example of green screen VFX was created by a single person and demonstrates the amazing skill of the film-maker and how powerful Blender can be. It's really impressive work:

https://twitter.com/DrewCoffman/status/1274743473732632576

Ian Hubert (the creator of that video), is arguably the best public creator in Blender VFX currently. His YouTube tutorials are fantastic and entertaining as well.
We need more open source software modeled off of the blender system.

Imagine if customers of all the major closed-software players also put aside some small amount of funding to support full time developers of open source systems.

This benefits everyone, because it gives these customers some potential future leverage for lower prices, it gives the closed-software players some competition to keep them nimble, and it benefits the next generation of users who can’t afford the closed-software prices, but could get their fingers wet with less capable software.

In my experience, a lot of open-source systems are managed by terrible teams with their own priorities or ideas, regardless of what the actual community wants.

For example, The GIMP has been notorious for this for its entire history, and it still is[1]. I remember ages ago, the discussion basically went like this.

> "Thanks to The GIMP, people can ditch Photoshop and Windows and move to Linux and an open-source workflow!"

> "But The GIMP doesn't support a lot of features, like CMYK color."

> "Sure, but nobody actually uses CMYK color though."

> "Literally everyone who designs for print uses CMYK color, like print shops, magazine editors, etc., and that's a huge market."

> "Well it's open source, so if it's so important to you then fix it yourself!"

> "But I'm a photographer and magazine editor, not a programmer, so I'm just going to keep paying someone else for software I can use, instead of switching to a free version of something that literally refuses to add the features I need."

Cue tons of Slashdot comments talking about how non-technical people are so rigid-minded that they're not willing to learn anything new and just make excuses instead.

Blender is an exception, not just because it's an open-source success, but because it's managed by a team who are building it for the people who need it, and not just to stick it to closed-source companies by making a pale imitation of a production app, an all-too-common scenario in open-source development.

[1] https://medium.com/linux-gossip/the-gimp-has-a-marketing-pro...

The size of the (potential) user base matters.

Back in the early 2000's, I did several workshops on Ardour (DAW) in the same context that Ton and others were doing workshops on Blender (sometimes in the room next door).

Without fail, the Blender workshops had 10x more people than the Ardour one.

Everybody knows that to do computer generated imagery you need only a computer, and skill. There's a LOT of need for computer generated imagery. The use cases extend far outside the obvious ones for Blender.

For a DAW, most people understand that you probably need significant musical skill (which may or may not be true, depending on the genre of music you want to create). And if you're not actually making music, you probably don't need a DAW.

The result is that an app like Blender has a user base at least as large as that of several DAWs put together (probably not all DAWs, but several of them).

This changes the nature of the type of ecosystem (development, funding, user community) you can build around the software.

my main wish is for improved undo performance
Kudos to the team for the excellent work and for the flashy, yet useful release page!
Newest Blender on Raspberry Pi seems to be 2.7, which works surprisingly smoothly under a 64-bit OS. RPi4 has 96 Gflops of CPU FPU power, making it a reasonable option for 3D-rendering for kids.

I hope there are chances to get 2.9 to run on Raspberry Pi, especially once RPi Vulkan support matures.

How's Blender Vulkan rendering path doing? Is is possible to use it instead of OpenGL one day?