Feature #392

BVH exporter: add "feet on ground" and scale options

Added by Jonas Hauquier over 4 years ago. Updated about 2 years ago.

Status:In ProgressStart date:05/20/2014
Priority:HighDue date:
Assignee:Jonas Hauquier% Done:

90%

Category:File export
Target version:MakeHuman 1.1.2

Description

BVH exporter still lacks these options.

screenshot_1_1460037148.png (53.9 KB) Rob Baer, 04/07/2016 03:52 PM

screenshot_1_1460084903.png (9.88 KB) Rob Baer, 04/08/2016 05:08 AM

screenshot_1_1460161116.png (83.3 KB) Rob Baer, 04/09/2016 02:19 AM

screenshot_1_1460190592.png (23.8 KB) Rob Baer, 04/09/2016 10:30 AM

screenshot_2_1460213860.png (80.6 KB) Rob Baer, 04/09/2016 04:57 PM

screenshot_1_1460304787.png (125 KB) Rob Baer, 04/10/2016 06:13 PM

screenshot_1_1460317243.png (44.3 KB) Rob Baer, 04/10/2016 09:41 PM

screenshot_2_1461242555.png (117 KB) Rob Baer, 04/21/2016 02:43 PM

1228
1229
1230
1231
1233
1234
1236
1239

Related issues

Related to MakeHuman - Feature #10: Clean up exporter GUI options In Progress 01/23/2014
Related to MakeHuman - Bug #1009: Feet on the ground Rejected 04/03/2016
Related to MakeHuman - Bug #951: Multiple problems with MakeHuman .bvh export to blender In Progress 08/24/2015

Associated revisions

2030:81c9ea5d0c9b
Added by Jonas Hauquier almost 3 years ago

Add feet-on-ground option to BVH exporter. Implements #392

2031:aef8e130d990
Added by Jonas Hauquier almost 3 years ago

Fix #392: Show scale box for BVH exporter

2049:90569f06f85e
Added by Jonas Hauquier almost 3 years ago

Fix #392: Show scale box for BVH exporter

585c4499
Added by tracker_test_user (Forum User) almost 3 years ago

Fix #392: Show scale box for BVH exporter

2ba50ce6
Added by tracker_test_user (Forum User) almost 3 years ago

Fix #392: Show scale box for BVH exporter

2032:d51278cb5866
Added by Jonas Hauquier almost 3 years ago

Fix #392: Disable animations export in BVH exporter, export only one BVH file containing the pose, or unposed state currently shown in the GUI.

2050:30b7d9bde18c
Added by Jonas Hauquier almost 3 years ago

Fix #392: Disable animations export in BVH exporter, export only one BVH file containing the pose, or unposed state currently shown in the GUI.

be7c56f5
Added by tracker_test_user (Forum User) almost 3 years ago

Fix #392: Disable animations export in BVH exporter, export only one BVH file containing the pose, or unposed state currently shown in the GUI.

3ac34be3
Added by tracker_test_user (Forum User) almost 3 years ago

Fix #392: Disable animations export in BVH exporter, export only one BVH file containing the pose, or unposed state currently shown in the GUI.

History

#1 Updated by Jonas Hauquier over 3 years ago

  • Related to Feature #10: Clean up exporter GUI options added

#2 Updated by Jonas Hauquier over 3 years ago

  • Subject changed from BVH exporter: add "face on ground" and scale options to BVH exporter: add "feet on ground" and scale options

#3 Updated by Jonas Hauquier over 3 years ago

  • Target version set to MakeHuman 1.2.0

#4 Updated by Jonas Hauquier over 3 years ago

  • Category set to File export

#5 Updated by Jonas Hauquier over 3 years ago

  • Status changed from New to Accepted

#6 Updated by Rob Baer almost 3 years ago

  • Related to Bug #1009: Feet on the ground added

#7 Updated by Jonas Hauquier almost 3 years ago

  • Assignee set to Jonas Hauquier

#8 Updated by Jonas Hauquier almost 3 years ago

  • Status changed from Accepted to Fix exists, needs testing
  • % Done changed from 0 to 100

