← All ideas
  • Published 22 Sep 2020

Apply modifiers and transforms on multi-user datablocs

Nor Modifiers nor transforms can currently be applied to shared datablocs. IE: A mesh that is used in multiple objects.

My proposal is for Blender to allow this to happen. Because there isn't really a reason not to!

For example, if I wanted to apply a modifier to a shared a mesh, I would first have to make the active object´s mesh single user, apply the modifier and then simply link it back to all other objects that previusly shared the mesh. This proves that it can be done. In fact you could easilly automate it with a simple py script.

Blender should cover this case like a champ and do what has to be done to be able to apply the modifier or transforms.

Apply.png

98%

Development Status: Open

Upvote 50 Downvote 1
zanqdo
22 Sep 2020

6 Comments

fructdw

This is solved in Modifier List addon by giving you 2 options:

Ability to apply modifiers even if the object’s data is used by multiple objects. In this case, a popup with two options is shown: “Apply To Active Object Only (Break Link)” and “Apply To All Objects”

Should be in blender out of box imo since it reduces a lot of manual keypresses and mental load of thinking what to select, what link to what (order matters), etc.

3
aditia.ap

is it supposed to have option? ie :

  • Apply Current (on single user)
  • Apply All (on multi user)
2
zanqdo Author

* @Aditia A. Pratama * I mean there's only one mesh so.. not sure what that would mean. Basically "Apply" changes the basemesh (shaered between all objects). Whatever modifiers are left in each object are left untouched.

sybren

* @zanqdo * I see two ways in which an "Apply Modifer" for shared meshes could work, which I think is also what Aditia is talking about:

  • Apply the modifier to the mesh, and do nothing else. This means that all users of the mesh use the now-modified mesh. This could create issues when there are other modifiers on those objects that depend on a certain mesh topology, or vertex/face indices. It also means that it could influence objects that aren't even in the current scene, or otherwise invisible.
  • For this particular object, copy the mesh so that the object is the only user, then apply the modifier. This means that all other users still use the original mesh.

IMO both have their merit.

3
zanqdo Author

* @Sybren Stüvel * yeap, seems fair

romboutv

PS when you make the active single user, i believe other still stay shared. Ive seen it happen that i would need to relink them, did i miss something perhaps?