AIが生成した3DモデルのノーマルベイクをStep-by-Stepで解説

TL;DR
- ノーマルベイクは、ハイポリメッシュの表面ディテールをノーマルマップとしてローポリメッシュに転写することで、ジオメトリのコストを抑えながら見た目を保持する手法です。
- AI生成メッシュは、ベイクの前にクリーンアップと専用のローポリターゲットの作成が必要になるケースがほとんどです。
- 実際のワークフローは「クリーンアップまたはリトポロジー → UV展開 → プロジェクション設定 → ベイク → 確認 → エクスポート」という流れで進みます。
- ゲームアセットにはtangent spaceのnormal mapを使用し、ハイポリとローポリのメッシュの位置を合わせておきましょう。
- アーティファクトの大半は、プロジェクション距離、面の反転、ハードエッジやUVシームの不一致、パディング不足が原因です。
AI 3Dジェネレーターは数秒で細部まで作り込まれたモデルを生成できますが、生成された状態のままではリアルタイムエンジンには重すぎるケースが多くあります。ノーマルベイクを使えば、その表面ディテールを軽量なローポリ版に転写できます。本ガイドでは、クリーンなローポリメッシュの準備からBlenderでのベイク、よくあるアーティファクトの修正まで、ワークフロー全体を解説します。
「ノーマルベイク」とは実際何をしているのか?
ノーマルベイクは、ハイポリモデルの細かい表面ディテールをnormal mapとして生成し、ローポリ版に転写する処理です。溝やスクラッチ、ベベルをジオメトリとして保持するのではなく、テクスチャを使ってサーフェスの各点が光にどう反応すべきかを記録します。
normal mapはポリゴンを追加したり、シルエットを変えたりするものではありません。ライティング計算で使われるサーフェス法線を変化させることで、最適化されたメッシュがハイポリに近い外観を保てるようにします。このメッシュのノーマルベイクワークフローは、リアルタイムゲームアセットの標準的な手法です。
AI生成の3Dモデルにはなぜ特別なアプローチが必要か
従来のアセットパイプラインでは、スカルプトで作ったハイポリモデルと対応するローポリターゲットを用意するのが一般的です。しかしAI生成メッシュの多くは、そもそもの出発点が異なります。AIが生成した3Dモデルのノーマルベイクに使えるよう最適化するには、まず一つの高密度な結果物に対して様々な処理を施す必要があります。
AI生成メッシュにはローポリのペアが存在しない
高密度のAIメッシュはハイポリソースとして使えますが、ベイクにはローポリの受け取り側が別途必要です。ジェネレーターやモードによっては、UVや最適化されたトポロジーも新たに作成または修正する必要があります。
AIの出力物がすべて制作に使えるレベルだと思い込まないことが重要です。デシメート、リメッシュ、リトポロジーのどれが必要かを判断する前に、ポリゴン密度、シルエット、UV、トポロジー、サーフェスの整合性を確認してください。
トポロジーが乱れていることが多い
AIが生成した生のメッシュには、ポリゴン密度のばらつき、エッジフローの弱さ、非多様体領域、重複面、小さな穴が含まれることがあります。これらはプロジェクションのアーティファクトや不安定なシェーディングの原因になるため、ベイク前に明らかなジオメトリの問題を修正しておきましょう。
何が変わるのか
主な違いは追加の準備段階にあります。適切なローポリターゲットを作成し、ジオメトリを確認し、クリーンなUVを展開してからベイクに入ります。その後の工程は、従来のゲームアセットと同じハイからローへのワークフローと変わりません。
従来のワークフローとAI 3Dノーマルベイクワークフローの比較

Step 1:AIモデルからローポリモデルを準備する
アセットには2つの整合した状態が必要です。ハイポリソースとなる元の高精度メッシュと、ベイクしたマップを受け取る最適化済みメッシュです。
オプションA:自動デシメートまたはリメッシュ
岩、家具、プロップなどの硬質オブジェクトには、自動デシメートやリメッシュが最も速い選択肢です。Smart Meshのようなツールは、リアルタイムワークフロー向けのクリーンで最適化されたローポリトポロジーを生成できます。結果を確認し、アセットに合わせたターゲット面数を調整してください。
オプションB:リトポロジー
キャラクターや変形・曲げが必要なアセットには、手動またはクアッドベースのリトポロジーがより確実です。エッジループはフォルムと想定される動きに沿わせることで、変形、UVレイアウト、ベイクの安定性が向上します。
どこまでポリゴンを削減すべきか?
ポリゴン数はあくまでも出発点の目安であり、絶対的なルールではありません。小さなプロップなら数千トライアングル、大きな環境パーツなら5,000〜20,000程度、キャラクターならプラットフォーム、カメラ距離、変形、LOD戦略によって10,000〜20,000以上が必要になることもあります。
細かい表面ディテールよりもシルエットの保持を優先してください。ベイク後にnormal mapがその多くのディテールを補完します。
元のメッシュはハイポリとして保持する
元の高密度メッシュのコピーをハイポリソースとして保存しておきましょう。最適化した版がランタイムアセットとなり、ベイカーはソースのディテールをそのUVレイアウトに投影します。
ノーマルベイク用のAI 3Dモデル準備

