I'm animating a short animated film that takes place in a single room. There are 3 acts, with multiple characters, with the room in different states between each act (objects moved/added/removed, different characters, different lighting, camera positions, etc).
I've finished the first act. For consistency I started the second act in the same scene instance... however, it immediately became apparent that this would be an absolute mess in the NLA and Dope Sheet, not to mention all the different camera setups, follow paths + constraints, etc. still visible from the first scene. It felt completely wrong.
So then I tried starting a new scene based upon my single scene with bpy.ops.scene.new(type='LINK_OBJECTS'), but all the object animation data was still linked, which didn't help matters regarding the cluttered dopesheet/NLA problem.
Alternatively, using bpy.ops.scene.new(type='LINK_OBJECT_DATA') is also very problematic. It creates duplicate objects, while object animation data are no longer linked between scenes (good), object properties, transforms, collections and hierarchies aren't linked (bad). And While I want some object data linked across multiple scenes (eg, materials & armatures), I don't want shader tree and armature pose animations to be linked (for obvious reasons).
And if I want to change/add/remove anything to the room (besides object-data like materials which remain consistent) it requires going into each scene and making the same changes repeatedly.
It feels like there's something I'm failing to notice, because all of this feels very very wrong.
I'm guessing most lengthy & complex blender animations are sequenced together from multiple blend files / scenes, and the issue of duplication / loss of consistency is something we just have to live with.
Any helpful advice / ideas to get round these issues?