MotionBuilder Plugin: Create Constraints has no effect

NatNet, VRPN, TrackD, and Plugins
Post Reply
dsc
Posts: 14
Joined: Fri Mar 11, 2011 3:07 am

MotionBuilder Plugin: Create Constraints has no effect

Post by dsc »

Hi forum,

I'm following the tutorial video for the MotionBuilder Plugin [1].
I have Arena 1.7.1 on one machine and MotionBuilder 2011 with the MotionBuilderPlugin 2.3.1 beta on another machine, both Win XP.

The streaming is working fine, I can see the marker cubes moving in MoBu. I am stuck at the step of running the Exp_FaceConstraints.py script. When I add it to the scene and right-click execute it, the "OptiTrack Face Contstraint Mapper" GUI comes up. But then clicking on "Create Constraints" seems to have no effect. In the tutorial video, clicking that makes "the head explode" and brings up a list of offsets in the script GUI. Neither of the two happens in my setup. I also tried the Official Release 2.3.0 of the Plugin (actually before trying 2.3.1 beta), with the same results.

Does anyone have some hints on what to try, where to look, etc.? I should add that I'm new to both Arena and MotionBuilder.

Thanks!

[1] http://media.naturalpoint.com/optitrack ... torial.mov
morgan
NaturalPoint Employee
NaturalPoint Employee
Posts: 199
Joined: Tue Jun 24, 2008 2:01 pm
Location: Corvallis, OR, USA
Contact:

Re: MotionBuilder Plugin: Create Constraints has no effect

Post by morgan »

The following change was made to the GoodyPack Face Constraint script to make it compatible with Arena 1.6 and later:

#strMidfix = "-" incorrect
# corrrect - fixed for compatilibilty with Arena 1.6:
strMidfix = "_"

The current GoodyPack download contains this change:

http://media.naturalpoint.com/software/ ... ack-v2.zip

I would check to make sure your script is correct as well.

Also, if you run the script from Mobu's Python Editor (Window->Python Editor), the script will display any errors it encounters, which can help you troubleshoot whether the constraints are getting created, and if so why the are not hooking up correctly.

If you still have trouble send support an email with the output from the script editor and we can help out.

Morgan
dsc
Posts: 14
Joined: Fri Mar 11, 2011 3:07 am

Re: MotionBuilder Plugin: Create Constraints has no effect

Post by dsc »

Thank you Morgan, it's working now.

That is, almost, as I don't get head movement. I realized that even before I hook everything up, in the streamed data the optical root is always stationary, hence the head, neck and shoulder constraints don't actually do anything. Also I get some errors related to head and cheek constraints:

Code: Select all

Python 2.6.4 (r264:75708, Oct 26 2009, 08:23:19) [MSC v.1500 32 bit (Intel)] on win32

>>> 
>>> 
Begin Constraint System Builder
Removing Previous constraints
Creating constraint for optical : optical
Error finding target : 
Creating constraint for optical : FaceTemplate_head_One
Error finding target : head_One
Creating constraint for optical : FaceTemplate_head_Two
Error finding target : head_Two
Creating constraint for optical : FaceTemplate_head_Three
Error finding target : head_Three
Creating constraint for optical : FaceTemplate_head_Four
Error finding target : head_Four
Creating constraint for optical : FaceTemplate_LBrowInner
Constraint Created:LBrowInner-Constraint
Restrieving initial bind pose offset
Creating constraint for optical : FaceTemplate_RBrowInner
...
Creating constraint for optical : FaceTemplate_LCheek
Error finding target : LCheek
...
Creating constraint for optical : FaceTemplate_RCheek
Error finding target : RCheek
...
End Constraint System Builder
>>> 
Begin Constraint Offset Updater
Updating : optical
  Error finding optical null
  Error finding joint : 
Updating : FaceTemplate_head_One
  Error finding optical null
  Error finding joint : head_One
Updating : FaceTemplate_head_Two
  Error finding optical null
  Error finding joint : head_Two
Updating : FaceTemplate_head_Three
  Error finding optical null
  Error finding joint : head_Three
Updating : FaceTemplate_head_Four
  Error finding optical null
  Error finding joint : head_Four
Updating : FaceTemplate_LBrowInner
  LBrowInnerOpt_Offset Offset Updated
  LBrowInner Updated
...
Updating : FaceTemplate_LCheek
  Error finding optical null
  Error finding joint : LCheek