Step 2:ローポリのUV展開
normal mapは2Dテクスチャであるため、ローポリモデルには重複のないUVレイアウトが必要です。シームはプロップの底面や服のつなぎ目など、目立ちにくい場所や構造的に自然な場所に配置します。
アイランド間には出血(ブリーディング)を防ぐための十分なパディングを設け、意図しない重複も避けてください。自動UV展開ツールは良い出発点になりますが、ベイク前にシーム、アイランドのスケール、向き、間隔を必ず確認しましょう。
ノーマルベイクのためのUV展開のベストプラクティス

Step 3:ベイクのセットアップ(ハイポリ・ローポリ・cage)
ベイク前に、ハイポリとローポリのメッシュが正しく設定されていることを確認します。ベイクエラーの多くはソフトウェア側の問題ではなく、位置やプロジェクション設定の誤りが原因です。
ハイポリとローポリを同じ位置に配置する
ハイポリとローポリのオブジェクトは、意図した位置・回転・スケールを共有し、トランスフォームが一致または適切に適用されている必要があります。ローポリのサーフェスはハイポリのシルエットに沿っていれば十分で、すべてのディテールを囲む必要はありません。プロジェクション範囲はcageまたはレイ設定で制御します。
cageとは何か、なぜ役立つのか
cageはローポリメッシュを拡張したもので、プロジェクションレイの始点を定義します。適切にフィットしたcageは関連するハイポリのディテールを囲みつつ、無関係なサーフェスには届かないようにすることで、レイの欠落やクロスプロジェクションを軽減します。
レイ距離またはエクストルージョンの設定
専用のcageを使わない場合はMax Ray Distanceを調整し、cageを使う場合はcageのエクストルージョンを調整します。万能な値は存在しません。モデルの単位とスケールを確認し、全体サイズのごくわずかな割合から始め、テストベイクを実行して、目的のディテールが得られるまで少しずつ増やしていきましょう。
距離が小さすぎるとディテールが取りこぼされ、大きすぎると近くのジオメトリにヒットして無関係な印影が生まれます。指、ストラップ、くぼみ、重なり合う部分など、問題が起きやすい箇所は個別に確認してください。

Step 4:Blenderでnormal mapをベイクする
ハイポリメッシュ、ローポリメッシュ、UVの準備ができたら、Blenderでnormal mapをベイクします。基本的なセットアップは数ステップで完了します。
- レンダーエンジンをCyclesに切り替えます。
- ローポリオブジェクトを選択し、マテリアルを作成してImage Textureノードを追加し、ターゲット画像を作成して、そのノードを選択かつアクティブな状態にします。
- レンダープロパティ > BakeでNormalを選択し、Selected to Activeを有効にします。ハイポリソースを先に、次にローポリターゲットを選択してローポリオブジェクトがアクティブな状態にし、cageまたはレイ距離を設定します。
- Bakeをクリックし、モデル上で結果を確認してから、Blenderを閉じる前に生成された画像を保存します。
解像度はアセットのスクリーンサイズとテクセル密度の予算から決めます。小さなプロップには1Kで十分な場合があり、多くの環境アセットには2Kが一般的で、4Kは本当に近接ディテールが必要なアセットに限定すべきです。解像度はUVやプロジェクション設定の不備を補うことはできません。
Tangent SpaceとObject Space、どちらを選ぶべきか?
ゲームアセットのノーマルベイクには、ほとんどの場合Tangent Spaceを選択します。tangent spaceのマップはメッシュサーフェスに対して相対的に方向を定義するため、オブジェクトが変形・移動しても使い続けられます。これはアニメーションするアセットやリアルタイムエンジンでの標準的な選択です。
Object Spaceのマップはオブジェクトのローカル座標系で法線を保存します。スタティックまたは特殊なパイプラインで役立つことがありますが、変形には向きません。ターゲットのレンダラーとアセットワークフローがobject spaceの法線を明示的に必要としている場合にのみ使用してください。

Step 5:結果を確認し、よくあるエラーを修正する
ベイクの成功はBlenderの処理が終わった時点では確定しません。アセットをエクスポートする前に、さまざまなライティング角度でnormal mapとモデルの両方を確認してください。ベイクの問題の多くは、原因がわかれば簡単に修正できます。
マップを読み取る
tangent spaceのnormal mapは通常ブルーパープル系の色になりますが、色だけではベイクが正確かどうかは判断できません。ローポリモデルにプレビューし、回転するライトの下で確認して、黒いギャップ、無関係な部分をまたぐグラデーション、誤ったサーフェスから投影されたディテールがないかを確認しましょう。
スキューやレイのにじみ
ディテールが引き伸ばされている場合、レイまたはcageがソースサーフェスに合っていないことが原因です。プロジェクション距離をローカルで調整し、必要に応じて近接パーツを分離して再ベイクしてください。ハードサーフェスアセットの場合は、ハードエッジ、スムージング、UVスプリットの関係も確認します。
見えるUVシーム
シームが見えてしまうのは、パディング不足、ハードエッジとUVスプリットの不一致、またはベイカーとエンジンのtangent basisの違いが原因である場合があります。パディングを増やし、必要なハードエッジでUVを分割し、ターゲットのレンダラーでエクスポートされたアセットをテストしてください。
反転した法線または誤った法線
モデルの一部が裏返しに見えたり、ライティングが反転して見える場合は、メッシュの法線を再計算し、面の向きが逆になっていないか確認してください。BlenderではRecalculate Outsideを使用し、Face Orientationを有効にして向きが誤っているポリゴンを特定します。わずかな枚数の反転面でも最終的なnormal mapにはっきりとしたアーティファクトが生まれることがあるため、再ベイクの前に面の法線を修正してください。

