Over the years I've discovered that I've had much more trouble with scenes where materials were linked to the Mesh Data. This is Blender's default. Then I'll go through the arduous task of re-linking the same material(s) to the Object Data instead. I know that I can set the default on my own machine/install to have materials link to Object Data. I'm curious what's the philosophy behind linking materials to Mesh Data? What are the perceived advantages? Does anyone else have this problem?
-
2$\begingroup$ Although the question is understandable, I believe “mesh” refers to the object, and what you called “mesh” in the question is actually “object data” or “mesh data.” $\endgroup$– Yu AsakusaJun 4, 2013 at 13:35
-
$\begingroup$ Right you are. Updated. $\endgroup$– Wray BowlingJun 11, 2013 at 11:08
2 Answers
Who knows what the original reasoning behind this was? This default was chosen maybe 15 years ago and there has not been a good reason to change it.
To me it makes some sense to share by default. When you have a particular object that you want to give a different material than the others sharing the same mesh, then you're there in the material tab editing things anyway and you can change the linking to object at the same time.
If linking to object was the default, you might make linked duplicate objects with AltD, placing the object in different places in the scene. But now if you want to change the material you have to go and change each individual object.
-
$\begingroup$ +1. I also think the same. With a material linked to ObjectData, we can make a copy (break the link) when needed. Its also space efficient to an extent. $\endgroup$ Jun 4, 2013 at 14:53
-
$\begingroup$ I see what you're getting at, but variety is the spice of life. I think I gathered from this answer that the reason was so that managing duplicated content is less like spaghetti. That's fine. That's a good reason. I will personally choose to not do that because I want as much variation as I can get so that the viewer doesn't notice I'm duplicating things. :) Maybe I will notice a downside eventually and update this question. Thanks Brecht. $\endgroup$ Jun 11, 2013 at 11:26
Edit: (in response to a comment below) A set reason was never given for this, this is merely a speculative answer based on what I know of this option. You can skip to the bottom for the conclusion.1
To understand this option properly, you need to understand how Blender works with Objects. Almost everything in Blender is organized in a hierarchy of Datablocks. A Datablock can be thought of as containers for certain pieces of information. For example, the Object Datablock contains information about the Object's location while the Object Data (ObData) datablock contains information about the mesh.
Linking a material to obData (to mesh specific data) is ideal when you want a mesh to always have the same material, while linking a material to an object is when you want to have different materials on objects that share the same mesh.
Short explanation: If connected to the object, you can have several instances of the same obData using different materials. If linked to mesh data, you can't.
Further reading..
1Sorry for the extended explanation but it was to clarify this point. In an answer to your question, I don't think there was ever a set stated reason as to why this is. Based on how it works however, I am assuming that it is linked to meshes by default as this might be more ideal for beginners or for quickly setting up a scene. It is much more customizable and intuitive than linking to object.
-
1$\begingroup$ This does not answer the question “Why is it linked to ObData by default?” or “What is the perceived advantage of this default choice?” You explained what the option means, but that is not the question being asked here. $\endgroup$ Jun 4, 2013 at 11:08
-
$\begingroup$ @YuAsakusa there is no 'set' answer to this, See the separate summary. By default, one would want the latter I would assume. Or perhaps I am not understanding the question asked? $\endgroup$– iKlsRJun 4, 2013 at 11:11
-
1$\begingroup$ Thank you for editing. Although I am not sure if linking materials to ObData by default is better for beginners, I do not have any better guess at why the default is like this. Maybe because of a historical reason? $\endgroup$ Jun 4, 2013 at 11:55
-
$\begingroup$ @YuAsakusa it is merely an assumption based on the actual options and what they do above. I could not find any stated reason as to why. I will ask around and see if I can learn anything more. $\endgroup$– iKlsRJun 4, 2013 at 11:59
-
1$\begingroup$ I like this concise answer much better than the original answer (so thanks again). The original answer would be useful as an answer to a separate question asking what this option means. $\endgroup$ Jun 5, 2013 at 11:29