mirror poses / paste flipped issue in 2.93.4

Hi, trying to mirror the initial contact pose in 2.93.4 with Stomp oriented as he is in the video, but when I paste the flipped pose it's somehow flipped backwards, across the YZ plane (so along the X-axis) so that Stomp is facing the opposite direction when flipped, rather than mirrored left/right. (ETA: another way to describe this is that Stomp is rotated 180 degrees about the Z axis so he is facing in the negative X direction instead of the positive X. It's still weird.) Has there been a change in how Blender handles mirror poses? The documentation suggests it has to do with the rest poses of the bones in local space, but I can't really figure out what's going wrong. 


Edited to add: I tried it again while reorienting Stomp so that he was initially facing down the Y-axis and had the same problem. I've been googling to find a solution, but can't find anything. Any help?

  • Wayne Dixon replied

    Hi Grey, 

    I'm not following 100% with the process that is producing this issue - if you could post a video or some images that would be most helpful.

    I can hazard a guess though, just check that his starting position is actually the same as in the video.  It possible that you have rotated the controls rather than starting with the object or the root control pointing in the correct direction.

    That is likely to give you unwanted rotations in the "default" position that will also be mirrored.  (ie - if it's is at -90 degrees it will flip to +90)


    Hope that helps you solve it - but if it doesn't, please post a video.  A video says thousand words a second...well that's what they say anyway.

  • greyrex replied


    The starting positions/orientations matched the starting positions in the video (I was careful to check that). I've added images for the same issue happening with Rivet (I'm giving him a sexy walk cycle for my own amusement, so ignore the weird toe walking). I will figure out how to take / post a video and do that too. I eventually fixed it for Stomp, but I don't know exactly how -- all I know is that it had something to do with what channels were keyframed in the copied pose (and I think whether they were all keyframed in subsequent poses?). I'll see if I can fix it again with Rivet (paying more attention this time) and update if I manage to correct it, but I would appreciate any insight you can give me as to what could be causing this.

  • greyrex replied

    For some reason I keep getting this HTML5 video error in Edge, Firefox, and Chrome , but the video is literally just me copying the keyframe at frame 1 and pasting it flipped to 13 and getting the result from the image above. will try to sort out the video

  • greyrex replied


    So I solved it (second pic) by deleting a bunch of key channels, but I have no idea why this worked, or what was going wrong in the first place, or what I need to do in the future to avoid this. (The first pic is a shot of what happened when I was part way through deleting various channels -- the type of error seemed to change, which is why I included it.)

  • greyrex replied


    Welp, this caused a new problem. I'm including it in this thread because it seems related. So in the first image, I've got the first three poses for Rivet's sexy walk -- the first C, D, P. The playhead is on frame 7 (P) so you can see what it looks like before I add a mirrored C pose on frame 13. (Weird toe walking, but otherwise normal, and how I want it to look.) In the next image I went ahead and mirror copied the C pose from frame 1 to frame 13, which looks like it works just fine. But the third image shows what happens when I scrub back to frame 7 -- for some reason, that pose (and in fact everything starting at frame 6) is now all kinds of wonky. This only happens after I mirror copy the C pose on frame 13, and it happened in a previous version when I had all four poses blocked out, so it's not about adding in the U pose.

    Any ideas?

  • greyrex replied

    Ok, it gets weirder. None of this wonkiness is reflected in the graph editor. Shouldn't I expect to see the Z value go negative here, as that bone is punching through the XY plane? (See image below.)


    And while trying to figure this out I realize something else was confusing me -- we rotated Rivet 90 degrees in the beginning, which was fine, but now all of the transforms seem to be relative to Rivet's local space, rather than Global space. Should this be the case? It's really confusing, especially when Global space is selected the whole time.