見出し画像

(継続37日目)3Dモデルを作ってとりこみたい#1_UE5ラーニング

やったこと

meshy.aiとblenderで3Dモデルをいい感じにしようとした。(けど結論うまくいかなかった)

参考にさせていただいた動画

研究対象

なし

成果物

なし


気づいたこと

blenderでボーンをいい感じにできた、と思っても、そう簡単な話じゃなかった。

ChatGPTさんとの対話

Q meshy.aiで作成した3dモデル(.fbx)をUE5にインポートしても、エラーが出てしまいますし、ボーンが内容用です。どうすれば改善できますか?

A Meshy.aiで作成した3DモデルをUnreal Engine 5(UE5)にインポートする際にエラーが発生し、ボーンが存在しない問題を解決するために以下の手順を試してみてください。


1. Meshy.aiでの設定確認

  • ボーン構造の確認
    Meshy.aiでエクスポートされたモデルにリグ(ボーン構造)が含まれているか確認してください。

    • Meshy.aiではスキニング(ボーンとメッシュの結合)がサポートされていない場合、ボーン情報が含まれません。この場合、手動でリグを設定する必要があります。

  • エクスポート設定
    .fbxエクスポート時の設定を確認してください。特に以下をチェック:

    • FBXバージョン: UE5ではFBX 2016~2020を推奨。

    • アニメーション情報: アニメーションを含める設定になっているか確認。


2. Blenderなどでモデルを調整

  • Blenderでモデルを開く
    無料の3Dソフトウェア「Blender」を使って、Meshy.aiのモデルを確認・編集します。

    1. BlenderにMeshy.aiで作成したFBXファイルをインポート。

    2. ボーンがない場合、Blenderで新規ボーンを作成し、メッシュに適用(リグ付け)します。

    3. スケールや軸の問題を解消するため、Blenderで「Ctrl+A」で適用してリセットします(例:スケール、位置、回転)。

  • Unreal Engine用のエクスポート設定
    Blenderからエクスポートする際のFBX設定:

    • Scale: 1.0

    • Forward: -Z Forward

    • Up: Y Up

    • Apply Transform: チェックを入れる


3. UE5へのインポート時の設定

  • Skeletal Meshとしてインポート
    モデルがボーンを含む場合、「Skeletal Mesh」としてインポート。

    • ボーンがない場合は「Static Mesh」としてインポート。

  • エラーメッセージを確認
    インポート中のエラー内容を確認し、必要に応じてエクスポート設定を見直します。


4. ボーンやアニメーションが必要な場合

  • Meshy.aiではボーンの自動生成がない場合が多いです。そのため、以下を行う必要があります:

    • ボーンの作成: Blenderでリグを作成し、Unreal Engineのスケルタルメッシュと互換性を持たせる。

    • UE5でリグ設定: 「Skeleton Editor」で骨格やアニメーションの設定を行う。


5. 代替ソリューションを検討

  • Meshy.aiの出力がUE5に適さない場合、以下のサービスを検討:

    • Mixamo(リグ付け済みモデルを提供)

    • Reallusion Character Creator(高品質なリグ付きキャラクターを生成)


6. 追加デバッグ

  • UE5のログを確認
    UE5のOutput Logに詳細なエラーメッセージが表示されるため、エラー内容に応じた修正を行います。

  • エクスポートファイルの再チェック
    FBXファイルが破損していないか確認し、別のツールで正常に読み込めるかテスト。

Q blenderでモデルをま正面で見たい


A Blenderでモデルを正面から確認するには、以下の手順を実行してください:

方法:

  1. ビューを正面に切り替える:

    • キーボードでテンキーの「1」を押します。これにより、モデルが正面ビューに切り替わります。

    • テンキーがない場合、Blenderのメニューから 「ビュー」→「正面」 を選択します。

  2. 視点を固定する:

    • 必要であれば、キーボードの「N」を押して「ビュー」タブを開き、「ローカルビュー」などを調整してください。

  3. オブジェクトを中心に表示する:

    • モデルが正確に中央に表示されない場合、モデルを選択してから「Shift + C」を押すとカーソルが中央に戻ります。

    • 次に「Numpad .(ピリオド)」を押すことでモデルにズームインできます。

これで正面からモデルを確認できるはずです!

Q 顔だけ重なって見える状態です。これをすべてのボーンがみえるようにしたい

すべてのボーンをキャラクターのメッシュに重ねて見えるようにするには、以下の手順を実行してください。


手順

1. ボーンの可視設定を確認

  • アーマチュア(ボーン)を選択し、右のプロパティパネルから 「オブジェクトデータプロパティ」(人型のアイコン)を開きます。

  • 「Viewport Display」 セクションで以下を設定します:

    • Display As を「Wire」に設定 → ボーンをワイヤーフレームで表示します。

    • In Front を有効化 → ボーンを常にメッシュの前に表示させます。

