[BUG] NC too aggressive in marking scene dirty.

NodeCanvas Forums Support [BUG] NC too aggressive in marking scene dirty.

Viewing 8 posts - 1 through 8 (of 8 total)
  • Author
    Posts
  • #15027
    guyboots_thunderbro
    Participant

    NC aggressively marks the scene dirty if you click on a GameObject, that is a Prefab, that has a graph owner attached to it. No modification is necessary. It’s not even necessary to have the “Canvas” selected; just having it present somewhere is enough.

    #15040
    Gavalakis
    Keymaster

    Hey,

    The scene should not be set dirty only because of selection, but it can happen if you updated from a previous version because of the serialization being changed. Once the prefab is serialized and saved (as well as the scenes of course) after an upgrade though, this should stop from happening. Can you please confirm whether or not this is the case (just upgraded from a previous version and prefabs/scenes are not re-saved)?

    Thank you.

    Join us on Discord: https://discord.gg/97q2Rjh

    #15051
    guyboots_thunderbro
    Participant

    > Can you please confirm whether or not this is the case (just upgraded from a previous version and prefabs/scenes are not re-saved)?

    Nope. I’ve been upgraded for a while now.

    According to source control, no files have been changed after I save the scene. I can make a reproduction project if necessary… in fact I’ll try to do that tonight.

    #15061
    Gavalakis
    Keymaster

    Hello again,

    Thanks for the follow up. If you can make and send me a reproduction project that would be really awesome since I can’t reproduce this here. If so and want, you may also send the files to (support_AT_paradoxnotion.com)

    Thank you!

    Join us on Discord: https://discord.gg/97q2Rjh

    #15066
    guyboots_thunderbro
    Participant

    I’ve reproduced this and sent the example project to your email address.

    Short repro version for anyone else reading:

    It happens when you have a a prefab, with a graph, that has a Blackboard variable of type GameObject, that then references a child of the prefab, it causes this issue.

    #15079
    Gavalakis
    Keymaster

    Hello from here as well and thanks for sending the reproduction project!
    For the shake of this post completeness and for others looking for this until the next version release, the fix is rather easy:

    Simply open up Blackboard.cs and change line # 50,

    From This:
    UndoUtility.RecordObjectComplete(this, UndoUtility.GetLastOperationNameOr("Blackboard Change"));

    To This:
    UndoUtility.RecordObject(this, UndoUtility.GetLastOperationNameOr("Blackboard Change"));

    Join us on Discord: https://discord.gg/97q2Rjh

    #16541
    adrienvr84
    Participant

    Hello,

    I am encountering a similar issue where the scene is marked as dirty simply when opening a prefab containing a “BehaviourTreeOwner” component.
    This is very annoying because no change is done to the scene but we get it dirty each time, making the work confusing.
    Given the reproduction project here (it is otherwise very easy to setup), the repro steps are:
    – Open “SampleScene.unity”
    – Open “OpenThisPrefab.prefab” and go back to the scene
    – See that the scene is dirty

    Would be highly appreciated if it could be fixed in an upcoming update!

    Thanks

    #16562
    Gavalakis
    Keymaster

    Hello,

    Thank you for the info. I will look into making the set dirty be more selective in the future.  By the way, please do not publicly post files with NodeCanvas included within…. (the attachment has therefore been deleted)

    Best regards.

    Join us on Discord: https://discord.gg/97q2Rjh

Viewing 8 posts - 1 through 8 (of 8 total)
  • You must be logged in to reply to this topic.