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

So what would have to happen for you to change your mind on the topic?

So what would have to happen for you to change your mind on the topic?

Changing working conditions?
If I would lower DMC level that sets work surrounding restrictions, this will make my opinion change, I guess.

Switching from Collaboration on massive projects with lots of imported data and variable software pipelines (corporate, 4th DMC level) to individual software use for creative artistic work (frellancer, 1st DMC level) or technical work (2nd DMC level) will provide much more sterile production conditions, where you are the only who controll all the data, so there will be no strong need in object-oriented datamanagemet system, and datamanagement survival will no longer dependent on it.

However, 1st and 2nd DMC are not physically compatible with the 4th one, by design you can satisfy only one DMC level per software. We thought a lot about this issue.

I am not sure I know what exactly you use DMC (it’s an acronym for an awful lot of things) as shorthand for here, but I think I still get the point. Also fair enough in your case and I understand that. Your workflow scale depends on it. I can’t and won’t argue with that.

But can you pinpoint the cornerstones of your workflow (or for the DMC levels in general) or create a list of the requirements for it in Blender? Because that is a very vital point that got lost in the whole discussion, right there. Currently this thread is possibly defending two very different sides of the same medal and every side sees their point of view as the right one.

If there is a way to have data management be configurable to “large scale teams” or “data retention” then these might be able to be behaviour presets akin to the keyboard map?

I already explained Data Management Conditions (DMC levels) and its influence to software system design before in some of those treads. I can list it again here or give a link but later.
Sorry, I am in the middle of a deadline.

But you may be sure - if my only job would be much more linear and sandboxed, like creating assets or so, I would also prefer just to pack all the data and thats it. I understand this issue, but, unfortunately, it is much deeper.

That’s fair enough. And I never argued that people have different requirements to their workflows. It’s just really important that, assuming your assesment can be pinpoint specifically to the different levels, Blender needs to either find a way to cater to all data management conditions somehow or decide for one or the other. Otherwise we get a muddied thing that is neither one nor the other.

And then the next step will probably be: Who is the major target demographic for Blender in that case?

Bacause ultimately for every workflow you will find at least a handful of people who will need that specific set of features. But that still doesn’t say that this is also the best set for the majority.

So yeah - I think it would be a lot more beneficial to discuss which points might be integral for a certain workflow so that any devs might actually be able to find a way to decide which is more important to the project. Or better yet - maybe do find a way that caters to more than one level.

(edit) BTW - and just to make this absolutely clear. Unassigned datablock should always be markable as “unimportant” and there should always be a purge function to quickly get rid of all of them. Nobody here is saying otherwise.
It is just important that purging unassigned is never done quietly and never without the user’s consent by program default. If you need it to work on closing or program quit - this should still be very possible.
Both of these (inverted datablock protection and a warning on close/quit) could easily be options that can be turned off if you need the functionality that way.

1 Like

I got enough years of programming behind me, knowing that things like garbage collections are the the sort of things that screw the user the most (for his protection).

And now people are complaining about it and in a rational way, which means that whatever intention you had , we really don’t care about because it doesn’t work.

You may have the intention to heal a sick person by letting him drink poison, whatever your good intentions are, it won’t work so don’t do that.

When a person comes over and says “X doesn’t work” and showcase it, that’s it , it become fact and no attempt in justifying nor explaining will change it, we are dealing with facts here, STICK TO IT.

And the fact here, the system doesn’t work as intended, people lose data , which means the system need to be fixed and that’s all there is to it, the only discussion to be held now is how to fix it.

2 Likes

And how exactly would an artist utilizing the Purge feature - instead of Blender automatically deleting all unassigned materials/actions, etc - bring significant overhead to your studio?

The problem can be summarized quite succinctly: Blender is not flexible enough to enable multiple workflows and people always come out of the woodwork to oppose making Blender more flexible. It’s basically a Blender cliché at this point.

Imagine if Blender only had an FK system and some animators started a thread requesting the implementation of an IK system and then dozens of people, including the Blender developers themselves (sometimes), came to the thread to post that FK is the best way to animate everything and that even the idea of IK itself is wrong. To a professional animator that statement would be entirely farcical and yet that exact pattern repeats itself over and over again on this forum; “Please, can we enable Y workflow?” “No. X is the only workflow.” (Two actual examples instead of a hypothetical: Face dots vs face area selection, and select-through vs select-what-you-see.)

To the topic at hand, this shouldn’t be a question of “Should unused blocks be auto-deleted” or “Should unused blocks be auto-saved”; the real question should be ¿Por qué no los dos? Paul’s workflow benefits from the current system, but many others (I would argue numerically more people) would benefit from the opposite, so can something be done to cater to both workflows and make Blender more flexible? And of the possible solutions, how much can be done in the short term vs the long term? Long term the entire fake user system likely needs architectural changes, and accessible, intuitive scene cleanup tools, and materials need to be first class citizens like every other DCC program. Short term fixes could include user preferences for one or the other, but of course nothing is more permanent than a temporary fix. :stuck_out_tongue:

3 Likes

If you read answers by developers that’s hardly ever the actual answer.

Most of the time it’s more along the lines of: that might be nice if someone did all the necessary design work and coding, however there are currently more pressing problems and I can’t do it.

This is then interpreted as ‘the devs are opposed to change’.

Also, adding flexibility comes at a cost. Code needs to be maintained. More code means more maintenance. The developers are stretched thin as-is.

1 Like

If you reread my post - you are pretty much charging open doors with me, here. I do think that a more flexible system that could cater towards both sides would be the best option and it might be very possible. We just need to get to defining all the outlines of what it needs to encompass first.
Overall though, so far the discussion is more lost in explaining feelings and trying to say who is right and wants their workflow, here instead of trying to find actual solutions.

