Blender Compared to Maya

I’ve been using Maya for the past 3 years in school and I’m currently working on the completion of my capstone animation. I’ve been toying with the idea of starting a small studio which would use both commercial and open source software with Blender playing a large role. I’ve been messing around with blender on and off but hardly could even claim to know the software. So is there anyone out there who would be able to list its strengths and weaknesses in a production pipeline compared to Maya or other comprehensive commercial package?

Well, you’re certainly not the first to have this question. You might want to take a look at some of the earlier threads:

There are more, of course, seems to be a perennial subject around here. Welcome to BlenderArtists :smiley:

Thanks for compiling that list for me, looks like I have a lot to be thinking about.

Here, though, if this makes any difference.

Thanks for the replies up tot his point. I guess the hardest thing for me really time commitment , if that makes any sense. I’ve spent the past three and a half
years pouring time into learning maya and its hard for me to decide to learn another package just when I’m really starting to have a good overall understanding of maya.
Is there anything inside blender like the component and connection editor inside maya. How about adding custom attributes to controllers and use set driven keys? I guess what I’m looking for is this. I can tell Blender is capable of amazing things, but how much does it allow for fine tweaking? How tinkering can I do, etc… Although probably the only real way to get answers to these questions is to sit down and do a small project with Blender, trial by fire type of deal. Hopefully this summer will give me the time I need…

If I knew what the component and connection editor was, I could tell you.

Custom attributes I THINK are a yes, or at least a WIP, not sure exactly what you mean by that, though.
Driven keys are a yes.

EDIT: In fact, creating vertex keys in blender are way easier than maya. At least, this is what I assume. When I used maya, you had to duplicate chunks of the model, and assign them as morph targets.

Sorry, should have explained those two. The component editor allows me to really focus in on thing, an example would be after I soft skin geometry to a rig and weight paint, I can select individual vertex to change the value of influence specific bones have on that vertex. Among many other thing, I’m really just starting to use it.
Connection editor Allows my to connect attributes to others. An would be a camera setup I did in maya for DOF. Within maya you have to specify the area of focus, so I created a controller that was always the area of focus, then another node that measured the distance from the area of focus that I had set to the camera, the value of that measurement was connected the area of focus on the camera, so the setting on the camera was always correct. So thats what the connection editor does, allows connections to be built between various nodes, so just about anything really.
The custom attributes is something I use with set driven keys. I’ll make a attribute called mouth, with a value of 0 going up to 10… Set 0 to be the mouth closed, then take the value up to 10 and rotate the joint that controls the mouth and that would be 10. In this case I am using set driven keys to make these connections. Although These custom attributes can be connected to once again just about anything.
Hope that helps explain things a bit more

Driven shape keys. I guess the real question is: are you a quick study? Once a package gets to a certain level of complexity, it becomes a matter of problem solving using the available tool kit. Since Maya’s tools and Blender’s tools are different, the ways they are combined to solve problems are different as well. And, as you’ve noticed from the Maya vs Blender threads, some things are easy in Maya and hard in Blender, or hard in Maya and easy in Blender.

Blender has a learning curve. No doubt about it.

My only comment to someone using Blender at a high/commercial level is that Blender Python is an extremely powerful way of getting Blender to do pretty much anything.

Python is a really easy and fun language - well worth learning. Unlike Maya’s language (MEL is it?), Python is a real language with wide applicability - you can bring all sorts of external Python code into Blender if you want to.
If you don’t already know Python, you’ll probably be surprised how easy it is to use with Blender (Blender has an inbuilt python interpreter).

That said, I must admit, I rarely use Python as I find Blender can do pretty much everything I could ever want it to.


If you rarely use Python, then how do you know how “easy it is use with Blender” ?

I don’t know what you mean by Python being a “real” language, other than it can be used in a standalone mode, whereas MEL is used only with Maya. But since you are comparing which scripting lanaguages are available to each 3d program, it doesn’t really matter if MEL can be used outside of Maya.

Back to issue of “ease of use”. I’ve programmed some wth Python on Blender, and also with MEL on Maya. I don’t find either languages in themselves either easier or harder.

The important difference IMO is the respective API’s and especially how well they are documented.

Blender’s python API documentation versus Maya’s MEL documenation … is err … “weak”. To be fair, while MEL’s documentation is better, it is still a reference document, as are Blender’s python docs.

To actually do anything beyond the trivial in either Blender or Maya is not by any means “easy” for the average user. The best way to learn scripting with either program is to look at existing scripts for examples of what you’re trying to achieve.

Also with Maya 8.5, apparently Python is now supported, I have no idea of how seamless or how well it works.


Yeah a lot of the commercial packages are bringing in python, XSI brought it in with the release of version 6 if I remember correctly. As for being a quick study I’ve managed to teach myself other apps on my own while in school, so I have a pretty good foundation to build on. I’ve been often told once you reach a certain point while the migration from one package to another is never a simple process, the fact that you have a working knowledge of 3d it makes the process easier. As for tackling python, thats something I would like to work with at some point but first things first, learn blender and for now leave the coding to the much more well versed.

                                                            If you rarely use Python, then how do you know how "easy it is use with Blender" ?

Everytime I have had to use Python, it didn’t take long to get something working the way I wanted. And I’ve done some pretty big Python projects in the past. Neither time did I find the API documentation that bad a guide.

I agree with everything else you said though.


You know you’ve reached that point when you read a tutorial for, say, 3DMax and you immediately visualize how you would do it in, say, Maya. You get a sort of abstract knowledge of working in 3D that overlays the specific tools you might use in any particular program. In some people it gradually steals over them, in others it’s quite an epiphiany. Doesn’t just apply to CG, either, it seems to be true for any craft or skill.