Cinema 4d workflow with NI Mate?

Hey guys, so for the past few days, I’ve been trying to find a program to do motion capture with and I found NI Mate and I like it alot. The sad thing is that there are no tutorials on how to set it up with version 2. So, I would appreaciate it if someone took the time to teach me this stuff.

Notes: I already have the NI mate program and plugin installed and i’m running Cinema 4d R14

Thanks to anyone who helps!

Hello!

The old tutorial here is largely identical to the current workflow, at least for the Cinema 4D part. The things you need to do in NI mate are essentially:

  • Start the sensor
  • Enable Skeleton Tracking by clicking the “enable” button on the skeleton tracker page. The skeleton in the live feed should turn yellow.
  • Make sure the OSC port on the setup page is set to the value you want it to be (7000 by default)
  • Start receiving data in Cinema 4D, making sure the port matches

To clarify the Cinema 4D parts:

  • Click the “Plugins” tab
  • Click NI mate receiver
  • Type the root object name in the “root name” box. If this doesn’t exist in the scene yet, click create. This is the object that will be the parent of all the arriving data points.
  • Go in the “Receive” tab
  • Set the port to the correct value
  • Click “Start receiving”

Sorry, I meant more specifically, what do you do with the new plugin. On the old tutorial, its literally just 2 buttons. But on version 2, There’s three pages worth of stuff. So, It would be kinda nice to know

I edited the post above with a few details :slight_smile:

What does the start recording button do?

After specifying the range of frames to be recorded, clicking the start recording button will start recording the arriving data. This works so that the scene is first set to the “start frame”, the timeline will start moving and each frame the data that arrives over OSC from NI mate is given a keyframe at that specific position / orientation. After the end frame is reached the recording will stop.

Ok, So I tried it and when I do it, The model just sits there and does nothing. Like a statue

When you say model, do you refer to some skeleton of your own, or to the individual data points that come over OSC to Cinema? The plugin does not do any kind of re-targeting itself (that is, mapping the data points onto an existing rig) as that is something that cannot be done properly / easily with an automated tool.

Do you at least get the data points into the scene in Cinema? You should see them in the scene graph under your root object.

When I say “The Model” I mean the model that i want to motion capture to go to. (In your words, a skeleton of my own) And yes, I did get the points into cinema 4d. In response to the first paragraph, how do you get the animation onto a character then?

You can do this by using the PSR constraints. For each bone in your skeleton, you’ll have to add a constraint and set its type to “PSR”. Then set their target to the point you wish the bone to be constrained to. Make sure you have the skeleton tracking mode in NI mate set to “Basic + Orientation” so that you can also map the orientation of each bone.

If the points don’t map nicely the orientations are going to be done in the wrong direction / along the wrong rotation axis. In this case, apply a rotation offset for the PSR constraints.

A pretty common trick is to only map the position to the root bone in your hierarchy, and map orientation to every bone. Trying to copy the position for every bone will not usually work as the skeleton’s scale does not match that of the received motion capture data.

We’re getting somewhere, but whenever I try to do it, only the pelvis moves with the motion capture.

How is your skeleton hierarchy set up? Note that using IK constraints with motion capture data is generally a recipe for a disaster as the IK constraint will attempt to calculate the data for other bones based on the data of some other bone. Since with motion capture every bone in your hierarchy will have absolute data every frame you really cannot use any kind of IKs.

There are no IK chains.

Nice topic ! the very same trouble I’ve had. Can you guys kindly update the video tutorial for some of us to understand the the nimate c4d workflow well for the new version. It would be appreciated.
Having the plugin without knowing how to go around such a necessary step is quite terrible

Yes agreed I also need this, it would also be really helpful to have the second half of the tutorial as I’m unsure about whether I would have to re-scale my model (which I really don’t want to do.)

hi guys, i’m thinking about purchasing your software but really need to know if it’s going to work properly in cinema 4d. It seems like nobody on the web has a proper workflow for the new version without any problems… at least i couldn’t find anything. i’m in the middle of quite an important project and would like to kindly ask you if you could do a proper step by step guide or video on how to get the data onto a c4d rig. that would be greatly appreciated and would certainly make my decision to purchase NI mate easier. thanks.

Yes agreed I also need this. This is video tutorial.I’m also buy your software but really need to know if it’s going to work properly in cinema 4d. I hope, I urge you to spend less time to do video tutorial NI mate Cinema 4d.

so i decided to buy the software, got everything to work quite quickly up to the point with the psr constraints… they kinda do work too but i would like to see if you adjust the rotation offset in a particular way to get the best results? so a video tutorial on a good workflow to get the motion onto an existing rigged character would still be muuuuuch appreciated:)

ok, started working actually! wooh!

who can i contact to verify the functionality of the new licenses with the old software? ( since i need this mostly for leap motion and kintect v2. )

We have old versions of NI mate available here: What happened to V1.XX? I use that software!

Any NI mate 2 license works with all versions of NI mate 2. Make sure the software works with your Leap before buying it - we built the Leap support with the Leap SDK 1.0, and I think the current one is SDK 3.0