THAT is, unfortunatley, 100% true, though.
And I can totally see why devs are opposed to it if there is a possibility to get it right rather than screw it up further and people adapting to it. But the again … we also really need a solution.

If my use of the qualifier “sometimes” wasn’t clear enough, I’m not saying this is the typical or even common dev response. It’s usually the other things like time and availability, yes. But that wasn’t even the point, it was ancillary to that part of the post so please don’t focus on the wrong thing.

I was predominantly referring to the frequent response of the users, not the devs, who disregard other workflows and processes (e.g. VFX ignoring the needs of game dev, CAD ignoring the needs of sculpt, mix and match to pick your poison), often because they’ve got tunnel vision about their own niche and simply forget that Blender is a generalist program. And with a generalist program users have diverse experiences and needs such as data management being crucial on large, complex, multi-user projects so a self-pruning scene might be useful there, but objects or assets deleting themselves is an anti-feature for other users who aren’t expecting that behavior because no other program operates that way and they expect materials to be persistent.

So these threads often go circular because some group refuses to acknowledge or simply can’t even understand others’ needs. That was the point of the comment, not a shot at devs.

1 Like

And how exactly would an artist utilizing the Purge feature

You cannot purge the data during collaboration if unused ID’s are supposed to be saved - you will ruin someone’s data.

The problem is different - in this case the best system design approach for individual work and the best system design approach for collaboration are mutually exclusive because requirements are mutually exclusive. You cannot physically satisfy both simultaneously, and from our observations there are no known solution for this at the industry level.

It is

  • or “soup of data” where occasional trash is thoroughly mixes with useful unassigned data, making it unmanageable, like in 3dsmax/maya, which is suitable for individual work + vanilla data where you are the only who generate/control all the data and know what is trash and what is not, but naturally incompatible with collaboration especially on massive projects

  • or object-centric data structure with the ability to pack external data and with “lose unused” garbage collector, perfect for collaboration + imported data, but not reasonable for individual work, like in Blender.

Two other 3D applications you’ve listed aren’t just used by individuals; they are used by very large collaborating teams in the entertainment industry.

So it’s certainly not a situation of “software X” works for individuals, but not collaboration.

1 Like

Just curious. How hard would it be to implement a preference toggle to turn on fake user at every new created object, material, texture etc. ? Problem would be solved. Both sides would be happy.

I mean … if that really is the case then Blender has to decide which user base to support. And since Blender’s credo is “The freedom to create” I’d guess this encompasses a lot more people in the category of small to mid sized project users instead of large scale.
But you keep saying that these systems are mutually exclusive.

What exactly are those systems - how do you define them and what do they encompass?
And how exactly are they mutually exclusive?
Why would inverting the default of saving new materials impact everybody’s workflow so much for the worse?

So far we are still dicussing if it’s a good thing that blender deletes stuff without a prompt instead of inverting the default and safeguarding the work of users. This is in itself a pretty severe thing but I totally accept that your own specific workflow depends on it being the way it currently is. We are not even talking about completely changing the datablock management system deeper inside Blender, yet.
So the question really is - why is it such a dealbreaker to have at least a toggle like @Arunderan (and I think many others as well) proposed in this thread? This would not change anything about your workflow in the slightest, so far but it would very likely help safe the work of many, many users. And so far I also still can’t see how this makes anything mutually exclusive to a whole system.

I don’t think there is much difficulty , as its probably just setting up a flag of fake user to true during data block creation (but i am talking out of my ass, i haven’t looked at the code)

The issue is that , blender is a big project with many users so everything need to be talked to death on, i can understand that.

No, that’s not the question you want to ask , because it is possible to add it.

What you want to ask is : how come we have this discussion on blender not saving part of your data and not one core team developer here even acknowledges the existance of this thread by even replying to an issue such as blender not saving data.

I think the lack of official response showcases a bigger issue in blender’s development .

*disclaimer : we did get a response (at the beginning of the thread): “look into proposals on this issue and future plans of blender”,

Not good enough as its not something that to be improved but an issue that need to be fixed , borderline a critical bug (please folks , do not reply with : “you may call this a bug but its by design”.

1 Like

Again: https://projects.blender.org/blender/blender/issues/61209#issuecomment-479875
Discussion with devs is ongoing in there. Most of the things discussed in this thread are even already on the bulletpoint list. Including “make save default and add toggle to potions”.

It’s been open for four years, though. Maaaaybe, since Blender now does breaking stuff on major new releases, version 4.0 would be a good opportunity to work it over again.

(also again for sake of thoroughness: Proposal: Explicit Management of Data Blocks and (possible) Deprecation of Fake User)

(edit) BTW - 1D_Inc’s requirements and own observations about Datamanagement are mostly in the design task, I just noticed. Lower third at the moment.
(edit2) and everybody who hasn’t yet read the Link with the design issue yet - do it. Even though I am still opposed to Blender quietly deleting actions and materials by default there is quite a lot of really important observations in there from both sides of the argument. And I think I will have to first think about all of this a little more before I further comment on this thread. :wink:
Yes. I read all of it
No. Still not convinced it has to be a binary choice of all out data-loss or all-out data bloat.

2 Likes

Still requires a patch for now , until a new system will be in place , thanks for the link.

1 Like

That’s why i asked. A patch is most probably the only solution to this dilemma. This is discussed since four years now, and nothing has changed. And most probably never will.

Where is this burried? A starting point would be nice.

1 Like

This is true, it is used, but it doesnot mean that it was originally designed for it. In large studios it comes with pretty harsh and expensive supervisory departments to comepensate its flaws, but our studio is not that large to afford that.

From the other side, we are able to use Blender for individual work.
I mean, we create props and assets using it and so one.