Blenders Node Compositing - Couple of Questions - why? how?

Hey guys, just a couple of questions about how the node compositor works, and why it works the way it does.
I dont know much about it at anything other than a user level, but if someone experienced with the implementation or development of it could answer that would be great.

Basically one of my generic ‘anit-Blender’ friends saw a rather complex node setup I posted on my facebook and did the whole ‘Blender is vodo and does everything backwards’ type comment:

Eh? Your DAG contains renderpasses and lens shaders? WTF kind of Vodo is this?
For a start I dont know what a DAG is, and google search doesnt enlighten me much anyway. So I tryed to explain the best I could, also mentioning that I dont know much about where Blenders node compositing has come from or why it works the way it is. I also mentioned that nodes can be used with materials as well, and to me they somewhat skip the part where you export your render, then import it into another program (or blenders sequence editor) for post production type effects and final tweaks.

But, still, we seem to be convinced that Blender is doing everything wrong:

Um, sure. Until then I’ll just google why Blender treats lens shaders as render passes and integrates it’s dependancy graph with node-based compositing :confused:
Any explanations would be great, I cant really base a solid argument for or against this unless I know what Im on about, and I get the feeling that my friend has once again jumped to conclusions about a system which he himself has not put the time into trying to understand. Its just ‘different’ and of course different is bad. :no:

Edit Comments continue:

if you knew that lens shaders are by definition applied to 3d cameras and have nothing to do with video, or that a material is actually a shaders dag network that contains possibly textures and maybe even light linking networks you would understand what I’m saying :confused:

Man I cop it bad for being a Blender user sometimes…

Hmm…

I have a pretty good understanding of how compositor nodes work under the hood and have no idea what either of you are on about.

Note: This is long :wink: tl;dr: Is a maya thing.

DAG… seems this guy is a Maya user. DAG stands for “Directed Acyclic Graph”, in simple terms, the graphic representation of what we know as “nodes” but applied to “objects”. In maya everything can be represented with a Dependency Graph (DG) node. In Maya, everything can be nodified: objects, lights, meshes, animations, and a long etcetera, and every object has a DG (Dependency graph) that connects an object, his properties, how the lights interact with the object, and so on.

As an example, in Blender you can parent objects with others in a relation Parent object -> Child object. This in Maya is called a “Dependency”. And this in Maya is represented “Graphically” as a node. Now in Maya this dependency Graph contains as minimun: A Obejct, the time where this object is located, the shader the object contains, the light properties this object has (in Blender, what material have this object) and a standard set of MentalRay properties (Maya by default uses MentalRay as its render engine).

Now, your friend probably mix these with the Blender node setups. Any non Blender user with a longtime Maya experience will confuse the node setup of Blender with a DG or a DAG. This is normal. But in Blender, There’s NOTHING similar to this ;). The Nodes in Blender are representations the internal render passes to produce an image, that you can alter in many ways to produce an effect in the final render image. This affects the entire scene (AFAIK) and is not “per object”.

So…

  	 				Eh? Your DAG contains renderpasses and lens shaders?  WTF kind of Vodo is this? 			 		

The Blender internal renderer is a multiple pass render. “Lens shadders” is that is says it is: is a shadder but applied to the lenses of the cammera you are looking into. As an example, Depth of Field is a lens shadder in Maya. Basically any cammera effect in Maya is grouped as a “Lens shadder”. In Blender, well… the cammera is like an old photograph cammera: You can only control the position, lens, and shift, so “lens shadder” is a very alien concept to Blender users :).

The thing is the “lens shadders” effects in maya, is probably related to some effect you did on the node setup. Maybe trying to do some DoF using nodes??, then what the guy is seeing is a DG with a complex setup in the cammera to view something in the render. So the “WTF” response from it is a natural one: You are showing apples, he sees pineapples ;).

Um, sure. Until then I’ll just google why Blender treats lens shaders as render passes and integrates it’s dependancy graph with node-based compositing :confused:

Well… Blender Doesn’t group cammera effects. In fact Blender doesn’t know a thing about it. The compositor in Blender is more like an interface to the Blender Internal Engine that allow to tweak every aspect of it to get a final result, and than, every visual effect is done in the compositor, so there’s no classification between “in production” (DoF) items, and “post production” things. The compositor is almost a “post production” thing in Blender, and for now, one of the 2 components of Blender that uses nodes. (materials are the other). In Maya, everything is connected to a node, so you can do effects “in production” (cammera setups for example) and then you do the “post production” thing. That’s what your friend refers about. Since (i believe) Blender devs haven’t formal cinematographic training they doesn’t know much about the process of it. Maya has cinema studio clients that pay big bucks, so the makers of the software has to do things in a very and carefully thinked process to mimics things like a real film studio does. So there are pitfalls for users of other applications. Normal.

if you knew that lens shaders are by definition applied to 3d cameras and have nothing to do with video, or that a material is actually a shaders dag network that contains possibly textures and maybe even light linking networks you would understand what I’m saying :confused:

