Page MenuHome

Newly inserted keyframes dont work in animated COLLADA models
Closed, ArchivedPublic

Description

OS Info:

Windows 7 Professional
GeForce 650ti BOOST 2Gb

Blender Version:

2.63, 2.70a

Errors:

  • newly inserted keyframes dont work in animated COLLADA models exported using Ultimate Unwrap 3D
    • models imported from COLLADA files can have bone orientations that are 90 degrees off from the original bone in at least one axis
  1. Background:

a. I use a tool called Ultimate Unwrap 3D to convert animated stock asset models in FBX files into COLLADA files. I've found some issues with the import process in Blender most which I can work around, but it'd be great if the importer could be fixed.

b. I've created a simple animated cylinder model using Blender (TestAnimation-original.blend), which I've exported to FBX (TestAnimation-original.fbx) using Blender, then converted to COLLADA using Ultimate Unwrap 3D (TestAnimation-original.dae) which demonstrates the problems using the Blender COLLADA importer.

  1. Problems:

a. newly inserted keyframes dont work in animated COLLADA models exported using Ultimate Unwrap 3D

When I pose the model and add a new keyframe, the new keyframe appears to be added (you can see the new markers in the dopesheet), but if you go back and run through the animation from the first frame to the most recently added one, the new keyframe does not affect the position of the cylinder. In the file TestAnimation-keyframe-problem.blend, when I added keyframe 5 I had the cylinder bent over a full 90 degrees. You can see that at frame 5 it retains the same transform as it had at key frame 4.

I've done some digging into this, and I think the root issue is that when I import a COLLADA file which stores the animation transforms as 5 separate components (3 axial rotations, scale, and translation). This format is allowed per the COLLADA specification.

i. I've noticed that if the animation transforms are provided in the COLLADA file as a 4x4 <matrix> element, that I am able to add new keyframes. [The Autodesk FBX Converter which does this has other larger issues which cause me to have to edit the entire COLLADA file, so using it is only of academic interest]

ii. I've noticed that when you import the data and look at the dope sheet, you get a set of 5 quaternion transforms. I believe this corresponds to the 5 separate transforms provided in the COLLADA file (3 axial rotations, 1 scale, 1 translation).

iii. This has been an issue at least since Blender 2.63. I've included a file TestAnimation-original.dae which shows the problem.

b. models imported from COLLADA files can have bone orientations that are 90 degrees off from the original bone in at least one axis

Blender 2.70a imports bones in an orientation which doesn't correspond to the orientation of the original model. You can see this if you open the COLLADA model in Blender 2.70a (TestAnimation-bone-angle.blend) and compare it to the same model imported using Blender 2.63 (TestAnimation-keyframe-problem.blend). In the file TestAnimation-bone-angle.blend you can see that the topmost bone is rotated 90 degrees on at least one axis compared to both the original model

This doesn't cause a problem in animation playback, however it causes workflow problems if I try to retarget animations – the result is that, for example, an arm bone can be in an abnormal initial orientation between the actor (source) and target models, which causes the retargeting to twist the target bone into strange orientations. I can work around the issue by copying a proxy bone with the odd orientation and copying it as a child of the actor's bone (which assures transform similarity between source and target) but it's still a workaround which disrupts workflow.

Details

Type
Bug

Event Timeline

Jonathan Railsback (jonbitzen) raised the priority of this task from to Needs Triage by Developer.
Jonathan Railsback (jonbitzen) updated the task description. (Show Details)
Thomas Dinges (dingto) renamed this task from newly inserted keyframes dont work in animated COLLADA models exported using Ultimate Unwrap 3D models imported from COLLADA files can have bone orientations that are 90 degrees off from the original bone in at least one axis to Newly inserted keyframes dont work in animated COLLADA models.May 10 2014, 10:47 PM
Bastien Montagne (mont29) closed this task as Archived.May 11 2014, 7:05 PM
Bastien Montagne (mont29) claimed this task.

We are sorry, but we do not maintain Collada anymore (except for the very basic parts to make it work for SL), since it is currently considered legacy.

Bastien Montagne (mont29) lowered the priority of this task from Needs Triage by Developer to Normal.May 21 2014, 3:57 PM
Sergey Sharybin (sergey) closed this task as Archived.May 29 2014, 10:48 AM

As explained to jesty in another report, it makes more sense to keep collada reports in wiki. Moving it there http://wiki.blender.org/index.php/Dev:2.5/Source/Development/Todo/Import_Export#Import:_Bugs