Library override on materials

Question Materials and Textures

My goal: I want to build a library of reusable materials and 3D objects that I can link into a scene and still be able to adjust the materials via library overrides.

tldr; version: When I link a material to an object and override it, the changes I make on the material revert to the default values when I later reopen the file.

Longer imaginery scenario for contextLet's say I have a "Metals.blend" file with a "RustyMetal" material asset. The material is inside a node group which has parameters exposed (like Color or RustAmount). Next, I have "MetallicObjects.blend" with 2 assets: a Crate and a Robot. Each asset is placed in its own collection. From the Asset Browser I link in the "RustyMetal" and give it to both assets. It looks fine on the crate but I want the robot to be blue. 

From here I've tried two approaches: 

  1. I let the assets have the linked material with no overrides. I link the objects into a new scene and do the overrides there: in the outliner, I first override the Robot collection, then the object and then the material (always selecting Make Library Override > Selected and Content). I am now able to both move the robot and change the parameters of the "RustyMetal". However, when I change the color parameter to blue, save and reopen the file, it is back to the default gray.
  2. I make a library override on the Robot's "RustyMetal" (inside the "MetallicObjects.blend), thinking that I will have to create a "BlueRobot" asset and link it with no further changes into the final scene. But again, when I make changes to the color parameter, save and reopen the file, the robot is back to being gray.

I want to keep the link to the original "RustyMetal" material because I might want to change how the grunge looks and that should propagate everywhere I have used the material.

So, am I doing something incorrectly? Is this a bug? Or are you not supposed to use a workflow like this and in this case, why are the materials overrideable at all if they won't save the changes?

1 love
Reply
  • Omar Domenech replied

    That has to be a bug, it doesn't work like that at all. Have you downloaded Blender 4.2.1 yet? Perhaps it is corrected in the updated version. Also here is a very good and short video of Pierrick going over Linking vs Library Override, it's great and in fact, I'll watch it again to get a refresher:

    https://www.youtube.com/watch?v=Ghl_glWr8xk

    3 loves
  • Katerina Novakova(shiennar) replied

    Thank you, Omar. It is a great video - when I watched it earlier today it helped me figure out how to override materials more easily and reliably. But then I got stuck on this reverting to default thing, which is stopping me from developing my library - I feel I need to figure out how to set it up from the beginning to avoid major rework later.

    As for it being a bug, I could only find a few older reports that are mostly related to armatures and then one person with the same problem but no answer from 2 years ago. So if it is a bug it seems it's been around for a while. I don't know who else I could ask for confirmation since I feel quite intimidated by the bug reporting. But I will try the latest version, that can never hurt anything.

    1 love
  • Omar Domenech replied

    How about trying the same thing on Blender 4.0 or 3.8? That way if it works you're 100% sure it's a bug. Which it has to be, I've used override before and it doesn't behave like that. 

    1 love
  • Katerina Novakova(shiennar) replied

    I've disabled all of my third party plugins and I've tried in 4.1.1 and 4.3.0 Alpha, with the same result. I just find it hard to believe that something this significant would be a bug and unreported at that, so I think I must be doing something wrong. Especially since I don't have much experience with linking and libraries.

    I've created a mockup library and scene to match my description above so that other people can try to reproduce it. I've also recorded myself linking and overriding the materials.

    Link to the library files

    Link to the video recording

    1 love
  • Omar Domenech replied

    Nop nop, I was wrong. Re-watching Pierrick's video, the overrides are not stored, it's only temporarily, as soon as you close the file, it'll go back to default. The change has to be made in the original. He talks about it around 7:20 


    Pierrick.png

    1 love
  • Katerina Novakova(shiennar) replied

    Huh, now that you mention it I do remember hearing him say it in the video but I must've dismissed it as "his version of Blender is a bit older and things must have changed since then". Well, I guess they haven't and I have to go back to the drawing board on how to design my library.

    Thank you, Omar, for bravely staying on the case. :-)

    1 love
  • Omar Domenech replied

    I guess it'll be a matter of carefully exposing a bunch of parameters. You don't want to have a blue wood material, a red wood, a green wood. Ideally you want a wood material that when you link it, you can control to change the color to whatever you want.  

    1 love
  • Dwayne Savage(dillenbata3) replied

    I'll have to play around with this when I get home from work. I've only worked with armatures and library overrides. Some data gets reset when the override gets synced. Like when you load the blend file. You can often times prevent this by setting a keyframe or using custom property. Again I'd have to test out some ideas, before I could give a better response. 

    2 loves
  • Katerina Novakova(shiennar) replied

    Yes, that's exactly what I'm trying to achieve but without the material override I don't know how else to change the exposed parameters on linked materials.

    1 love
  • Katerina Novakova(shiennar) replied

    dillenbata3 Dwayne, you are a genius! If I add a keyframe on the overridden exposed parameter, the value doesn't revert when I save and reopen the file. Thank you so much, you have saved my sanity! 

    1 love
  • Omar Domenech replied

    That's in the video as well, I didn't think that would be a good solution to what you were looking for though. Well, you never know. I'm glad that worked for you Kat. 

    1 love
  • Katerina Novakova(shiennar) replied

    You are right, Omar, I rewatched the video and he does mention it. But I misunderstood him and I thought he started talking about animation, which I dismissed as not relevant for me. So the real lesson from this is to pay closer attention to sources I do find before I spend a whole day on a wild goose chase. :-)

    • 👌
    1 love
  • Dwayne Savage(dillenbata3) replied

    Good to know that the material works the same as the Armature.