UnityのThird Person Controllerでキャラクターモデルを別の3Dモデルに置き換える際、Humanoidリグやマテリアルの問題に悩むケースがあります。この記事では、BlenderからUnityへのインポート時に発生する一般的な課題と解決方法を整理しました。
Humanoidリグとボーン構造の基本
UnityのHumanoidリグは標準的なボーン構造に基づき、特定の名前や階層を想定しています。完全一致していないと、アニメーションの再ターゲットが正しく行われない場合があります。
例えば、Tポーズを正しく設定しても、ボーン名が異なるとUnityは自動的にポーズを補正し、走っているような状態でインポートされることがあります。
BlenderでのTポーズ確認
BlenderでTポーズに設定したモデルでも、Unityにインポートする際は、スケールや軸方向の設定を確認する必要があります。特にY軸やZ軸の向き、回転値がUnityの規定と一致しているかを確認してください。
また、Blender側で適用したマテリアルは、Unityにインポート時にマテリアルタイプやシェーダーの互換性により正しく表示されない場合があります。
マテリアルが真っ白になる原因と対策
Unityにインポートするとマテリアルが真っ白になる場合、主な原因はシェーダーの非対応やテクスチャの参照切れです。FBXのエクスポート設定でテクスチャを埋め込むか、Unityでマテリアルを再設定する必要があります。
Standard Shaderを使用することで多くのマテリアル互換性問題を解決できます。
モデル置き換えのステップ
1. BlenderでモデルをTポーズに整える
2. ボーン名と階層をHumanoidに適合させる
3. FBXでエクスポート時にスケール、回転、マテリアル埋め込みを確認
4. Unityにインポートし、RigをHumanoidに設定
5. マテリアルとアニメーションを再確認
この順序で作業することで、Third Person Controllerでの置き換えがスムーズになります。
まとめ
UnityでThird Person Controllerのキャラクターを別モデルに変更する際は、Humanoidリグの互換性、Tポーズの正確性、ボーン名、マテリアル設定が重要です。BlenderとUnityの両方で設定を整え、ステップを順に実施することで、意図したポーズと見た目でインポート可能になります。


コメント