uv-workflow について
uv-workflowは、ゲームアセットやモジュラーキットの本番用UVレイアウトを作るアーティスト向けのスキルです。シーム配置、テクセル密度の確認、パッキング、ライトマップ用チャンネル、UDIM計画を扱います。
主な機能
- 01UVレイアウトとシーム位置の計画
- 02テクセル密度の一貫性確認
- 03UVアイランドの展開とパッキング
- 04ライトマップ用UVチャンネルの設定
- 05UDIMとモジュラーアトラスの計画
活用シーン
- 01テクスチャ制作前のUV準備
- 02モジュラーキット用共有アトラスの作成
- 03ベイク照明向けライトマップUVの作成
- 04ヒーローアセット用UDIMタイルの配置
MCP 対応
このスキルでは、MCPによるシームの設定、メッシュの展開、UVアイランド数とパッキング効率の照会、UVチャンネルの割り当て、重複の検証を説明しています。
インストール
コマンドをコピーしてターミナルで実行します。
$
npx skills add https:/ / github.com/ arjun988/ blender-skills --skill uv-workflowインストール後、Claude Code で/uv-workflowを入力して読み込まれたか確認します。
同梱ファイルreferences/texel-density.mdreferences/trim-sheets.md
詳細
UV ワークフロー
テクセル密度を統一した効率的な UV レイアウト。目立たないエッジにシームを配置します。エンジンですぐに使えます。
使用するタイミング
- トポロジーを確定した後、テクスチャリングの前
- モジュラーキットの UV アトラス計画
- ライトマップ用 UV チャンネルの設定
- ヒーローアセット向けの UDIM ワークフロー
ワークフロー
UV Planning → Seam Marking → Unwrap → Texel Density Check
→ Pack → Mirror/Overlap Decision → Lightmap UV (if needed) → Validation
シーム配置ルール
シームの配置場所:
- 頭部の後ろ、背骨の中心線
- 腕の内側、脚の内側
- あごの下、オブジェクトの底面
- ハードサーフェスのパネルエッジ(構造上の継ぎ目)
- 衣服や重なりの下に隠れる部分
シームを配置しない場所:
- 顔(正面)
- ゲームプレイ中に主に見えるサーフェス
- 変形する関節の中心(近くの目立たない部分へ移動)
テクセル密度
計算式: Texel Density = Texture Resolution / UV Island Size in UV space
視認できるサーフェス間で一貫性を保ちます:
| アセットの種類 | 目標 TD(px/m) |
|---|---|
| ヒーロー | 512–1024 px/m |
| 標準 | 256–512 px/m |
| 背景 | 128–256 px/m |
アトラスを共有するモジュラーキットのパーツでは、同じ密度を使用します。
アンラップ方法
| 方法 | 使用するタイミング |
|---|---|
| Smart UV Project | ラフブロックアウトの UV のみ |
| Follow Active Quads | ストリップ状の UV(道路、四肢) |
| Cube Project | 箱型のハードサーフェス |
| Lightmap Pack | ライトマップチャンネル |
| 手動シーム+Unwrap | 制作時の標準 |
UV パッキング
- マージン:0.002–0.01 UV 単位(エンジンに依存)
- パッキング効率を最大化できるようにアイランドを回転
- アイランドをマテリアル ID ごとにグループ化
- 関連するアイランドを UV 空間内で近くに配置
- 制作では UVPackmaster または標準のパック機能を使用
ミラー UV
- 対称キャラクターでは UV をミラーリング(テクスチャ領域を節約)
- エンジンで固有のベイクが必要な場合は、ミラーしたアイランドを少しずらす
- 別々のメッシュにする場合は、オブジェクト名でミラーした半身を示す:
_L/_R
UDIM ワークフロー
単一の 4K テクスチャを超えるヒーローアセットの場合:
- タイル 1001:頭部
- タイル 1002:胴体
- タイル 1003:四肢
- 制作ブリーフにタイルの割り当てを記録
ライトマップ UV
第 2 UV チャンネルの要件:
- アイランドを重ねない
- テクセル密度の一貫性はそれほど重要ではない
- ライトのにじみを防ぐため、より大きなマージン(0.02 以上)を確保
- テクスチャ用 UV とは別にパッキング
モジュラー UV アトラス
1. Plan shared atlas resolution (2048/4096)
2. Assign UV islands per module to atlas regions
3. Trim sheet regions for repeating detail
4. Vertex color variation for module differentiation
5. Document atlas layout for texture artist
MCP 統合
- 対応している場合は、MCP 経由でシームをマークします
- MCP 経由でアンラップを実行します
- UV アイランド数とパッキング効率を確認します
- MCP 経由で UV チャンネルを割り当てます
- 意図的なミラーを除き、UV が重なっていないことを検証します
検証チェックリスト
- 意図しない UV の重なりがない
- 視認できるサーフェスのテクセル密度が一貫している
- ゲームプレイ中の視点でシームが隠れている
- UV アイランドが 0–1 の範囲内にある(または UDIM タイルが割り当てられている)
- 必要に応じてライトマップチャンネルを分離している
- パッキング効率が 75% を超えている
制約
必ず行うこと
- 最終モデリングの前に UV を計画する(UV の要件をトポロジーに反映)
- テクセル密度の一貫性を保つ
- 論理上の構造エッジにシームを隠す
- ベイクライティングのパイプライン用にライトマップ UV を作成する
- モジュラーキット用のアトラスレイアウトを記録する
必ず避けること
- Smart UV Project を最終的な制作 UV として使用する
- 固有のサーフェスディテールで UV を重ねる(ミラーの場合を除く)
- 同じアセットの種類でテクセル密度を不統一にする
- 顔や主に見えるサーフェスにシームを配置する
- パッキングマージンを省略する
リファレンスガイド
| トピック | リファレンス | 読み込むタイミング |
|---|---|---|
| テクセル密度の計算 | references/texel-density.md | ヒーローアセット |
| トリムシート | references/trim-sheets.md | モジュラーキット |
コメント
Markdown 対応