Search Unity

  1. Megacity Metro Demo now available. Download now.
    Dismiss Notice
  2. Unity support for visionOS is now available. Learn more in our blog post.
    Dismiss Notice

Character Animation - Offline Playback Skinning Error

Discussion in 'Animation' started by IP_Animation_01, Aug 9, 2018.

  1. IP_Animation_01

    IP_Animation_01

    Joined:
    Jul 28, 2016
    Posts:
    8
    Hi there!

    We're working on an offline rendered, 360 degree project in Unity, and have come across what seems to be a fairly major problem with our rigged character. Certain elements of the mesh seem to not be retaining their proper weighting when the animation is playing back during render time. It's difficult to describe exactly - I've uploaded a cropped portion of one shot to illustrate the problem:

    https://we.tl/yVVVywxzas

    Apologies for the low-res cropped video, but due to NDA requirements we can't show or discuss many details of this project! The problem can most clearly be seen where the character's inner cuff bounces out of the jacket, this happens in various other areas of the character mesh.

    In terms of technical specs:
    • Character is being imported as an .fbx, with all joint animation baked from Maya at 30fps (this has also been tested at 60fps seperately).
    • Character is rigged to conform to HumanoidIK standards
    • Character is imported with animation reduction turned off, Resample Curves turned off.
    • Mesh Compression is turned off.
    • Character animation clip is loaded into a timeline track to play from frame 0.
    We're working in Unity 2018.1.6f1 with collaborate. In terms of rendering, we were intending to render the project using AVPro Movie Capture, and have also tested exporting sequences using VRPanorama, and Unity's built in Recorder (in both Render Texture and 360 modes).

    When played back in the viewport and game window (plus when viewed in any other 3D package) the animation plays back absolutely fine, with no errors. However, when rendering out using any of the above packages, either directly from camera or as a 360 (no stereo) sequence, we are getting the above errors in multiple areas of the mesh. The only exception to this is using Unity Recorder in Camera mode, which returns the correct result (not so with either of the 360 capture methods though).

    Is this something that anyone has encountered before, or could offer some insight as to a solution? We're not a development studio and as such our capacity for trying solutions outside of scripting anything is very limited. Unfortunately the deadline for this project is fast approaching, so any help anyone could give would be amazing!

    Thank you!
     
  2. v1nc3nt_3d

    v1nc3nt_3d

    Joined:
    Sep 17, 2015
    Posts:
    7
    I'm seeing the same issue of lagging rigged animated child objects.
    Attempting to render offline 360-video using VRPanorama.

    Tech specs:
    • Character rigged and weighted in MODO
    • Using Generic animation
    • Animated directly in Unity using UMotion
    • Using Timeline to sequence animation clips
    • Unity 2018.1.7f1 with Collaborate
    The animation plays back fine in Game mode, but when rendering out to a JPG sequence, any child objects to the rig are moving a couple frames late or a couple frames early. It seems to get worse the deeper the nested child objects.
    For example, the character might have a glasses object as a child of the head bone. The glasses don't move in sync with the head bone. Instead they move a frame earlier than the rest of the rig.
    This occurred when rendering by 360 Equidistant Mono and "2D' Video Capture with VRPanorama.

    I was able to reduce the amount of lag by rendering at double the frame rate 48fps, then convert to 24fps. The lag is still present, but less noticeable.

    I contacted the VRPanorama developer who suggested setting the Root bone to be the same for all child objects. This didn't work for me, but it might work for you:
    https://forum.unity.com/threads/rel...360-stereo-videos.336086/page-25#post-3577309

    It is interesting that you didn't see any errors using the Unity Recorder in Camera mode, which suggests a different syncing technique than what VRPanorama is using.

    I hope this issue can be resolved soon!
     
  3. IP_Animation_01

    IP_Animation_01

    Joined:
    Jul 28, 2016
    Posts:
    8
    Hey, thanks for the reply! Good to know that we're not the only ones experiencing this problem.

    We'd actually stumbled across reassigning the root bone solution ourselves, and it seem to be working up to a point. If we have any other bright ideas, I'll post here.
     
  4. solarflare_s

    solarflare_s

    Joined:
    Feb 14, 2013
    Posts:
    10
    did u ever get a fix for this?
    I have the same problem, but when trying to capture frame sequences, looks great in game view, but the child objects are ahead of the animation in the frame sequences.
     
  5. IP_Animation_01

    IP_Animation_01

    Joined:
    Jul 28, 2016
    Posts:
    8
    We didn't find what I would describe as a fix, sadly. In the end I went back and re-rigged the character with all geometry merged. This gave us a workable result, but it's definitely not an elegant solution, and the original problem remains!