Let's not get ahead of ourselves, Blender has done far better than most open source software but Maya is still very much the industry standard. I don't think we can realistically say that Maya is beaten until Blender is battle-proven to the same degree, on the most demanding real-world production workloads (think Pixar/Weta), which for now it hasn't been.
What Blender achieved is that lots of university programmes have started teaching Blender or becoming 'tool agnostic'. Studios have also started diversifying their pipelines (this coincidences with studios adopting Unreal and increasing usage of Houdini).
So while Maya is currently the standard, I don't believe that it's growing.
It'll probably be around still in 20 years, with lots of studios having built their pipelines and tooling around it, with lots of people being trained in it, and because it's at the moment still better than Blender in some aspects like rigging and animation (afaik).
> on the most demanding real-world production workloads (think Pixar/Weta), which for now it hasn't been.
Super small nit (or info tidbit), but it doesn't take away from your overall message regarding production and scene scale.
Pixar does not and has not used Maya as the primary studio application, it's really only used for asset modeling and some minor shading tasks like UV generation and some Ptex painting. The actual studio app is Presto, which is an in-house tool Pixar has developed over the years since its earliest productions. All other DCCs are team/task specific.
Dreamworks is similar with their tool, Presto, IIRC. Walt Disney Animation Studio (WDAS) does use Maya as the core app last I saw, but I don't know if they've made any headway with evaluating Presto since 2019...
Agreed. You haven’t really won until it stops becoming noteworthy and “oh look X is using Blender!!”
Nobody talks about how Linux dominates the server space anymore. Nobody talks about how “git is winning” or getting “battle tested”. These are mundane and banal facts.
I don’t believe the same has happened to Blender yet.
That is not a very big studio or very big production, Blender falls over in the pipeline department. It’s a constantly changing API that doesn’t allow for the extensibility needed to get a major project out the door, just the fact that only a Python API is provided is enough for most people who have worked on massive scenes with massive amounts of data to consider it a non starter.
Saying Evangelion isn't big is like saying Minions are some irrelevant little flick. Evangelion is quite possibly the biggest series in Japan for 3 decades running. You won't find a person who has not seen it to some extent. Evangelion goods are sold everywhere at all times. You really cannot escape it. For the biggest series in Japan to use Blender is a huge sign to the rest of the industry in one of the most risk-averse countries that yes, it's good enough.
A relevant opportunity may not occur again so here is a great video by Red Bard on whether it's possible to live entirely off of Evangelion merchandise: https://www.youtube.com/watch?v=_0Qr9rztRw4
The same way Star Wars was still running in between the original series and the prequels. It had an active fan base and lots of side content that was constantly being produced.
I'm sure "major project" is a subjective label, but Flow made headlines earlier this year with an Academy Award (Best Animated Feature) and Golden Globe (Best Animated Feature Film)
Flow is good filmmaking expressed through low-tech production, which is totally valid, but it doing a lot with a little isn't going to stop Disney from one-upping themselves with the next Zootopia movie so Blender needs to handle that angle too if it's going to become a catch-all solution for all kinds of production.
For sure, it was made by a small team and rendered on a single computer using the Eevee renderer (the fast partially-rasterization one). It's a major project, just not an enormously huge bleeding edge major project. Here's hoping Blender can keep on rolling toward those types of capabilities.
Not disagreeing that usage in large productions is something that Blender isn't really designed for, but I don't think that it's for a lack of Python API features (if a studio wants something specific it could just maintain an internal fork) or the ever changing Python API surface (the versions aren't upgraded during a production anyways)
VFX studios have been using Python APIs for twenty+ years, backed by C. They were one of the first industries to use it. That's where I learned it, around the turn of the century.
3.0+1.0 was the highest grossing box office release that year in Japan and has a worldwide fanbase. The original series + End of Evangelion are considered by many critics and fans to sit among the best anime series of all time, and the Rebuild movies were absolutely huge.
Personally, I think they pale in comparison to the original series and lose a lot of what makes Eva special and interesting to begin with, so I'd kinda love to dump on them a bit, but... it's about as big of a production as it gets in the anime industry. They're of course nowhere near Pixar level or similar, but it is clearly an example of Blender being battle tested by a serious studio on a serious project.
> constantly changing API that doesn’t allow for the extensibility
You pick a (stable) version, and use that API. It doesn't change if you don't. If it truly is a _major_ project, then constantly "upgrading" to the latest release is a big no-no (or should be)!
And these "most people" who are scared of a Python API? Weak! It should have been a low level C API! ;-)
> And these "most people" who are scared of a Python API? Weak! It should have been a low level C API! ;-)
I wouldn't frame it as "scared". The issue is that at a certain scene scale Python becomes the performance bottleneck if that's all you can use.
> You pick a (stable) version, and use that API. It doesn't change if you don't. If it truly is a _major_ project, then constantly "upgrading" to the latest release is a big no-no (or should be)!
This is fine if you only ever have one show in production. Most non-boutique studios have multiple shows being worked on in tandem, be it internal productions or contract bids that require interfacing with other studios. These separate productions can have any given permutation of DCC and plugin versions, all of which the internal pipeline and production engineering teams have to support simultaneously. Apps that provide a stable C/C++ SDK and Python interface across versions are significantly more amenable to these kinds of environments as the core studio hub app, rather than being ancillary, task specific tools.
If you had multiple shows in production, I would expect that standards be set to use the same platforms and versions across the board.
If the company is more than a boutique shop, I would expect them to have a somewhat competent CTO to manage this kind of problem - one that isn't specific to Blender, even!
Also, if the company is more than a boutique shop, I would hope it would be at a level and budget that the Python performance bottlenecks would be well addressed with competent internal pipeline and production engineering teams.
But then again, if the company is more than a boutique shop, they would just pay for the Maya licensing. :-)
Small timers, boutique shops, and humble folks like me just try to get by with the tools we can afford.
On a related note, though: I built a Blender plugin with version 2.93 and recently learned it still works fine on Blender 4. The "constantly changing API" isn't the beast some claim it is.
> If you had multiple shows in production, I would expect that standards be set to use the same platforms and versions across the board.
Considering productions span years, not months, artists would never get to use newer tools if studios operated that way. And it really only works if shows share similar end dates, which is not the reality we live in. Productions can start and end at any point in another show's schedule, and newer tools can offer features that upcoming productions can take advantage of. Each show will freeze their stacks, of course, but a studio could be juggling multiple stacks simultaneously each with their own dependency variants (see the VFX Reference Platform).
> Also, if the company is more than a boutique shop, I would hope it would be at a level and budget that the Python performance bottlenecks would be well addressed with competent internal pipeline and production engineering teams.
That would be the ideal, something that can be difficult to achieve in practice. You'll find small teams of quality engineers overwhelmed with the sheer volume of work, and other larger teams with less experience who don't have enough senior folks to guide them. The industry is far from perfect, but it does generally work.
> But then again, if the company is more than a boutique shop, they would just pay for the Maya licensing. :-)
And back to reality XD
That being said a number of studios have been reducing their Autodesk spend over the past few years because it's honestly a sick joke the way the M&E division is run. It's a free several hundred million a year revenue earner, but they foist the CAD business operations onto it and the products suffer. Houdini's getting really close, but if another AIO can cover effectively everything in a way that each team sees is better, you will start to see the ramp up of migrations occur. Realistically this comes down to the rigging and animation departments more than any other. But Maya will never go away completely as it'll still need to be used for referring to and opening older projects from productions that used it, beyond just converting assets to a different format. USD is pretty much that intermediary anyways, it's the training and migration effort that becomes the final roadblock.
Blender is the go-to for struggling artists/developers, and industry outsiders, like me. I'm stuck at Blender 2.93.18 because I don't have the budget for better hardware, let alone a Maya license! However, even that version of Blender still gets it done for me.
And also, how can you say Blender is not battle-proven? I mean, the big studios use Maya like fortune 500 companies use Microsoft Windows - doesn't mean Linux isn't battle proven.
I haven't used blender much. It's too focused on animation. I mainly make more engineering style things for 3D printing. Even though it can technically do that, the interface just rubs me the wrong way somehow. And i can use Fusion 360 for free.
> I mean, the big studios use Maya like fortune 500 companies use Microsoft Windows - doesn't mean Linux isn't battle proven.
Those are different niches. Not even Apple has managed to budge Window out of corporate environments, though it is a lot more present than 20 years ago.
I imagine it's similar with Blender and Maya: do they fill the exact same space? Or is Blender adopted by different types of companies (probably smaller)?
No sarcasm. Thanks for asking (no sarcasm, again).
You asked the right questions, IMO, and I think they are self evident.
> do they fill the exact same space?
No.
> is Blender adopted by different types of companies?
Yes.
A company or institution that has money to burn will opt for more "professional" suites (Maya, Microsoft, ...). Smaller entities will use the cheaper alternatives (Blender, Linux, ...).
Depends on the industry. Within game development, I don't know a single person not using Blender. People who were big into Maya and 3DS a few years ago have pretty much all moved on.
Maya's API is so much better than Blender's. You pay the fee for the OS that Maya is, but the API is so much better than anything open source. Like Postgres is an OS for databases. Blender is not yet there. IIRC you need to compile entire Blender just to change a node.
Blender gives you two paths for extension: a) fork it and layer your changes directly onto the app, or b) you create a plugin via the Blender Python API.
For vendors, the former is obviously a no-go. The latter has the issue of be throttled by Python, so you have to effectively create a shim that communicates with an external library or application that actually performs compute intensive tasks.
Most (if not all) industry DCCs provide a dedicated C++ SDK with Python bindings available if desired.
I'm curious as someone who's thinking of making a blender plug-in that will need to use some native-ish (not C++ though) libraries/modules for performance. What are the issues with using a Python interface instead of a dedicated C++ SDK?
The Python API is limited by Python itself. You're restricted to a GIL environment, so your ability to maximize throughput and reduce latency will be limited. For small/average scenes this may not matter for your addon, however larger scenes will suffer. There are a few popular options to developing Blender functionality:
1. Extend Blender itself. This will net you the maximum performance, but you essentially need to maintain your own custom fork of Blender. Generally not recommended outside of large pipeline environments with dedicated support engineers.
2. Native Python addon. This is what 99% of addons are, just accessing scene data via Blender's Python interface. Drawbacks mentioned above, though there are some helper utilities to batch process information to regain some performance.
3. Hybrid Python Addon. You use the Python API as a glue layer to pass information between Blender and a natively compiled library via Python's C Extension API. With the exception of extracting scene data info, this will give you back the compute performance and host resource scalability you'd get from building on Blender directly. Being able to escape the GIL opens a lot of doors for parallel computation.
> open source software but Maya is still very much the industry standard
IMHO that's only still true because large studios can't afford to move their entire highly customized production pipeline which they had built around Maya for nearly three decades to any other tool (Blender or not), even if they desparately want a divorce from Autodesk. Autodesk basically has them locked in and can milk them until all eternity or the studios go bankrupt.
I bet that the next generation of CGI and game studios will be built around Blender (and not based on the quality of those tools, but because of Autodesk business practices).
(edit: somehow my brain switched Adobe and Autodesk - forgiveable though because both use the same 'milking existing customers' strategy heh)