Copy link to clipboard
Copied
Hi. I have a nested scene (scene 2) inside of another scene (scene 1). When scrubbing the playhead over the timeline of scene 1, the position of the elements in scene 2 changes. When I scrub back and forth several times I find that the elements of scene 2 have shifted to yet a new position. Please read on for details. Scene 2 is a copy of scene 1 (I just duplicated the scene). The only change I made to the scene 2 was to activate a trigger in a swapset that makes most of the puppet invisible (swapping layers with content with transparent layers) and remove the tracks of the items that were not affecting what I wanted to remain visible. The main parts that remained visible in scene 2 are the hands of the puppet. I then placed scene 2 at the top of the timeline of the scene 1. Now I'm able to see the copies of the hands in front to the head of the puppet in scene 1. That was working beautifully. Then went to scene 1 and I made changes to the position of the handles in the arms and hands towards the end of the timeline. To avoid having to repeat all changes in scene 2, I simply selected all the timeline items of the puppet in scene 1, went to Edit > Copy, switched to scene 2, deleted all the timeline items of the puppet there and Edit > Paste the updated content in it. I then proceeded to activate the trigger to make things invisible and switched back to the original scene. Everything was synced perfectly EXCEPT the new changes, even though they were copy-pasted together with the rest of the timeline content at the same time. When playing scene 1, the animation of the puppet there plays as expected. The nested Scene 2 also played as expected for the most part, but when the playhead reach the area with the latest changes, the copied hands appear in a (very) different position. However, when I switch back to scene 2, I see that the hands are in the right position in every frame. Back to scene 1, if I scrub back and forth over the area, sometimes one hand of the copied scene will show misplaced and sometime both of the hands will be displayed in the wrong position. The same happened when I playedback over that time area sometimes. What can I do to avoid this error? If not fixable, is there an alternative to have the hands behind the drumset, in front of the head and behind the shoulder patches?
I think I've solved the problem. I've found a hidden artifact in the .ai file of the nested scene that when deleted would result in that my scene and my nested scene would playback overlapping perfectly. Basically, there was a transparent element leftover somewhere above the artboard in one of the layers of the nested scene. Bacause Ch will consider all element in the source file as part of the puppet whether they are transparent of not, the leftover element resulted in that the center of my nes
...Copy link to clipboard
Copied
Would it be possible to post a project so I can take a deeper look? While we support nested scenes, they aren't widely used so don't get as much testing as the rest of the app.
One way to dynamicly trigger layer order is to have identical meshes in front and back and manage visibility of the layers on both of those meshes. It can be tough to keep them in sync though.
Copy link to clipboard
Copied
Hi Dan. Sure. I'll DM about sharing the project. I didn't understood your "dynamically trigger layer order" proposal. You could have a copy of the hands layers above the head layer and alternate visibility with a sawpset, but how would that copy follow the movements of the hands that are attached to the arms, which in turn are attached to the body, which is behind the head? Could you please explain a bit more? My problem is that (as far as I know) a layer cannot be controlled by / be attached to a layer at the same level of hierarchy. Layers can only be attached to parent layers, meaning that they must be a sublayer of the one controlling them. So, because visibility depends on layer order, I cannot have a child layer showing in front of the layer they are attached to. I do hope I'm wrong here, because that would mean that the hands and arms of my drummer puppet could pass in front of his head while being controlled by the body, which is behind the head. My nested scene approach is effective as it can achieve the effect I'm after, but is not efficient because they are two identical scenes running on top of each other. I'm really curious to know more about your proposed alternative.
Copy link to clipboard
Copied
I think I've solved the problem. I've found a hidden artifact in the .ai file of the nested scene that when deleted would result in that my scene and my nested scene would playback overlapping perfectly. Basically, there was a transparent element leftover somewhere above the artboard in one of the layers of the nested scene. Bacause Ch will consider all element in the source file as part of the puppet whether they are transparent of not, the leftover element resulted in that the center of my nested puppet was higher. Therefore it would never match if I use the same position values as the ones for the puppet in Scene 1.
Copy link to clipboard
Copied
I responded in a DM, but for the dynamic layer order, you can have the structure like this:
front arm(independent or not)
main mesh
back arm(independent or not)
Then manage the visibility of your arm segments in a Swap Set. If those arms are on the same mesh, then you don't need to do anything else. If the arms are independent(often practical), then unfortunately, you have to ensure that the origin handles for both arm groups are in the exact same location as well as the animated handle(usually draggable). Unfortunately, the Dragger wants to grab only the visible handle, so this setup doesn't really work with the Dragger behavior(though we have some research code that will ensure that it does). If you can animate using the Body behavior or Transform behaviors, then this should work.
All that said, if you've already got a workaround, that's probably best. And you figured it out, but similar to the workaround above, if you want to use the nested scenes workaround, all of the meshes for both scenes need to be identical.
---
Find more inspiration, events, and resources on the new Adobe Community
Explore Now