Community画像github.com

m4bwav/polywright-references

3Dモデルに必要な参照画像、ビュー、テクスチャを収集・生成するスキル。モデリングや image-to-3D の前に、正投影図、ターンアラウンド、シームレステクスチャ、PBRマップなどをアセットの refs/ フォルダに整理します。

polywright-references とは?

このスキルは、3Dモデリングや image-to-3D ワークフローにおいて、高品質な結果を得るために不可欠な参照資料(リファレンス)を体系的に収集・生成するためのルールと手順を提供します。主に Claude Code や Cursor などの AI エージェント向けに設計されており、アセットの refs/ フォルダに整理された参照を元に、モデラーやスクリプト(bpy)が正確な作業を行えるようにします。 スキルは、現実の物体、乗り物、建築物、キャラクターなど、モデルの種類に応じて収集すべき参照(写真、設計図、地図など)と生成すべき参照(正投影図、ターンアラウンド、ブロックアウトからのレンダリング、シームレステクスチャ、PBRマップ)を明確に定義します。また、画像生成ツールを用いる際の具体的なプロンプトルール(背景、照明、ポージングなど)や、一貫性を保つための多角度アダプターの利用、ブロックアウトからのビュー生成、テクスチャ生成コマンド(pw.py texture)の使い方など、実践的なノウハウが詳細に記述されています。 さらに、歴史リサーチパックとの連携や、生成されたビューを検証するための anachronism.md の参照、スケール基準の設定、画像から3Dへの入力画像の条件など、プロフェッショナルな3D制作パイプラインに沿った総合的なガイドとなっています。メンテナンス情報や evergreen.json による状態管理にも対応し、長期的に使い続けられる設計です。

対応✓Claude Code~Codex CLI~Cursor
npx skills add https://github.com/m4bwav/polywright/tree/HEAD/skills/polywright-references

Installed? Explore more 画像 skills: steipete/songsee, affaan-m/frontend-design, mattpocock/improve-codebase-architecture · View all 6 →

お気に入りのAIに質問する

このエージェントスキルを事前に読み込んだ状態で新しいチャットを開きます。

ドキュメント

polywright-references は何をしますか?

リファレンスは3Dの結果の大部分を決定します。image-to-3D モデルは入力画像の照明、遠近感、ミスをそのままコピーします。モデラーや bpy スクリプトが必要とするのは寸法とビューです。これらを最初に収集または生成し、アセットの refs/ に配置し、それぞれを pw.py manifest --add-source で記録します(生成されたものはモデル名とシードを記録します)。

ハブに戻る: ../polywright/SKILL.md。プロンプトテンプレートとチェック: references/reference-kit.md。

ステップ 1: このモデルに必要なもの

モデル収集(現実)生成(想像または不足分)
現実の物体定規を同じ平面に置いた6方向からの写真、接写、実寸(メーカーシート、Wikipedia、メジャー)写真が不十分な場合のみ正投影のクリーンアップ
乗り物、製品、家具青写真またはCAD図面(既知の寸法を1つ確認)、メーカー寸法フロント、サイド、トップの工業製図スタイルの立面図
建築物フットプリント(OSM)、高さまたは階数、各面の写真、屋根の形状面ごとの立面図、屋根平面図
実在の場所地図の抜粋、標高、航空写真、ランドマークの地上写真なし:場所はデータから得られます(polywright-capture)
想像上の小道具スタイルリファレンス斜めからのヒーロー画像1枚、次にフロント/レフト/バック/ライトを同じスケールで
キャラクターまたは生き物スタイルと衣装のリファレンスターンアラウンド:フロント、サイド、バック、斜め、Aポーズ、ハイトバー、無地背景
サーフェス(壁、地面、地形)素材の写真、平らで均一な照明シームレスタイル可能なアルベド、次にマップ(ステップ4)

常にスケール基準を追加してください:既知の寸法、1.8 mの人間のシルエット、シート上のハイトバー。

