Multiple nested prefabs reverting problem

Issue #27 wontfix
Björn von der Osten created an issue

So I'm not 100% sure if this is a bug or intended behavior. I have the prefabs a, b and c in the following constellation:

img

Prefab a has a child prefab b, and "locally" (only in a) c is child of b - but only in prefab a, not in b. The idea is that c is a "local change" in prefab a and should normally not be part of b. But now if I revert Prefab b "c" gets deleted in prefab a. What I would like to have is that "locally" added prefabs / objects don't get deleted, but rather just stay there and are ignored when reverting.

Comments (4)

  1. Devon Klompmaker

    This is intended behaviour. uPrefabs works by apply and reverting to the project asset itself, that way it keeps in check throughout all the scenes. If you have a "broken" prefab, where it is mostly grey, then those changes are not automatically reflected; although you can still revert & apply.

    Do you think this should be an option rather than a built in feature?

    Thanks,

  2. Björn von der Osten reporter

    Well, I'm not sure. When reverting a prefab from the project it will "reflect" all changes to prefabs that contain it - while keeping local changes like changed field values etc. An added gameobject "feels" like a local change. Perhaps there should be two buttons, "Revert" and "Apply changes" or something like that, where with the second button stuff like added gameobjects would not be deleted while other changes to the prefab would still be propagated.

  3. Log in to comment