This shows you the differences between two versions of the page.
Next revision | Previous revision | ||
democap:blender_democaptools [2022/04/18 20:27] – created dragonlord | democap:blender_democaptools [2025/03/23 15:23] (current) – dragonlord | ||
---|---|---|---|
Line 1: | Line 1: | ||
- | {{tag> | + | {{tag> |
<WRAP youarehere> | <WRAP youarehere> | ||
[[: | [[: | ||
Line 9: | Line 9: | ||
====== Installation ====== | ====== Installation ====== | ||
+ | |||
+ | ===== Blender 4.2 or newer ===== | ||
+ | |||
+ | Using the new extension system in Blender search for " | ||
+ | |||
+ | ===== Blender 3.x ===== | ||
Install first the [[tools: | Install first the [[tools: | ||
Line 14: | Line 20: | ||
The addon scripts can be installed using the typical Blender3D workflow for [[https:// | The addon scripts can be installed using the typical Blender3D workflow for [[https:// | ||
- | You can download the zip file from: [[https:// | + | You can download the zip file from: [[https:// |
Click the " | Click the " | ||
Line 21: | Line 27: | ||
Now a new toolbox panel is added with the title " | Now a new toolbox panel is added with the title " | ||
+ | |||
+ | |||
+ | ====== DEMCA Browser ====== | ||
+ | |||
+ | <WRAP box right :en > | ||
+ | {{ : | ||
+ | \\ | ||
+ | {{ : | ||
+ | </ | ||
+ | |||
+ | DEMoCap saves captures using multiple files as outline in [[democap: | ||
+ | * Timestamp when capture has been done | ||
+ | * Name of [[democap: | ||
+ | * Path of *.deanim file created. The path is either relative to the democap capture directory or the project data directory depending on how the capture has been done. | ||
+ | * Playtime in seconds and framerate. | ||
+ | * List of bones captured | ||
+ | * Optional *.deanim and *.derig file for VR device captures if present | ||
+ | |||
+ | The <wrap em>DEMCA browser panel</ | ||
+ | |||
+ | The panel contains a <wrap em>file listing</ | ||
+ | |||
+ | Above the file listing are two buttons to jump to important directories. | ||
+ | |||
+ | The <wrap em> | ||
+ | * Linux: ~/ | ||
+ | * Windows: %AppData%\DELaunchers\Config\games\e31f1c11-3ca6-c66b-adca-95484bedfc1f\capture\animations | ||
+ | |||
+ | The <wrap em> | ||
+ | * Linux: ~/ | ||
+ | * Windows: %AppData%\DELaunchers\Config\games\e31f1c11-3ca6-c66b-adca-95484bedfc1f\config\projects | ||
+ | |||
+ | If you have a *.demca file entry select you can use the buttons below the file information panel to import animations. | ||
+ | |||
+ | ===== Import Animation ===== | ||
+ | |||
+ | Select an Armature that is compatible with the character contained in the motion capture. Press the button and wait for the import to be done. Depending on the playtime of the motion capture the importing can take a longer time to finish. Once the button is no more highlighted the import finished. | ||
+ | |||
+ | ===== Import Devices Rig ===== | ||
+ | |||
+ | This button can be used if the motion capture contains VR device capture information. Press this button to import the rig used by the motion capture to store the VR device input data. The bones in this rig are named after the VR device they represent. This import is quick and produces an Armature. | ||
+ | |||
+ | If multiple captures use the same VR device configuration you have to import this rig only once. | ||
+ | |||
+ | ===== Import Devices Animation ===== | ||
+ | |||
+ | This button can be used if the motion capture contains VR device capture information. Select the Armature imported by " | ||
+ | |||
+ | ===== Import Object Rig ===== | ||
+ | |||
+ | This button can be used if the motion capture contains object position and orientation information. Press this button to import the rig used by the motion capture to store the object parameters. The rig contains these bones: | ||
+ | * <wrap em> | ||
+ | * <wrap em> | ||
+ | This import is quick and produces an Armature. | ||
+ | |||
+ | If multiple captures use object position and orientation you can use the same rig layout but you have to duplicate the object since each attached object needs a unique parent. | ||
+ | |||
+ | ===== Import Object Animation ===== | ||
+ | |||
+ | This button can be used if the motion capture contains object position and orientation information. Select the Armature imported by " | ||
+ | <WRAP clear/> | ||
+ | |||
+ | ====== Correction Bones ====== | ||
+ | <WRAP box right :en >{{ : | ||
+ | |||
+ | The <wrap em> | ||
+ | * Correct actor poses to remove unwanted arching and rotating | ||
+ | * Fit motion capture pose to existing animations they are overlaying to get better looking blending | ||
+ | * Exaggerate or tone down motions | ||
+ | * Create variations of motions | ||
+ | |||
+ | ===== Add Correction Bones ===== | ||
+ | |||
+ | To use correction bones you have to first add them to your armature. Enter <wrap em>Pose Mode</ | ||
+ | |||
+ | Correction bones are added directly to your armature to allow saving them into the actions as well as allowing them to be animated for fine control. The added bones are named <wrap em>" | ||
+ | |||
+ | For each corrected bone a bone constraint is added using the respective correction bone as input. | ||
+ | |||
+ | If the <wrap em>Add Rot</ | ||
+ | |||
+ | If the <wrap em>Add Rot+Loc</ | ||
+ | |||
+ | The image below shows the process of adding bones to the Dragonroo example character. | ||
+ | {{ : | ||
+ | |||
+ | The image below shows how rotating spine correction bones offsets the animation without destroying it. | ||
+ | {{ : | ||
+ | |||
+ | ===== Align Correction Bones ===== | ||
+ | |||
+ | If the motion captured animation is used by blending over an existing animation (for example an idle animation) then it is useful to align the animation to match as closely as possible the base animation at the beginning and end. This allows to blend into the motion captured animation with the highest quality. | ||
+ | |||
+ | To align correction bones activate the action and frame number to use as animation frame to match against. Select the correction bones to copy the original bone world space transforms for. It is also possible to select the respective original bones instead but selecting the correction bones is a faster workflow. With the bones selected click the <wrap em>Copy Bone Matrices</ | ||
+ | |||
+ | The typical workflow to create overlay motion capture animations is to align the first and last frame to the base animation. Optionally add keyframes at 0.5-1s after the begin and before the end with the rotation and location cleared. This way the corrections ensure the animation fits well over the base animation when blended into while the clearing ensures the animation playes unmodified after being fully blended in. | ||
+ | |||
+ | It is also possible to the aligning to match specific time positions inside the animation to an existing animation. | ||
+ | |||
+ | The video below shows how this works. The imported animation is aligned to a base animation. Blending into the animation would produce good results like this. As an of altering the motion captured animation the spine is bend over causing the character to play the motion captured animation in a hunched over pose instead of the upright one as performed by the actor. | ||
+ | {{ youtube> | ||
+ | |||
+ | ===== Copy Bone Matrices ===== | ||
+ | |||
+ | Copies world matrix of all selected bones into copy buffer. | ||
+ | |||
+ | ===== Copy Subtract ===== | ||
+ | |||
+ | Copies world matrix of all selected bones and subtracts them from the bone matrices in the copy buffer. If a bone does not exist yet in the copy buffer it is copied instead. Hence after using '' | ||
+ | |||
+ | ===== Paste Bone Matrices ===== | ||
+ | |||
+ | Paste bone matrices in the copy buffer to the selected bones. If a bone has no matching matrix in the copy buffer nothing is done. This operator has two parameters: | ||
+ | |||
+ | ==== Overlay ==== | ||
+ | |||
+ | If ticked the bone matrices from the copy buffer are overlaid instead of replacing the selected bone world matrices. Overlaying allows to apply the difference between two poses stored in the copy buffer using '' | ||
+ | |||
+ | ==== Negate ==== | ||
+ | |||
+ | If ticked and '' | ||