MM_T_Pose をエクスポート

Export Optionはこう

MayaにFBXインポートした状態で保存する SKM_Quinn_Simple_Tpose.ma

Tposeのキャラクターモデル(ここではfanModelのサイトからダウンロードしたものを用意した)
https://www.deviantart.com/d-presso/art/Nier-Re-in-carnation-Levannia-XPS-DL-880627377
を開いて
先ほどのTposeのFBXをインポートして
Root ( SKM_Quinn_Simple_Tpose:root_Quinn_T_pose ) のトップ のjointをスケールしてキャラクターにあわせる。

複製してフリーズする

以下ツールでスキンウェイトをコピー
SkinWeightCopy_First_Select_MeshGroup_to_Second Select_MeshGroup.mel
// SkinWeightCopy First Select MeshGroup to Second Select MeshGroup
string $selectedArrFUllPath[] = `ls -long -sl`;
print($selectedArrFUllPath);
string $FirstSelect=$selectedArrFUllPath[0];
string $SecondSelect=$selectedArrFUllPath[1];
string $rejectArr[];
//string $inputNodes[] = `ls -type transform -long -dag $FirstSelect`;
//string $destNodes[] = `ls -type transform -long -dag $SecondSelect`;
string $inputNodes_mesh[] = `ls -type mesh -long -dag $FirstSelect`;
string $destNodes_mesh[] = `ls -type mesh -long -dag $SecondSelect`;
$inputNodes_meshlong=size($inputNodes_mesh);
$destNodes_meshlong=size($destNodes_mesh);
string $inputNodes[];
string $destNodes[];
clear $inputNodes;
clear $destNodes;
string $mesh;
string $parent;
for($d0 = 0; $d0 <$inputNodes_meshlong;$d0++){
$mesh=$inputNodes_mesh[$d0];
string $parentS[] = `listRelatives -parent -path -type transform $mesh`;
$parent=$parentS[0];
$inputNodes[size($inputNodes)] = $parent;
}
for($d0 = 0; $d0 <$destNodes_meshlong;$d0++){
$mesh=$destNodes_mesh[$d0];
string $parentS[] = `listRelatives -parent -path -type transform $mesh`;
$parent=$parentS[0];
$destNodes[size($destNodes)] = $parent;
}
print("$inputNodes= ------------------------------------------------ \n");
print($inputNodes);
print("$destNodes= ------------------------------------------------ \n");
print($destNodes);
$inputNodeslong=size($inputNodes);
$destNodeslong=size($destNodes);
string $buffer[];
string $buffer_i[];
$finded = 0;
for($d = 0; $d <$destNodeslong;$d++){
string $destNode_name=$destNodes[$d];
if($destNode_name==$SecondSelect){
}else{
print("$destNode_name= "+$destNode_name+"\n");
$numTokens = `tokenize $destNode_name "|" $buffer`;
$bufferlong=size($buffer);
string $destNode_name_Short = $buffer[$bufferlong-1]+"";
print("$destNode_name_Short= "+$destNode_name_Short+"\n");
$finded = 0;
for($i = 0; $i <$inputNodeslong;$i++){
string $inputNode_name=$inputNodes[$i];
$numTokens_i = `tokenize $inputNode_name "|" $buffer_i`;
$bufferlong_i=size($buffer_i);
string $inputNode_name_Short = $buffer_i[$bufferlong_i-1]+"";
print("$inputNode_name_Short= "+$inputNode_name_Short+"\n");
//$index=`gmatch $inputNode_name $destNode_name_Short`;
//if($index > 0){
if($inputNode_name_Short==$destNode_name_Short){
//$blendShapeName = $blendshapeRet_name;
print("$destNode_name= "+$destNode_name+" isHit!! "+"\n");
select -r $inputNode_name;
select -add $destNode_name;
copySkinWeights -noMirror -surfaceAssociation closestPoint -influenceAssociation closestJoint;
//copySkinWeights -noMirror -surfaceAssociation closestPoint -influenceAssociation closestJoint -sourceSkin $inputNode_name -destinationSkin $destNode_name;
$finded = 1;
}//if
}//for
if($finded==0){
$rejectArr[size($rejectArr)] = $destNode_name;
}//if
}//if
}//for
print("----rejected_list---start"+"\n");
print($rejectArr);
print("----rejected_list---end"+"\n");
select -r $FirstSelect ;
select -add $SecondSelect ;
適当にスキンウェイトを確認

rootとMesh 選択してFBX出力

UEへインポート

IKRig作成

IKRig設定

マネキンのほうはこう

IK Retargeter 作成

SounceにCreate>Import From Animation Sequence

MM_T_Pose選択

ポーズがそろう

Op Stack >Add Default Ops 押す とそろった

あとは必要なアニメーションを選択してエクスポート

追加で調整した作業 RootMotionを切ってエクスポートしないとだめだった