Scale was already implemented. Now I added feet on ground offsetting as well.
Note: because Blender interprets pose data offsets as positions (see #758 for that), it will only show the rest pose correctly offset, not in pose mode. In my opinion this is a bug in blender.

If someone else could verify this working, perhaps I back-port it to stable for release in 1.1, since it's a small change.

#9 Updated by Rob Baer almost 3 years ago

Feet on ground is now there, but I still don't see scale on Win 10

#10 Updated by Jonas Hauquier almost 3 years ago

  • % Done changed from 100 to 90

Applied in changeset commit:makehuman_hg|aef8e130d990.

#11 Updated by Jonas Hauquier almost 3 years ago

My bad, apparently it was still hiding the scaling options.
Should be fixed.

#12 Updated by Rob Baer almost 3 years ago

  • Related to Bug #951: Multiple problems with MakeHuman .bvh export to blender added

#13 Updated by Rob Baer almost 3 years ago

Well, the export options appear, but during testing I rediscovered #951. I tried saving files named r2031d, r2031m, r2031c, and r2031i. However, the export plugin added various pose names on to the end of the specified names during save process. I made multiple saves with each intended name, and it looks like there is a pattern of sorts to what is added. Note that I did not specify an explicit file extension during thee save process

Here's a snippet from the export folder showing the results:

#14 Updated by Jonas Hauquier almost 3 years ago

Hmm, yes that's a feature but at this moment it might not be working as it's portrayed in the GUI.
It happens if you enable the "animations" checkbox.

Anyway, with animation not finished, this feature has not much purpose except for development, so I'll remove it.

#15 Updated by Jonas Hauquier almost 3 years ago

Applied in changeset commit:makehuman_hg|d51278cb5866.

#16 Updated by Jonas Hauquier almost 3 years ago

I removed the "animations" option.
Now it should only export one BVH file, containing exactly what you see.

#17 Updated by Rob Baer almost 3 years ago

The export seems to work now to produce different sizes in Blender which I can only presume to be the intended result. Centimeters seems to mean 1 cm/blender unit, inches to mean 1 in/blender unit, etc as currently implemented.

Feet on floor works fine when the bones is highlighted in Blender (see fig white box) which again I understand to be intended behavior. However, if the imported "object" (r2032c in fig) or the "pose" (pose in fig) is highlighted rather than bones, the floor is zeroed to the hips rather than the feet. If I understand earlier comments in this thread, this is a Blender import problem, not an MH export problem???

So, in this figure each imported bvh skeleton has hips that appear at the Blender floor level. Selecting the white box would put r2032c's feet on floor instead.

So, if this is expected behavior, mark it fixed.

EDIT: If I can I'll see what happens in Maya

#18 Updated by Rob Baer almost 3 years ago

Maya does not appear to support .bvh import. I tried BVHViewer as one non-Blender alternative

In BVHViewer, scale is preserved on import but the hips, not the feet, appear at the .bvh floor (see below). In addition it handles our joint rotations strangely (actually probably this is our column order choice?). Here is what it does to the t-pose for the default skeleton upon cm export scale (best scale for this viewer).

(see also my comment ON COLUMN ORDER http://bugtracker.makehumancommunity.org/issues/951#note-5).

#19 Updated by Rob Baer almost 3 years ago

While it is disturbing that all .bvh importers can't handle MH BVH export files, it is encouraging that Motion Builder builder does fairly well and puts feet on ground:

Note: Joint size of scales other than cm render disproportionately large. MB seems to assume import of bvh written with cm/unit scale.

#20 Updated by Jonas Hauquier almost 3 years ago

Good point on the rotation order, I'll change it to z,x,y. Actually any order is fine, which is why BVH declares it in the structure definition. It seems that BVHViewer is just plain stupid at assuming a hard coded rotation, and ignores the one in the file.
You can also try BVHacker.

#21 Updated by Jonas Hauquier almost 3 years ago

Hmm, looking at that MotionBuilder screenshot, it appears like I made another mistake.
Is it correct that only with default dm scale the feet are on ground? And that for others its hovering above the ground?

#22 Updated by Rob Baer almost 3 years ago

After using a 4 panel view and adding a ground plane, it appears all four scales are actually "hips on ground". They are not different from what I get when importing a skeleton with "feet on ground" unchecked

#23 Updated by Rob Baer almost 3 years ago

Jonas Haquier wrote:

You can also try BVHacker.

Actually, I did try BVHacker 1.9 which read AACAD and CMU files fine, but not our pose files. (see http://bugtracker.makehumancommunity.org/issues/951#note-3) I've done a bunch of playing to try and discover the issue, but I've been unable to so far. The current discussion caused me to try regressing to the final stable BVHacker 1.8 [the author is now devoting his attention to "High Fidelity"virtual reality project].

Anyway, BVHacker 1.8 does read our files, and produces hips at ground and unexpected joint rotations much like BVHViewer.

#25 Updated by Jonas Hauquier almost 3 years ago

Hmm, interesting...
Looks like we might have to revise our view on what is a correct BVH :)

#26 Updated by Rob Baer almost 3 years ago

Well there are "standards" and there are "conventions". We can be within standard but disappoint our users if other programs are adopting less rigorous use conventions. Life's a bitch when even "being right" isn't enough!! ;-)

My guess is that MB is written to the standard, but BVHacker and BVHViewer are expecting a single common use-scenario and so don't bother checking for less common use-scenarios. That said, our mantra should be, "Make the life of the MH end-user as easy as possible" when we have a choice in the matter.

#27 Updated by Jonas Hauquier over 2 years ago

Applied in changeset commit:makehuman_hg|90569f06f85e.

#28 Updated by Jonas Hauquier over 2 years ago

Applied in changeset commit:makehuman_hg|30b7d9bde18c.

#29 Updated by Jonas Hauquier over 2 years ago

  • Status changed from Fix exists, needs testing to In Progress
  • Priority changed from Normal to High
  • Target version changed from MakeHuman 1.2.0 to MakeHuman 1.1.0

I ported the commits related to this ticket to 1.1 stable branch because I think they work well and deliver a significant improvement.
I'd like to have a look at BVH conventions and standards compliance again before we release 1.1

#30 Updated by Rob Baer over 2 years ago

Tested r2050 in Blender 2.77a by importing : 1) the t-pose template file itself (data|pose folder); 2) a t-pose with the default skeleton % exported with feet on ground and meters checked; 3)2) a t-pose with the default skeleton % exported with feet on ground and meters NOT checked;

Some observations:
  • Checking "Feet on ground" during export does not change the imported skeleton. In both cases, the origin of the skeleton remains at the hips.
  • The skeleton from the exported files has the expected orientation in Blender space when imported, but the MH template skeleton (from MH data|pose file) imports as "face-planted" with the same import settings on the Blender bvh importer.
  • The exported bvh files have rotation issues with arms and legs

#31 Updated by Joel Palmius over 2 years ago

  • Target version changed from MakeHuman 1.1.0 to MakeHuman 1.1.1

Deferring to 1.1.1

#32 Updated by Joel Palmius about 2 years ago

  • Target version changed from MakeHuman 1.1.1 to MakeHuman 1.1.2

Also available in: Atom