Updating : FaceTemplate_LEyeLidLower
  LEyeLidLowerOpt_Offset Offset Updated
  LEyeLidLower Updated
Updating : FaceTemplate_RCheek
  Error finding optical null
  Error finding joint : RCheek
...
End Constraint Offset Updater
>>> 
It would be great if someone could help me resolve this.

Thank you,
Dietmar
morgan
NaturalPoint Employee
NaturalPoint Employee
Posts: 199
Joined: Tue Jun 24, 2008 2:01 pm
Location: Corvallis, OR, USA
Contact:

Re: MotionBuilder Plugin: Create Constraints has no effect

Post by morgan »

Hey Dietmar,

Re head movement, with Arena 1.7, on the Arena streaming pane you need to make sure Rigid Body data and Skeleton as Rigid Bodies are both checked.

Re the constraint errors, the head constraint errors are normal as these get manually mapped to the root optical (refer to the tutorial for how to do this).

The cheek errors are from the Cohen model - the Cohen rig's cheek constraints are misnamed RCheeck/LCheeck, which prevent the constraint builder from automatically building the contraint mapping. Renaming the LCheeck and RCheeck contraints on the Cohen rig to their Arena marker correspondents will fix this.

hope this helps,

morgan
dsc
Posts: 14
Joined: Fri Mar 11, 2011 3:07 am

Re: MotionBuilder Plugin: Create Constraints has no effect

Post by dsc »

Hi Morgan,

thank you for your answer. Unfortunately I'm still not getting any head movement. Here are my exact streaming settings:

Code: Select all

IP:                                        well, the IP of the computer running arena
Command Port:                              1510
Data Port:                                 1511
Multicast                                  checked
Multicast Address:                         239.255.42.99
Scale:                                     100%
Frame Rate:                                100
Right Hand Coord.                          checked
3D Marker Positions                        checked
Local Marker Position                      checked
Rigid Body Data                            checked
Local Child Data                           unchecked
Skeleton as Rigid Bodies                   checked
Pause When Any Markers Are Missing         unchecked
Pause When Any Rigid Body Tracking Fails   unchecked
The root optical is still not moving, hence applying the head, neck and shoulder constraints doesn't do anything.

Any other ideas?

Thank you,
Dietmar
morgan
NaturalPoint Employee
NaturalPoint Employee
Posts: 199
Joined: Tue Jun 24, 2008 2:01 pm
Location: Corvallis, OR, USA
Contact:

Re: MotionBuilder Plugin: Create Constraints has no effect

Post by morgan »

Hi Dietmar,

Version 2.4 of the Mobu plugin has just posted. Can you test with this version?

Please note the Optical Device has now has a new property named "Arena Expression" that must be checked when using the optical device with Expression and not full body.
dsc
Posts: 14
Joined: Fri Mar 11, 2011 3:07 am

Re: MotionBuilder Plugin: Create Constraints has no effect

Post by dsc »

Yes! With version 2.4 it's working perfectly now.

Thanks a lot!
dsc
Posts: 14
Joined: Fri Mar 11, 2011 3:07 am

Re: MotionBuilder Plugin: Create Constraints has no effect

Post by dsc »

Hmm, one more thing: when I actually record a take in MotionBuilder, the head movement gets removed again. Is there a switch for this somewhere?

So I am successfully streaming optical data from Arena into motionbuilder, including head movement. As soon as I hit record and play in MotionBuilder though, the head is stationary again, only the face moves. Same when I play back a take recorded in this way.

I realize this is more of a MotionBuilder question, but I'm guessing this should be easy to answer...

Thank you, Dietmar
morgan
NaturalPoint Employee
NaturalPoint Employee
Posts: 199
Joined: Tue Jun 24, 2008 2:01 pm
Location: Corvallis, OR, USA
Contact:

Re: MotionBuilder Plugin: Create Constraints has no effect

Post by morgan »

The optical device only records optical data, not the 6DOF rigid body data of the root node.

You'll need to key the head 6DOF in MotionBuilder separately.

Recording the head 6DOF in the optical device has been added as a feature request for the next release.
Seth Steiling
Posts: 1365
Joined: Fri Jun 27, 2008 11:29 am
Location: Corvallis, Oregon

Re: MotionBuilder Plugin: Create Constraints has no effect

Post by Seth Steiling »

Marketing Manager
TrackIR | OptiTrack
Post Reply