2. ボーンのスケールや位置の確認

  • ボーンのサイズや位置がキャラクターに対して正しいか確認してください。

    • スケール調整:

      • ボーンがキャラクターの内部に収まっている場合、アーマチュアを選択し、「Sキー」でスケールを拡大して調整します。

    • 位置調整:

      • 「Gキー」で移動させて、キャラクターの体に合わせます。

    • 必要に応じてボーンのローカル軸を確認し、「Alt+G」で位置をリセットすることもできます。

3. ポーズモードでボーンを調整

  • ボーンの配置をさらに詳細に確認・調整するには「ポーズモード」に切り替えます。

    • アーマチュアを選択し、 「Ctrl+Tab」 を押してポーズモードに入ります。

    • ボーンを一つずつ選択して移動・回転させて正しい位置に揃えます。

4. アウトライナーでレイヤーの確認

  • アウトライナーで、すべてのボーンが可視になっているか確認します。

    • ボーンが非表示になっている場合は、目のアイコンをクリックして表示させてください。


問題解決のチェックポイント

  1. ボーンがすべてのパーツに配置されているか?

    • ボーンが欠けている場合、Blenderでボーンを手動で追加する必要があります。

    • 新規ボーンを作成する場合、「Edit Mode」に切り替え、「Shift+A」で新しいボーンを追加してください。

  2. メッシュのスケールや位置が適切か?

    • モデルがボーンに対して大きすぎたり小さすぎたりする場合、「Ctrl+A」でメッシュとボーンの「スケール」と「位置」を適用して一致させます。

  3. Unreal Engineに対応したボーン設定か?

    • UE5にインポートする場合、リグ構造が正しいか確認します(例: ヒューマノイドリグに合わせる)。

Q オブジェクトモードで、モデルとスケルトンの両方を選択して結合します。Ctrl + P を押して『自動ウェイト』を選択します →これのやり方を初心者向けに教えて

A Blender初心者向けに、「オブジェクトモードでモデルとスケルトンを結合し、Ctrl + Pで自動ウェイトを設定する方法」をわかりやすく説明します。


ステップ1: オブジェクトモードに切り替える

  1. Blenderの画面左上で、「モード」が「オブジェクトモード」になっていることを確認します。

    • もし「編集モード」や「ポーズモード」になっている場合、左上のプルダウンメニューから「オブジェクトモード」を選択してください。


ステップ2: モデルとスケルトンを選択する

  1. モデル(メッシュ)を選択します。

    • 左クリックでモデルを選択します。

    • 選択するとオレンジ色の枠で囲まれます。

  2. スケルトン(アーマチュア)を選択します。

    • キーボードの「Shift」キーを押しながらスケルトンを左クリックします。

    • これでモデルとスケルトンの両方が選択された状態になります。


ステップ3: Ctrl + Pで結合する

  1. 結合メニューを開く:

    • 両方が選択された状態で、キーボードの 「Ctrl + P」 を押します。

  2. オプションを選ぶ:

    • 表示されるメニューから 「With Automatic Weights(自動ウェイト)」 を選択します。

      • 自動ウェイトを選ぶことで、モデルとスケルトンが適切に結合され、スケルトンを動かすとモデルも動くようになります。


ステップ4: 結果を確認する

  1. スケルトンを選択した状態で、「ポーズモード」に切り替えます。

    • スケルトンを右クリックして選択し、「Ctrl + Tab」 でポーズモードに変更します。

  2. ボーンを動かしてモデルが正しく連動して動くか確認します。

    • ボーンを選択し、「Gキー」で移動や「Rキー」で回転させてみてください。

    • モデルが一緒に動けば成功です!


トラブルシューティング

  • モデルが正しく動かない場合:

    • ボーンがモデルと正しく対応していない可能性があります。

    • 「ウェイトペイントモード」 でウェイトを調整してください。

  • スケルトンが表示されない場合:

    • 「右サイドバー → オブジェクトデータプロパティ → Viewport Display → In Front」をチェックしてください。

Q コントロール+Pを押してどれ?

A 「Ctrl + P」を押しても期待したメニュー(「自動ウェイト」など)が表示されない原因として、以下のようなことが考えられます。正しい設定にするための手順を以下に説明します。


原因1: スケルトン(アーマチュア)とモデルが正しく選択されていない

  • 解決策:

    1. 必ずモデルを先に選択します(オレンジ色の枠で囲まれる)。

    2. その後に「Shift + 左クリック」でスケルトン(アーマチュア)を選択します。

      • スケルトンが白いアウトラインで表示され、アクティブ(最後に選択されたオブジェクト)になります。


