Blender Deleted My Un-assigned Materials - How is That A Feature? - Fake User

I’ve got a patch that combines those six items into a single dialog here:
https://developer.blender.org/D14030

9 Likes

Good step forward. :+1:

1 Like

Oh yeeah! That looks really fantastic.
Super cool. Thank you. :sunglasses:

I’ve made a proposal about one way to address this issue (along with few others):

1 Like

Thats normal, just set them as a fake users.
Erasing unassigned data blocks is really usefull, no need to purge files, is more pratical

I hear you and I don’t think that it’s a sustainable or optimal solution.
I’ve now talked to a bunch of people who want it to change, as well as a couple who would like the current auto deletion of unprotected data. And while I see the benefit to force users to manually protect data, so as to reduce the chance of collecting garbage. That mentality doesn’t stop people from marking everything as protected as it seems many people do, and also doesn’t address that in many instances certain types of data make more sense to be automatically protected (e.g. materials and textures) than others (e.g. meshes).

But you allways have the fake user button. You tell blender durectly what to keep. Thats important because memory optimization is really important in multiple fields, like archviz.

Also textures and hdri uses much memory than meshes, thats why is more important to let go textyres that have no users (and no fake user)

To new users /beginners fake user is a bane and a endless stream of frustration (for me included), which also leads them to go to forums like this one and ask the question why Blender deletes their data.

As a beginner you have no idea what it is or what it does, that button is so insignificant and it’s description so vague you’d first grow a beard before you figure out what it is without reading the documentation, it’s plainly unintuitive.
As for advanced users, i’m sure they know what it is cause they lost data previously and searched for what it is, hence why advanced users know what Fake user is, literally a “Trial by Fire”.

Fake user should not exists as it creates more problem than it solves in its current form.

For anyone who really needs their data deleted all the time when they close the blender you should have a toggle button which states “Dont keep data when closing blender”.

Archviz way of doing things is different from the gaming approach or movie making approach and it should not become a “Default” setting for everyone

BUt look. If Blender would kept all data and you would need to remove everything manually. That would be really hard and also worst for begginers.
Its just better marking stuff as fake user as you go. Then File, clean up and then orphan data will go.
Thats just optimal and much better, plus other big softwares work like that, generally called Purge.
Imagine you want to optimize you pc memory and you have hundreads of folders. If you had a digit indicating that is a non important folder, you can delete all those folders with one command.
Deleting orphan data manually is a really tedios work, specially with really big projects

A beginner does not need to know how to purge unneeded data or scene management. That is something that comes later on.
A beginner gets familiarised with the basic workflow, makes some simple things then works on that skillset, makes textures/shaders etc. and the moment he makes any textures (for the purpose of explaining lets assume that Blender has the ability to store Textures you created as fake user) in blender and does not save them it will be gone by the next time he relaunches blender.

Normally a user will assume that Blender should have saved all of his work, i mean i would and most people would also, but Blender does not do that and it does not tell you it will delete all your non-fake user files. Now that is counterproductive and unintuitive to a tenth degree.

You may argue that “Scene management” is important or that ‘you’ and some other projects care about “Data usage” i absolutely understand that that is important for advanced users but that is a very specific requirement and is not the norm for the larger Blender userbase and is unintuitive, seeing as Blender is free and a much larger demographic has access to it who have never worked in a DCC, and the last thing they know is that there exists a concept called “Fake User”.

What i would say for your case is that there be a option in the settings or wherever for users that want their “untagged” data to not be save when quitting Blender. Unless there is a better solution.

But the Default should be “Keep all data” or something along these lines, as many have already experienced hours of lost work unknowingly due to the “Fake user” nonsense, me included :sweat_smile:

The thing is, the software is made for professionals and thinking in a professional workflow and begginers, like all professionals were, just need to adapt and learn professional workflow.

“Normally a user will assume that Blender should have saved all of his work” That would make unecessary huge blend files. Its easy to see on asset browser blend files, were no objects will be orphan data, it arrives to 3Gb really fast, just one blend file, unless you distribute it betwen diferent blend files (better option).

I remember asking Pablo Vasquez about this when i was a begginer, and now just makes completly sense.

I will need this, mark as fake user or bring it to another scene. I will not need it, just purge. I see no better method than that sorry :grinning:

1 Like

No, there are many ways for us to get rid of the need for “fake user” yet still allow professionals to think professionally while doing professional things for other professionals.

9 Likes

What would be a better method than having fake user?

You’ll find links to development tasks and proposals about this on the blender development site, and you’ll see links to some of them earlier in this very thread.

4 Likes

It doesnot depend on professionalism, it depends on data management conditions.
There are 4 data management complexity levels, sorted by software use and type of data input:

  • Individual use + vanilla data
  • Individual use + imported data
  • Collaboration + vanilla data
  • Collaboration + imported data

Each level can reach professional state. But.

At the lowest level of the complexity (individual + vanilla data, created from scratch) you can afford any kind of data management flexibility, including heavy fractioning since you are the only data handler, owner and generator. You can cope with everything you create in many possible ways.

At the highest level of the complexity (collaboration + imported data), where lots of uncontrollable garbage data is imported from many different sources, where it is also generated automatically by different software applications, and all of this is multiplied by teamwork as well, autopurge+fake user strategy is the only viable solution, and any other possible datamanagement flexibility is quite deadly. Because the amount of garbage at this level forms a dense stream, which is not humanly possible to manage.

So datamanagement demands depends only from the level you belong to.

4 Likes

Just lost an animation I spent 3 hours on cause I didn’t put it on the NLA

Thanks blender.

5 Likes

I feel you. I’m going to work up an interim fix that should put some guardrails up so that this hopefully won’t happen again.

What would be a better method than having fake user?

Blender should be able to flag any data as orphaned, automatically. Then you could review orphaned data in one place to see, if you want to get rid of it.

Much less work than “faking users” and much safer.

1 Like

And you can, just do shift and click on the X, it becomes orphan

1 Like

Why do you want to keep the current workflow so badly?
What makes manually checking individual objects for an activated button in a UI submenu such a superior workflow than, for example, default auto-save and a manager with data block overview?