歴史リサーチパック(historywright プラグインによって作成された、answer.md、refs/index.json、anachronism.md を格納したフォルダ)は、すでに有効なアセットフォルダです。そこから開始し、再度検索しないでください。refs/index.json を読んでください:各リファレンスには、オブジェクト自体の日付、場所、機関、登録番号、ライセンスがあります。ブリーフの期間に合致する object_date を持つリファレンスのみを使用してください。nc: true のリファレンスを商用モデルに使用しないでください。メッシュ化する前に、生成されたすべてのビューを anachronism.md と照合してください。

ステップ 2: ビューの生成(重要なルール)

画像ツールに依頼すること:1つのオブジェクト、中央、フレームの約3分の2を占めるように、無地の白または薄灰色の背景、フラットで均一な影のない光、強い遠近感なし(長焦点または正投影風)、1024 px以上、テキストなし。キャラクターはリラックスしたAポーズ(腕を30〜45度下げ、脚を少し開く)で立たせます:Tポーズはプロポーションを歪め、アクションポーズはジェネレーターやリガーで失敗します。種類ごとのテンプレートはキットにあります。

1つの画像から一貫した追加ビューを得るには、マルチアングルアダプターを備えた画像編集モデル(Qwen Image Edit with a Multiple Angles LoRA、2025-2026)を使用すると、各ビューを個別にプロンプトするよりもアイデンティティを維持できます。色ずれが予想されるため、各ビューをフロントにカラーマッチしてください。生成されたすべてのビューをフロントと照合してください:同じプロポーション、同じ腕の数、同じアイテム、再照準されていないこと。矛盾するビューは破棄してください。間違った背面図は、ないよりも悪いです。実際のオブジェクトの色は、ピクセル(中央値の色相、彩度、明度)から名前を付け、単語からは付けないでください:編集モデルは画像よりも単語を優先します(L-003)。背面図はフロントのマークを背面にコピーする傾向があります。

Z-Image Turbo ホスト用の既成ワークフロー: references/zimage-reference.api.json({SUBJECT} プレースホルダー、2026-10-11 テスト済み)。

ステップ 2b: デザインされた小道具のシートはモデルから作成する

小道具がデザインされている場合(武器、道具、乗り物の部品が言葉やファンシートで説明されている)、テキストプロンプトが形状の半分しか提供し続けない場合、プロンプトをやめてください:bpy スクリプト(polywright-blender レシピ「A designed prop from a written description」)でモデルを構築し、モデルからシートをレンダリングします。サイドとトップの正投影、フラットなミッドグレー上、GPU がビジーな場合は CPU で Cycles を使用します。モデルは正確で、各ノートの後に数秒で再レンダリングでき、同じファイルが後で小道具を画像に合成します(ハブ:「Compose a model into a picture」)。パーツが鏡像ペアで登場する場合、または一方が他方の後ろに隠れる場合、サイドカメラを10〜15度上げてください。

ステップ 3: ブロックアウトからのビュー(ビューが一致しない場合)

ラフなブロックアウト(プリミティブ、または最初のフロントのみの生成メッシュ)を構築し、pw.py render <file> --out refs/blockout --views front,right,back,left --color clay でレンダリングし、次に画像編集モデルに各グレーのレンダリングを被写体の色と詳細で再ペイントさせます(レンダリングを最初のリファレンス、フロントビューを2番目のリファレンスとして image-to-image)。カメラだけが動くため、再照準されたり、余分な手足が生えたりすることはありません。背面はブロックアウトが示唆するものしか表示できません。ペイントし直したセットをマルチビュー生成にフィードします。