原因2: モードが「オブジェクトモード」ではない

  • 解決策:

    1. 画面左上の「モード」メニューを確認します。

    2. 「オブジェクトモード」になっていることを確認してください。

      • 他のモード(例: ポーズモードや編集モード)だとメニューが正しく表示されません。


原因3: スケルトンがアーマチュアとして認識されていない

  • 解決策:

    1. スケルトンを選択して、右側のプロパティパネルの「オブジェクトデータプロパティ」タブ(人型アイコン)を確認します。

    2. アーマチュアとして設定されていない場合は、正しいアーマチュアを作成してください。


正しい手順での再試行

以下の手順で再度試してください:

  1. オブジェクトモードに切り替える

  2. モデルを選択する

    • 左クリックでモデル(メッシュ)を選択。

  3. Shiftキーを押しながらスケルトンを選択する

    • スケルトンを後から選ぶことで、スケルトンが「アクティブ」な状態になります。

  4. Ctrl + Pを押す

  5. 表示されるメニューで「自動のウェイトで」を選択。


それでも表示されない場合の確認事項

  • モデルとスケルトンが適切に配置されているか:

    • モデルとスケルトンが異常に離れている場合、正しく動作しないことがあります。

  • モデルが適切にトランスフォーム適用されているか:

    • モデルとスケルトンの「位置」、「スケール」、「回転」が適切でない場合、「Ctrl + A」で「位置」、「回転」、「スケール」を適用してください。

Q うまく自動ウェイトできましたが、モデルとボーンを重ねて表示したいのです。

A モデルとボーンを重ねて表示するには、以下の手順を実行してください。これにより、メッシュの中に埋まったボーンを表示できるようになります。


手順

1. ボーンを前面に表示する

  • スケルトン(アーマチュア)を選択します。

    • 左クリックでアーマチュアを選択。

  • 右側の 「プロパティパネル」「オブジェクトデータプロパティ」(人型のアイコン) を開きます。

  • Viewport Display セクションを展開し、以下を設定します:

    • In Front にチェックを入れる。

      • この設定で、ボーンが常にメッシュの前に表示されるようになります。


2. ボーンの表示形式を変更する

  • 同じ「Viewport Display」セクションで、Display As を「Wire」に設定します。

    • これにより、ボーンがワイヤーフレーム表示になり、メッシュと重なっても見えやすくなります。


3. ポーズモードで動きを確認

  • アーマチュアを選択した状態で、「Ctrl + Tab」 を押してポーズモードに切り替えます。

  • ボーンを動かしてみて、モデルとボーンが連動していることを確認します。


トラブルシューティング

  • ボーンが小さくて見えない場合:

    • アーマチュアを選択し、「Sキー」でスケールを調整してサイズを大きくしてください。

  • ボーンが正しい位置にない場合:

    • 「Edit Mode」に切り替えてボーンの位置を調整します。

Blender初心者向けに、ボーン(アーマチュア)をモデルに重ねて表示する手順を、簡単にわかりやすく説明します。


1. ボーンを前面に表示する方法

メッシュの中に埋もれたボーンを見やすくするために、ボーンを前面に表示します。

  1. ボーンを選択:

    • 左クリックで「metarig」(画像ではボーンの名前)を選択します。

  2. 右側の「プロパティパネル」を開く:

    • 画面右側の人型のアイコン(「オブジェクトデータプロパティ」)をクリックします。

  3. 「In Front」を有効にする:

    • 「Viewport Display」 というセクションを探します。

    • その中の 「In Front」 というオプションにチェックを入れます。

    • これで、ボーンがメッシュよりも常に前面に表示されるようになります。


2. ボーンの表示形式を変更する方法

ボーンが見やすいように表示形式を変更します。

  1. 「Display As」を変更:

    • 同じく「Viewport Display」セクション内にある 「Display As」 を見つけます。

    • プルダウンメニューで「Wire」(ワイヤーフレーム)を選択します。

    • これにより、ボーンが線で表示されるようになり、メッシュと重なっても視認しやすくなります。


3. モードの確認

  • オブジェクトモードにいることを確認してください。

    • 左上に「オブジェクトモード」と表示されていればOKです。

    • 必要に応じて「ポーズモード」に切り替えると、ボーンを動かしてモデルとボーンの動きを確認できます。


4. アウトライナーで確認

アウトライナー(画面左のリスト)では、ボーンやモデルが正しく表示・選択されていることを確認します。

  • 画像では「metarig」がアーマチュア(ボーン)です。

  • 隠れている場合は、目のアイコンをクリックして表示させてください。


初心者向けのポイント

  • 「In Front」を有効化するだけで、ボーンが常に見えるようになる!

  • 「Wire」表示にすれば、ボーンとモデルが見やすい!

