The current system is not ok because if you just fake user everything, you will offload the duty of garbage collection to user. This is fine but only for software which has right tools to do that. Blender does not:
- Blender has no good place to manage datablocks. Closest to it is outliner in Blender File mode, but it’s gravely insufficient:
- It doesn’t even show any indicator which datablocks are fake usered and which are not.
- It doesn’t allow for creation of new datablocks.
- It doesn’t have any feature to inspect which datablocks is the datablock you are interested in referenced by.
- The tools to clean up the datablocks manually are also bad. You can just nuke everything untagged as fake user, and you won’t even know what you are deleting before it happens, only after, which is ridiculous concept.
What about lights, cameras or meshes? If this was the case, then all the datablocks from deleted lights, cameras and meshes would keep piling up constantly. This is not nearly as simple. It’s about common user expectations. And the expectations are that only datablocks which have some dedicated editors should be persistent. But when it comes to objects created in 3D view, users generally don’t expect those to still exist once they are deleted from the viewport (and all scenes).
Regarding the naming, I think the best way would be to “invert” the fake user, instead trying to rename it. If we went that route, then IMO the best way would be to replace fake user with “Automatically Clean Up” button, which would be off by default, would have following tooltip:
“When enabled, this data-block will be automatically removed from blender file if it’s no longer used anywhere.”
And would have a simple trash bin icon.
This would very clearly communicate what will happen.
But then we again circle back to the problem that it makes almost no sense to ask user in advance whether they plan to use the data-block or not. I mean if the user didn’t intend to use the datablock, why would they be creating it in the first place. People will always create only stuff they plan to use, and don’t usually think about long term future of that data.
So what will likely happen is that most people will just never ever press this clean up button, and once the Blender file starts to get bloated, they will, with great frustration, have to stop their work and do some manual blender file cleaning. But if they do so, they won’t be going from object to object, material to material and start clicking this button on each datablock. Exactly because if this datablock is not used anywhere, there won’t be any place to click this button. So they will have only reasonable option to use Outliner in Blender File mode, and as I already explained above, that one is insufficient for the task.
All these half baked solutions still don’t solve the main problem - that the users should not have to spend significant mental energy managing the 3D software file data on their own in 3rd decade of 21st century.