As i say before, Every object has properties associated to a node, and your friend is thinking in these terms. As i told before, you are showing apples, your friend see pineapples.

Blender is different, since it wasn’t developed thinking of a “movie studio”, but more like a “3D application” that can do marvels, if users know how to use the tools… oh wait… that’s true for any application in the market…

Have a nice day.

PS: This forum sucks. (not the people, the software on it… Do this d**n software undertand the thing “remember me??”

As a simper explanation, tell your maya friend that this is a compositing setup… not a scene dependancy graph it’s all post processing… more like nuke, shake or fusion…(or after effects, but that one isn’t nodal)

if you knew that lens shaders are by definition applied to 3d cameras and have nothing to do with video, or that a material is actually a shaders dag network that contains possibly textures and maybe even light linking networks you would understand what I’m saying :confused:

Yep, in blender this isn’t a lens shader it’s a post process… you’ll find the same functionality in all the node based compositors I just mentioned…

material shaders texture shaders are more like what he’s on about… but blender isn’t as nodal as maya for the scen graph.

I believe that maya has just got a compositing module in the 2110 or 2011 version. If he has a look at that it’ll be more similar to what you’re doing with blender’s compositor.


from here on is a bit of a rant though!

You don’t really need to get into “who’s the best” discussions like this… if you need to ask here for the answers then you probably can’t argue in depth when he asks the next question…

needless to say it seems your friend sounds like he doesn’t know as much as he thinks, but what’s the “prize” here? he “converts” you into a maya customer? or you “convert” him to a blender lover?

I work regularly with teams of maya users and they get interested that I use blender for preference so I often show them what I’m doing and explain why I’m using it over maya for whatever… I’ll also point out where maya is stronger and why it’s probably not worth their effort to switch…
they go from bemused to understanding.

they get interested, see advantages, sometimes they give it a go themselves, but in the end learning a new 3d package is a big commitment from the user and there’s not enough clear benefit for them to re-train…

(to get to the same level of in depth expertise will take a year of constant work… basics in a week of course, but finding all the bear traps and discovering the workarounds takes around a year working on real projects IMO)

As a simper explanation, tell your maya friend that this is a compositing setup… not a scene dependancy graph it’s all post processing… more like nuke, shake or fusion…(or after effects, but that one isn’t nodal)

if you knew that lens shaders are by definition applied to 3d cameras and have nothing to do with video, or that a material is actually a shaders dag network that contains possibly textures and maybe even light linking networks you would understand what I’m saying :confused:

Yep, in blender this isn’t a lens shader it’s a post process… you’ll find the same functionality in all the node based compositors I just mentioned…

material shaders texture shaders are more like what he’s on about… but blender isn’t as nodal as maya for the scen graph.

I believe that maya has just got a compositing module in the 2110 or 2011 version. If he has a look at that it’ll be more similar to what you’re doing with blender’s compositor.


from here on is a bit of a rant though!

You don’t really need to get into “who’s the best” discussions like this… if you need to ask here for the answers then you probably can’t argue in depth when he asks the next question…

needless to say it seems your friend sounds like he doesn’t know as much as he thinks, but what’s the “prize” here? he “converts” you into a maya customer? or you “convert” him to a blender lover?

I work regularly with teams of maya users and they get interested that I use blender for preference so I often show them what I’m doing and explain why I’m using it over maya for whatever… I’ll also point out where maya is stronger and why it’s probably not worth their effort to switch…
they go from bemused to understanding.

they get interested, see advantages, sometimes they give it a go themselves, but in the end learning a new 3d package is a big commitment from the user and there’s not enough clear benefit for them to re-train…

(to get to the same level of in depth expertise will take a year of constant work… basics in a week of course, but finding all the bear traps and discovering the workarounds takes around a year working on real projects IMO)

It’s a nodes based post-processor. End of story. My bet is he’s just being picky. He doesn’t actually care, unless of course he’s a Maya developer.

edit: @Michael W the forum seems to be crazy lately. When you get an error after posting, check if it hasn’t actually been posted. I got database error and still my post went through.

Thanks for the replys from everyone so far, interesting points being made.

I would have thought he’d gotten this by now since hes used Shake quite a bit.

I wouldnt say it was a who is best discussion, not at all (not on my part anyway), but Ive spent the last year or so having every single aspect of Blender hammered away at and since its the primary program Im using at the moment I get somewhat frustrated by this. Some people are very close minded and picky, and tend to jump up and down on anything ‘because it was made with blender’

Which is exactly the point of this thread, I cant argue about these things because I really dont know enough about it. At no point have I tried to argue that Blender is better than Maya, or Maya better than Blender, thats fanboy territory. :eyebrowlift2:

Yeh theres no converting going on here, personally Im starting to branch out into other programs (will be using Maya a bit this year and have already used 3ds a bit) because I need more experience and being familiar with other programs would be great. I just wish other people would be more open minded and appreciate that other programs sometimes work a bit differently (which doesnt always mean they’re bad)

But yeh, at times people have some good points, and its of course good to know some other perspectives, but its just frustrating to see something being hated on simply because it is what it is.