「In Front」はBlenderの設定の一つで、ボーン(アーマチュア)をモデルの前面に強制的に表示するオプションです。以下の手順で設定を確認し、初心者でも分かりやすいように説明します!


1. 「In Front」の場所を確認する方法

  1. ボーンを選択する:

    • Blender画面でボーン(アーマチュア)をクリックして選択します。

    • 選択すると、アウトライン(枠)がオレンジ色になります。

  2. 「オブジェクトデータプロパティ」を開く:

    • 画面右側にアイコンが並んでいる場所があります。

    • 人型のアイコン(「オブジェクトデータプロパティ」)をクリックします。

      • アイコンは、人の頭と肩のような形をしています。

  3. Viewport Displayを探す:

    • 「Viewport Display(ビューポート表示)」というセクションを下にスクロールして探します。

  4. 「In Front」を有効化:

    • 「In Front」というチェックボックスを見つけたらクリックして有効にします。

      • これで、ボーンがモデルの前面に常に表示されるようになります!


画像で場所を説明

以下の手順を実行することで、ボーンの「In Front」オプションを簡単に見つけることができます:

  1. 右側の 人型アイコン をクリックする。

  2. 「Viewport Display」という項目の中にある 「In Front」 を探す。

  3. チェックを入れる。


補足

  • もし「In Front」が見つからない場合:

    • ボーン(アーマチュア)を選択していることを確認してください。

    • 別のオブジェクトが選択されていると表示されません。

  • 効果を確認する:

    • 「In Front」を有効にすると、ボーンがモデルの内部に隠れることなく、常に見えるようになります。

Q これでボーンごとUE5にインポートするにはどうすればいい?

A Blenderでボーン付きのモデルをUnreal Engine 5(UE5)にインポートする方法を、初心者向けにわかりやすく説明します。


1. Blenderでの準備

1-1. モデルとボーンが結合されているか確認

  • モデルとボーンを**「自動ウェイト」**で結合したことを確認してください(Ctrl + P → 自動ウェイトを選択)。

  • Blenderで「ポーズモード」に切り替え、ボーンを動かしてモデルが正しく動くかテストしてください。

1-2. 位置とスケールを適用する

  • UE5で正しい位置・サイズで表示するため、以下を行います:

    1. オブジェクトモードで、モデルとボーンを選択します。

    2. キーボードで 「Ctrl + A」 を押して、「位置、回転、スケール」を適用します。

1-3. エクスポートする準備

  • Blenderの「アウトライナー」でモデルとボーンが正しく選択されていることを確認します(Ctrl を押しながら両方を選択)。


2. FBX形式でエクスポート

2-1. エクスポートメニューを開く

  1. 上部メニューから 「ファイル」 → 「エクスポート」 → 「FBX (.fbx)」 を選択します。

2-2. エクスポート設定

エクスポート画面で以下の設定を行います:

  1. 右側の設定で重要なポイント:

    • 選択オブジェクトのみを有効にする(余計なオブジェクトを含めない)。

    • **アーマチュア(ボーン)メッシュ(モデル)**が選択されていることを確認。

  2. ジオメトリ設定:

    • 「Apply Modifiers(モディファイア適用)」をチェックします。

  3. アーマチュア設定:

    • 「Add Leaf Bones(リーフボーン追加)」のチェックを外す(UE5ではリーフボーンが不要なため)。

  4. 軸の設定:

    • 「Forward」を -Z Forward に、「Up」を Y Up に設定。

  5. 保存先を指定し、「エクスポート」をクリック。


3. Unreal Engine 5でのインポート

3-1. FBXファイルをUE5にインポート

  1. UE5のContent Browserを開きます。

  2. エクスポートしたFBXファイルをContent Browserにドラッグ&ドロップします。

3-2. インポート設定

  • Skeletal Mesh(スケルタルメッシュ)としてインポートする場合:

    • 「Skeletal Mesh」にチェックを入れる。

    • 「Import Animations(アニメーションをインポート)」もチェック(必要なら)。

    • ボーン構造を「Skeleton」項目で確認します。

3-3. インポート完了後の確認

  • メッシュビューアを開き、ボーン構造が正しくインポートされているか確認。

  • 必要に応じて「Skeleton Editor」でボーンの階層や動作をチェックします。


トラブルシューティング

  • ボーンが崩れる場合:

    • Blenderで位置・回転・スケールが適用されていない可能性があります。

    • 再度「Ctrl + A」で適用してください。

  • モデルが動かない場合:

    • 自動ウェイトが適切に設定されていない可能性があります。

    • Blenderでウェイトペイントモードを使って確認してください。


いいなと思ったら応援しよう!

この記事が参加している募集