3Dリギング - 衣類
❗️ 注意
- スキンの最大影響数は4に固定する必要があります。(Unityの最適なウェイト値は4です)
- すべての衣服が1つの体を共有するため、baseBodyのウェイト値はデフォルトに設定する必要があります。
- 衣服セット(DR)の場合のみ、ウェイトを自由に塗ることができます。トップ(TOP)、アウター(OTR)、ボトム(BTM)などの衣服を組み合わせて使用する場合は、前述のアイテムを組み合わせることを考慮してウェイトを設定する必要があります。
- バインドスキンを行う際には、hipsおよびhips_scaleジョイントを含める必要があります。
- スキンが接続されている部分は、マスクのウェイト値と等しく設定する必要があります。
- creatorBaseSetが衣服の外に突き出ないようにウェイトを塗ります(マスクで隠せない部分)。
- マスクは正しく機能するために、頂点カラーで塗る必要があります。
- ジョイントやマスクにキーが挿入されているかどうかを確認します。もしそうなら、保存する前にそれらを削除します。
- .fbxファイルとして保存する際には、衣服(cloth)、ジョイント(hips)、マスク(mask)を選択する必要があります。
- キャラクターが動いたときに体が崩れないようにウェイトを設定します。
BaseBodyとモデリングされた衣服オブジェクトをロードします。
👍 File > CreateReferenceからcreatorBaseSet_ZEPETO.fbxを開き、BaseBodyを設定して、最終段階でファイルを簡単に整理できるようにします。
❗️ 注意衣服アイテムがAポーズで作成されている場合、Shoulder_LとShoulder_RのRotateZ値を-7.5に調整し、upperArm_LとupperArm_RのRotateZ値を-40に調整して、creatorBaseSetの関節をAポーズに設定します。
服の3Dマスキングプロセスを進めます。
- マスクを選択し、ペイント頂点ツールを使用して、服の後ろに隠れている部分を黒(0)に、見える部分を白(1)に塗ります。
bindSkinを行うためには、ジョイント(ヒップ)グループを開き、必要なジョイントを選択する必要があります。ここでは、ヒップを含める必要があります。
❗️ 注意 ヒップジョイントの重みはゼロであるべきです。
選択したジョイントにアイテムオブジェクトを追加し、Skin > Bind Skinをクリックしてオプションウィンドウを開きます。オプションで、Bind toをSelected Jointsに設定します。
- bindskinを行う際には、shinsとwristsがスムーズに変形するように、lowerArm(Leg)TwistとlowerArm(Leg)Twist_scaleを含めます。
👍 現在のプロセスに必要なジョイントのみを選択することで、作業効率を向上させることが重要です。
👍 体の形状によりbaseBodyが服に追加される場合、体の端の重みはマスクの重みと同じであるべきです。
マスクの重み値をコピーして、衣服オブジェクトの重み値に貼り付けます。(骨盤、lowerArmTwist_L_scale、lowerArmTwist_R_scale、lowerLegTwist_L_scale、およびlowerLegTwist_R_scale)
- 重み値をコピーする際、creatorBaseSetジョイントとリギングジョイントのTransZ値を0.001に設定してから重み値をコピーします。
ジョイントを一つずつ動かし、崩れる部分を修正します。
- スケールジョイントの値を修正し、変形時に問題がないか確認します。
重みのプロセスが完了したら、すべてのジョイントの回転値を0に設定して、キャラクターがTポーズになるようにします。
マスクのunBindSkinプロセスを実行します(マスク)。
衣服オブジェクト、ジョイント(ヒップ)、マスク(マスク)を選択します。次に、[選択をエクスポート] をクリックして、それらを .fbx ファイルとして保存します。
❗️ 注意キャラクターのポーズが崩れた場合は、再度ウェイトプロセスを行う必要があります。
❗️ 注意ベースボディに接続されている部分が正常に動作しているか確認してください。また、内側のメッシュが出てこないように注意してください。
❗️ 注意次のステップの前に、Unity にアニメーションキーを挿入し、問題がないことを確認してください。