Search Issue Tracker

Won't Fix

Votes

1

Found in [Package]

1.9.4

Issue ID

UVSB-2552

Regression

No

The Prefab Variant does not display changes made in the parent Prefab Embed graph when the graph is shared across the instances of a Prefab

Package: Visual Scripting

-

How to reproduce:
1. Open the “UVS Revert Issue“ project
2. Open the “SampleScene“
3. Open the “Prefab Variant“ to edit in isolation
4. Click on “Overrides > Revert All“
5. Open the “Base Prefab“ in the Inspector
6. In the Script Machine component click on the Edit Graph button
7. Make some changes (change the Title, Summary or the number in the Set Alpha node) and save it
8. Observe the Script Machine component in the “Prefab Variant“ and the “Base Prefab Variant“

Expected result: Both Prefab Variants Script Machine components display the same changes as the “Base Prefab“
Actual result: “Prefab Variant“ Script Machine components does not display the same changes as the “Base Prefab“

Reproducible with: 1.9.2 (2022.3.25f1), 1.9.4 (2021.3.39f1, 2022.3.31f1, 6000.0.4f1)

Reproducible on: macOS 13.5.2 (Intel), Windows 10 (User’s)
Not reproducible on: No other environments tested

  1. Resolution Note:

    Thank you for bringing this issue to our attention. Unfortunately, after careful consideration, we will not be addressing your issue at this time, as we are currently committed to resolving other higher-priority issues.
    With the delivery of our latest release, we are now focusing on investigations and discovery to better determine how UVS needs to evolve to deliver on our broader goals, as well as being the right solution for future production needs. However, we know each case is different, so do please continue to log any issues you find, as well as provide general feedback on our roadmap page to help us prioritize.
    Latest release: https://docs.unity3d.com/Manual/com.unity.visualscripting.html
    Roadmap: https://unity.com/roadmap/unity-platform/gameplay

Comments (2)

  1. LuiCat_MaTech

    Aug 11, 2024 08:54

    With deeper investigations, it is very obvious to us that whenever the prefab variant serializes the embed graph as a stripped object with a new UUID -- rather than overriden properties, which does not change UUID of the object -- the embed graph is forced to reserialize in the prefab variant.

    It is extremely favorable to either completely stop the overriden embed graph from deserializing (as designed of shared graphs), or, if former is too much a hack, to instead make sure no unwanted serializations happen on prefab variants where object references and graph contents are handled separately.

  2. LuiCat_MaTech

    Aug 10, 2024 18:44

    Issue most likely to happen when there are object references in the embedded graph (which is a main reason that embed is preferred). By comparing serialized text and debug inspector, it is very clear that object references need to be updated for prefab variants, which results in the whole graph being serialized again on prefab variants, creating unwanted garbage duplicants that quickly get out of date upon iterating prefabs.

Add comment

Log in to post comment

All about bugs

View bugs we have successfully reproduced, and vote for the bugs you want to see fixed most urgently.