Unity + SteamVR + VIVE Pro for motion capture
Software information
VIVE Pro
hardware information
vive pro can only use 2 base stations, and can only use vive tracker 2.0 or lower trackers
It is recommended to use vive pro 2 plus 2.0 base station*4 plus vive tracker 3.0*3
Here are the examples of vive pro plus 1.0 base station*2 and vive tracker 2.0*3 (you can modify this document example after upgrading the hardware)
Hardware introduction
VR helmet
VR controller
VR tracker
VR base station
Junction Box
tracker receiver
Hardware installation
From left to right are usb mini DP power cables
usb connect to pc usb mini DP the other end of the DP cable connect to pc
Access helmet cable
The base station is placed diagonally above the height of the human body
Start steamVR
Follow the prompts for spatial positioning
Plug the tracking receiver into the PC USB
SteamVR
Mainly provides solutions for VR experience, loading steamVR on steam, configuring VR helmet, VR controller, and tracker
Configure tracker
Open Manage VIVE Tracker
The tracker selects the left foot, right foot and waist
Import the steamVR plug-in in unity
window->steamVR Input generate configuration
Open bundle configuration
Start the unity project. Select the launched unity project in the bundle UI.
Modify controller information
You can see the left and right feet and waist you just configured
Configure each tracker
Adjust to post
Scene configuration
Import the bones that need to be operated
The skeletal animation type is Humanoid
Import FinalIK, mount Animator and its bones on the scene bones, and then mount VR IK
Create a new script to implement the following code and encapsulate it into a positioning method
VRIKCalibrator.Settings settings = new VRIKCalibrator.Settings();
VRIKCalibrator.Calibrate(Player.GetComponent<VRIK>(), settings, HeadController.transform,BodyController.transform,LeftHandController.transform,RightHandController.transform,LeftFootController.transform, RigthFootController.transform);
Player is the controlled bone
HeadController, etc. are VR controllers including head, waist, left hand, right hand, left foot and right foot.
Import the CameraRig prefab into the scene
In addition to retaining the original three objects, create a new waist, left foot and right foot.
In the configuration of SteamVR_Behaviour_Pose, Input Source, Waist corresponds to the waist tracker, LeftFoot corresponds to the left foot controller, and RightFoot corresponds to the right foot controller.
Scene starts and starts tracking
Run the unity scene, let the motion capture personnel wear the equipment and pose in a T shape. In order to achieve accurate positioning, run the positioning method twice. At this point, motion capture can be achieved.
Unity
EasyMotionRecorder
Skeleton animation recording software. After importing this software, you can record skeletal movements.
Import the EasyMotionRecorder prefab into the scene
Place the skeleton to be recorded into the specified position R to start recording X to stop recording
The action data you recorded will be generated in the Resources folder.
Right-click on the specified position to calculate the corresponding animation. The skeleton is Humanoid animation when recording, so it should be Humanoid animation when generated.
software extension
Unity
FBX Exporter+Timeline+Unity Recorder can export the recorded animation into an FBX file with animation
Bind Timeline animation to the bone object to be exported together with the bone
Drag the animation that needs to be exported into the frame track and import the corresponding animator
Open Window->General->Recorder->Recorder Window
Add Animation Clip and drag the corresponding scene skeleton into the GameObject
Click START RECORDING and start playing the TimeLine animation
Don’t forget to click STOP RECORDING after recording
The corresponding animation will be generated in Recordings later.
Create a new Animator Controller in the scene skeleton
Put the generated animation into the animation controller
Right click scene skeleton
Select Export To FBX
Modify the name and click Export
You can find the skeleton FBX with animation in the generation directory.
This FBX can be directly imported into 3DMax for use