Step 6:エンジンへのエクスポートと利用
ローポリメッシュをベイクしたnormal mapとともに、パイプラインがサポートするFBX、GLB、OBJなどの形式でエクスポートします。ノーマルテクスチャは別ファイルとして保持するか、フォーマットとツールチェーンがそのワークフローをサポートしている場合はアセットと一緒にパッケージングします。
UnityまたはUnreal Engineでは、テクスチャをnormal mapとしてインポートし、マテリアルのnormal入力に接続します。UnityはY+(OpenGLスタイル)のnormal mapを使用します。他のターゲットパイプラインでライティングが反転して見える場合は、デフォルトでグリーンチャンネルを反転させるのではなく、そのパイプラインの規約を確認してから対処してください。
複数の光源方向と想定される表示距離で最終アセットを確認します。優れたローポリメッシュとnormal mapは細かい表面ディテールを保持しますが、大きなシルエットの特徴はやはりジオメトリが必要です。

ノーマルベイクが必要ではないケース
ノーマルベイクにはセットアップと管理のコストがかかるため、すべてのアセットに必要というわけではありません。単純な形状のプロップ、遠景オブジェクト、短期間のプロトタイプには、最適化されたメッシュとシンプルなマテリアルで十分な場合があります。
normal mapが変えられるのはライティングのみです。穴、深いカットアウト、外形の変化を作ることはできません。あるフィーチャーがシルエットに影響したり、独自の影を落とす必要がある場合は、それを表現するためのジオメトリを保持してください。
よくある質問
3Dモデリングにおけるベイクとはどういう意味ですか?
ベイクはある表現から別の表現に選択した情報を転写する処理です。ノーマルベイクでは、ハイポリのサーフェス方向をローポリメッシュ用のテクスチャに書き込みます。これにより、ランタイムメッシュを軽量に保ちながら、細かい視覚的ディテールを保持できます。
Blenderでnormal mapをベイクするにはどうすればよいですか?
Cyclesを使用し、ローポリオブジェクトにクリーンなUVを用意してアクティブなImage Textureターゲットを作成します。ハイポリソースを先に選択し、次にローポリターゲットを選択してからSelected to Activeを有効にし、tangent spaceのNormal mapをベイクします。ベイクが完了したら画像を確認して保存します。
リトポロジーなしでAI生成の3Dモデルにノーマルをベイクできますか?
適切なUVがあればどのメッシュにもデータをベイクできますが、高密度モデルをそれ自体にベイクしても最適化の恩恵はほとんどありません。ゲームアセットの場合は、Smart Mesh、デシメート、リメッシュ、またはリトポロジーで別途ローポリターゲットを作成してください。元の高密度メッシュはディテールソースとして保持します。
ノーマルベイクにはハイポリとローポリの両方が必要ですか?
標準的なハイからローへのノーマルベイクには、はい、両方必要です。ハイポリメッシュがディテールを提供し、ローポリメッシュがそれを受け取ります。両者は同じ座標空間に揃える必要があり、cageまたはレイ距離でプロジェクションを制御します。マルチレゾリューションワークフローは、1つのメッシュのサブディビジョンレベル間でベイクできる別のケースです。
AI生成の3Dモデルをテクスチャリングしたり修正するにはどうすればよいですか?
まずすべてのモデルに対して一つの自動修正を適用するのではなく、ジオメトリ、法線、UV、トポロジーを確認します。大きな欠陥を修復し、適切なローポリ版を作成してUVを展開し、必要なマップをベイクします。その後、実際に使用するレンダラーまたはエンジンでアセットをテクスチャリングしてテストします。
tangent spaceとobject spaceのnormal mapの違いは何ですか?
tangent spaceのマップはメッシュサーフェスに対して相対的に方向を保存するため、ゲーム、スキンドキャラクター、変形するオブジェクトでの通常の選択肢です。object spaceのマップはオブジェクトのローカル座標系を使用するため、スタティックまたは特殊なパイプラインに限定して使うのが最善です。
まとめ
ノーマルベイクにより、高密度なソースメッシュを実用的なリアルタイムアセットに変換できます。クリーンなローポリターゲットを準備し、ディテールをベイクして、使用先のエンジンで検証しましょう。準備段階を短縮するには、Tripo AI Studioから最適化されたトポロジーを出発点にして、プロジェクトに合わせてUVとベイク設定を丁寧に調整してください。






