ゲームデザイナーや 3D アーティストにとって、UV 展開後のテクスチャ制作とベイク処理は、最も手間のかかる工程の一つです。Leonardo.ai の 3D Texture Generation(3D テクスチャ生成機能)を活用すると、Wavefront .OBJ 形式のカスタム 3D モデルを直接アップロードし、テキストプロンプトによる指示で UV 座標に沿った高品質なテクスチャを自動生成できます。さらに、ノーマルマップやラフネスマップなどの PBR(物理ベースレンダリング)マップを一括で書き出し、Unreal Engine 5 や Unity などの主要ゲームエンジンに直接統合することが可能です。
背景プロップの量産、プロトタイピングの迅速化、スタイライズド質感の検証などにおいて、適切なメッシュの事前準備、プロンプト設計、トークン管理を押さえることで、制作期間を大幅に短縮できます。
前提条件:OBJ メッシュの必須技術要件
Leonardo.ai にモデルをアップロードする前に、以下の 2 つの技術要件を必ず満たしておく必要があります。
- ファイル形式は
.OBJのみ:3D Texture Generation ツールが受け付ける形式は.OBJのみです。.FBX、.GLTF、.BLENDなどはサポートされていません。 - 適切な UV 展開(UV Mapping)が必須:AI はモデルに設定された UV 配置を読み取り、表面にテクスチャを投影・マッピングします。UV が設定されていないモデルや、UV アイランドが崩壊しているモデルでは、テクスチャが大きく歪んで破綻します。
UV およびジオメトリの推奨設定
- 意図しない UV 重複の回避:対称モデリングによる左右対称の反転ミラーリングを除き、異なるパーツの UV シェルは重複させないでください。重複していると同一のテクスチャが割り当てられ、不自然なパターンの反復が生じます。
- シーム(縫い目)の配置:シームはモデルの溝、角、視線に入りにくい隠れた位置に配置します。AI はシーム境界をある程度滑らかに処理しますが、微小な継ぎ目が見える場合があります。
- テクセル密度(Texel Density)の均一化:モデル全体でテクセル密度を均一に保ち、パーツごとの解像度差を防止します。
- トポロジーのクリーンアップ:Blender、Maya、3ds Max などで、ノンマニホールドエッジ、反転法線、重複頂点をあらかじめ除去してからエクスポートしてください。
制作ワークフロー:白モデルから完成アセットまで
1. モデルのアップロード
Leonardo.ai の左側メニューから Texture Generation を選択します(または REST API エンドポイント POST https://cloud.leonardo.ai/api/rest/v1/generations-texture を使用します)。
UV 展開済みの .OBJ ファイルをドラッグ&ドロップでアップロードします。アップロードが完了すると、システム上で一意の modelAssetId が発行され、Web 上のインタラクティブ 3D ビューポートに素のメッシュが表示されます。
2. 質感特化型プロンプトの記述
2D 画像生成用のプロンプトとは異なり、構図、カメラアングル、背景の指定は省き、表面の材質や物理的状態に特化した語句を指定します:
- 基本材質:素材の種類を明示(例:"weathered cast iron" 風化した鋳鉄、"ancient chiseled sandstone" 削り出された古代砂岩、"scratched sci-fi armor" 傷ついたSF装甲、"hand-painted stylized oak bark" 手描き風オーク樹皮)。
- 経年劣化と質感:エッジの摩耗、錆、埃の堆積、光沢の強弱、微小なひび割れなどを具体的に記述します。
- 色彩とディテール:ベースカラー、装飾ライン、アクセントの色合いを指定します。
- プロンプト例:
"ornate fantasy broadsword blade, damascus folded steel pattern, darkened battle scratches, polished brass crossguard with verdigris patina, aged leather wrapped grip"
3. 3D Texture Preview(5 トークン)による事前確認
Leonardo.ai におけるテクスチャの完全生成(Full 3D Texture Generation)には 30 トークン を消費しますが、3D Texture Preview(プレビュー)ならわずか 5 トークン で実行可能です。
本生成の前に必ずプレビューを行い、3D ビューポート内でモデルを 360 度回転させて以下の点を確認します:
- テクスチャのスケール感がプロップのサイズと一致しているか
- シーム付近に不自然な切れ目がないか
- 意図した質感や色味が反映されているか
ズレがある場合は、プロンプトの調整やネガティブプロンプト(例:--no blur, glossy, plastic look)を追加して再度プレビューします。
4. Full 3D Texture Generation(30 トークン)の実行
プレビュー結果に納得したら、完全生成を実行します。サーバー上でマルチチャンネルテクスチャが計算され、以下の PBR マップが生成されます:
- Albedo / Base Color(ベースカラーマップ):固有色と質感パターンを保持する基本テクスチャ。
- Normal Map(ノーマルマップ):メッシュのポリゴン数を増やすことなく、表面の細かな凹凸を表現する法線マップ。
- Roughness Map(ラフネスマップ):光の反射と散乱度合いを制御するグレースケールデータ。
Leonardo 内の 3D ビューポートでライトの向きを変更し、ライティングに応じた反射や陰影の挙動を直接確認できます。
ゲームエンジンへのインポートとマテリアル設定
生成完了後、テクスチャマップおよびモデルアセットをダウンロードします。
Unreal Engine 5 への導入
- コンテンツブラウザにオリジナルの
.OBJ(または変換した.FBX)とテクスチャをインポートします。 - 新規マテリアルを作成し、マテリアルエディタを開きます。
- Albedo マップを Base Color に接続します。
- Normal マップを Normal に接続します(テクスチャの圧縮設定が Normalmap になっていることを確認)。
- Roughness マップを Roughness に接続します。
- モデルの一部が金属の場合は、スカラー値またはラフネスマスクから Metallic を制御します。
Unity(URP / HDRP)への導入
- Unity プロジェクトの Assets フォルダにモデルとテクスチャを配置します。
- 新規マテリアルを作成し、Shader を Universal Render Pipeline/Lit または HDRP/Lit に設定します。
- Albedo テクスチャを Base Map に割り当てます。
- Normal テクスチャを Normal Map に割り当て、警告が出た場合は Fix Now をクリックします。
- Roughness テクスチャを Metallic/Smoothness スロットに設定します(パイプラインに応じて滑らかさの反転設定を行います)。
実制作における注意点と活用指針
- 焼き込み影(ベイクドライティング)の処理:拡散モデルは画像から学習しているため、Albedo マップ内に固定的な陰影やアンビエントオクルージョン(AO)が焼き込まれる場合があります。動的ライティングのシーンで違和感がある場合は、Photoshop や Substance で明度を補正するディライティング(De-lighting)を行ってください。
- アセット種別ごとの使い分け:Leonardo の 3D テクスチャ生成は、背景プロップ、コンテナ、武器、環境岩石、モジュラー建築などに最適です。主人公キャラクターの顔や極めて精密な UDIM 設計が必要なヒーローアセットには、初期コンセプトやベース下塗りとして活用し、Substance 3D Painter で最終仕上げを行うワークフローが適しています。
- トークン運用の目安:無料プランでは毎日 150 トークンが付与され(24 時間ごとにリセット)、1 日あたり最大 5 回の完全生成が可能です。大規模な量産を行うスタジオやバッチ処理が必要なプロジェクトは、有料プランの月間 Fast トークン、繰り越しバンク(Rollover Bank)、または REST API 連携の活用が推奨されます。