ステップ 4: テクスチャとマテリアル

  • 生成されたものよりも CC0 マテリアル(Poly Haven、ambientCG)を優先します。
  • 生成されたタイル可能テクスチャ:「seamless, tileable, top-down, flat even light」を2の累乗サイズで依頼し、次に pw.py texture <img> --out refs/tex --seamless(オフセットブレンドでシームを処理)を実行し、2x2 タイリングを確認します。
  • 写真やアルベドからのクイックマップ:pw.py texture <img> --out refs/tex [--convention opengl|directx] は、輝度から導出されたハイト、ノーマル、ラフネスを書き出します。小道具や地形には適していますが、測定されたマテリアルには不適切です。ノーマルマップ:Blender、Unity、Godot、glTF、three.js、Roblox では OpenGL(Y+)、Unreal では DirectX(Y-)を使用します。
  • 写真のベイクされた光はアルベドにもベイクされます:上流でフラットな光で修正するか、--delight を追加します(広域グラデーションを分割します。鋭いキャストシャドウは残るため、それらをペイントで除去します)。ノーマルマップはシェーディングのみを変更します:シルエットはフラットなままで、大きな形状はグレージング角度で壊れるため、大きな形状はモデリングし、マップには小さな詳細のみを配置します。

ステップ 5: それらを活用する

  • Blender の場合:フロント、ライト、トップビューに参照画像を空オブジェクトとして配置し、既知の寸法にスケーリングします(pw.py render からの正投影レンダリングは metres_per_px を報告します)。レシピは polywright-blender にあります。
  • image-to-3D の場合:正方形、パディング済み、1024 px。pw.py gen はパディングと背景除去を自動で行います。GPU 実行前に画像を評価し、メッシュではなく画像で修正すべき点を判断してください:references/images-for-3d.md。
  • 人間用のボード(PureRef 2.1)の場合:ビューごとにグループ化し、ボードに寸法を記入します。

メンテナンス

常緑ユニット、階層 fast。コンパニオン:RESEARCH.md、CHANGELOG.md、LEARNINGS.md、TESTS.md(evals/evals.json を含む)、MAINTENANCE.md、状態は evergreen.json に。使用時に evergreen.json を読み、期限が来たら更新してください。

Individual skills in this repo

This repo contains 4 individual skills — each has its own dedicated page.

m4bwav/polywright

Start here whenever a task needs a 3D model and no sibling below clearly owns it: a model of a real or imagined thing for a game (Unity, Roblox, Unreal, three.js), a 3D print, AI video or AR, or another plugin asking for a mesh. Picks the route (find, capture, generate, code), scaffolds the asset folder and manifest other plugins read, and runs pw.py (inspect, render a sheet, convert, check a budget, bpy headless, match a picture's camera, army blockouts with depth and pose passes for AI...

m4bwav/polywright-blender

Use whenever Blender is scripted, automated or debugged, before writing any bpy code: headless runs that report errors (pw.py bpy), the bpy API traps models still write in Blender 5.x (removed importers, renamed sockets, EEVEE names), tested recipes (modifiers, booleans, remesh, UVs, bakes, turntables, depth passes, batch exports), Blender MCP servers and their risks, and other 3D tools per OS. Use on 'write a Blender script', 'automate Blender', 'batch export .blend', any bpy traceback or...

m4bwav/polywright-finish

Use whenever a mesh must be made ready for a game engine, the web or AR: is it game-ready, too many polygons, LODs, retopology, UVs, baking, PBR and normal-map conventions, collision, rigging, and axis, unit and format export for Roblox, Unity, Unreal, Godot, three.js (meshopt, KTX2), USDZ and video blockouts. Use on 'is this game-ready', 'make this work in Roblox/Unity', 'optimise for the web', 'reduce polygons', 'add LODs', 'retopologise', 'bake normals', 'imports sideways or tiny', 'flip...

m4bwav/polywright-generate

Use whenever an imagined or hypothetical 3D model must be made from a prompt, a drawing, concept art, photos or a blockout: image-to-3D through ComfyUI (TRELLIS.2, Pixal3D, Hunyuan3D-2 via pw.py gen) or hosted (Meshy, Tripo, Rodin), or code (bpy, build123d, CadQuery, OpenSCAD) when it has dimensions; then texturing and the licence record. Use on 'make me a 3D model of a dragon', 'turn this drawing or concept art into 3D', 'image to 3D', 'text to 3D', 'TRELLIS', 'Hunyuan3D', 'Meshy', 'model a...

関連スキル