[BUG] NC too aggressive in marking scene dirty.

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

Viewing 8 posts - 1 through 8 (of 8 total)
  • Author
    Posts
  • #16288
    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.

      #16295
      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.

        #16294
        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.

          #16293
          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!

            #16292
            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.

              #16291
              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"));

                #16290
                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

                  #16289
                  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.

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