scenario-zbrush-paint-render について
キャラクターのペイントとプレゼンテーションを扱うZBrushスキルです。ポリペイント、テクスチャ、レンダーを使うアーティストやエージェント向けに、解剖学的な色分け、マスク処理、段階的な確認、マップ容量の検査をまとめています。ポートフォリオ用の画像やターンテーブルにも対応します。
主な機能
- 01解剖学に基づく色分けの計画
- 02マスクと強度を指定した塗りつぶし
- 03ポイント数とテクスチャ容量の確認
- 04ニュートラル・フラット・マテリアル表示での確認
- 05レンダー、パス、ターンテーブルの作成
活用シーン
- 01キャラクターの肌色と解剖学的な色分け
- 02頂点数の制約内でのカラーマップ書き出し
- 03ポートフォリオ用画像やターンテーブルの準備
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ scenario-labs/ skills --skill scenario-zbrush-paint-renderインストール後、Claude Code で/scenario-zbrush-paint-renderを入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
references/critique.mdexpert-notes.mdgui-paths.mdprocedures.mdsources.mdscripts/zb_paint.py詳細
ZBrushでのペイントとレンダリング(テクスチャ・プレゼンテーションアーティスト)
ZBrushでの熟練したペイントとは、観察を体系化することです。皮膚の下にあるものを基に色のゾーンを配置し、シェーダーで色が失われない程度に強め、ニュートラルなビューとフラットなビューで評価し、メッシュが保持できる解像度でベイクします。タブレットを持たないエージェントの場合、その大半はボタン操作です。生成したマスクを使って選択した強度で塗りつぶし、ゾーン画像をメッシュに投影し、数値で測定しながら目視でも確認するレンダリングを行います。ここで名前が挙がっている関連スキルが利用可能なスキルにない場合は、ユーザーにインストールを依頼してください(npx skills add scenario-labs/skills --skill <name>)。無人で進める場合は、ツールスキーマに基づいて作業し、不足しているスキルを明記してください。
必須の背景知識: scenario-zbrush-expert(ブリッジ、ストロークエンジン、レビューループ、2026年の注意点)。
基本方針(専門家との違い)
- 最上位レベルで、最後にペイントします。 ポリペイントは頂点ごとに1色です。低いレベルでペイントするとぼやけ、後からレベルを追加すると崩れます。また、マップはポイント数に応じたものになります(2Kマップあたり約400万ポイント。そこでは4Kは無駄です)(FlippedNormals)。
- ニュートラルとフラットで評価します。 SkinShade4またはMatCap White01に、Flat Colorを組み合わせます。色付きのMatCapでは補正しすぎてしまい、ほかの環境ではエクスポート結果がおかしく見えます(FlippedNormals、Pablo)。
- 美しさより先に構造を整えます。 まず、解剖学に基づいて純粋な黄色、赤、青のゾーンマップを配置します。骨と脂肪は黄色、薄い組織は赤、くぼみは青、男性では下部に青を多めにします。その上から不透明度を低くして肌色を重ね、ゾーンが透けて見えるようにします(Pablo)。エージェントにとっては、数値で確認できる方法でもあります。
- 「本当のコツ」はマスクです(Pablo): 生成、Mask Adjust、Inverse、マスク越しの色付けです。エージェントが大きく柔らかいブラシを使う場合は、反転したマスク越しに低いRGB IntensityでFillObjectを使います。RGB Intensityに応じて効果が変わり(FlippedNormals)、Pavlovichは反転したAOマスク越しに塗りつぶします。ツールチップには「Fill 3D Object Masked」と表示されます。
- 彩度はスタイライズの調整つまみです(Pablo)。色が薄まることを見越してペイントします(FlippedNormals)。 シェーダーはポリペイントの色を薄めます。どこまで強調するか決める前に最終的なレンダラーを選び、現実的な肌色はカラーピッカーの中間付近に保ちます。
- コントラストで視線を誘導します。 最も強い明度または彩度のコントラストは目に使い、目と口に最も時間をかけます(FlippedNormals)。
- 小さく速く試してから、大きくゆっくり作業します(Pavlovich)。 Error Thresholdを高くして小さくテストし、レンダリングを並べて比較してから、再レンダリングではなくパスから仕上げを組み立てます。
- 表示に関する注意点(Maxon docs)。 テクスチャを表示するとポリペイントが隠れます。RedshiftではPolypaintマテリアルだけがペイントを表示します(Use Material Color 0、白いBase)。SSS Weightを1にするとペイントが隠れ、MatCapではテクスチャが表示されません。
最初に確認すること
| 入力 | 変更内容 | 指示がない場合のデフォルト |
|---|---|---|
| 目的:ゲーム用アルベド、映画のルックデヴ参照、静止画、カラー印刷、コンセプトペイントオーバー | 塗りつぶした影を許可するか、マップサイズ、納品物 | プレゼンテーション用静止画、ポリペイントとしてカラーを保持 |
| レンダラー | マテリアル、パス、ターンテーブルの手順 | BPR。Redshift は別アプリケーションであり、mx1 product list ではこの Mac に未インストールと表示されています(2026-09-24)。インストール前に確認してください |
| スタイル | 彩度の目標、ゾーンの単純化 | 上流スキルのスタイル:scenario-zbrush-character-creature はリアル、scenario-zbrush-stylized はスタイライズされています |
| 対象:性別、年齢、体格、肌の色 | ゾーンの配置と色相 | 1 回確認し、それでも指定がなければ、平均的な体格の成人で肌の色は明るいと仮定し、その旨を伝えてください |
| カラーの納品物 | UV、マップサイズ、Flip V | 頂点カラー。UV がある場合にのみテクスチャを追加します |
| 画像 | ドキュメントサイズ、ビュー、ターンテーブル | 1920 x 1080(Pavlovich);正面、斜め前、横顔、背面;レビュー用ターンテーブルは 36 フレーム、納品用は 30 fps で 180 フレーム(Movie のデフォルト)[追加] |
ワークフロー
ツールキット:scripts/zb_paint.py、ZBrush 側の関数は
zp.remote("name", ...) 経由で呼び出します。完全なコードは
references/procedures.md を参照してください。各段階の後にバージョン付きの ZTL を保存してください。元に戻す機能はありません。
- 事前確認。
paint_state()(レベル、ポイント数、UV、テクスチャ表示)、recommend_map_size(points)、texture_off()を実行し、ZTL を保存します。ゲート:最上位レベルであること、map_budget(points, side)に合格すること、v001 がディスク上にあること。必要ならここで分割し、ペイント後には分割しないでください。 - セットアップとベース。
set_paint_mode("rgb")(Zadd と Zsub はオフ)、fill(colour, 100)を実行します。くすんだ肌色のベース(FlippedNormals、doc)またはゾーン方式では純粋な黄色(Pablo)にします。ゲート:フラット表示の正面で塗りつぶし色が見え、Colorize がオンになっていること。 - ゾーンマップ。 パーツ(目、スカーフ、歯、服):
fill_subtoolsを使用します。ポリグループ:polypaint_from_polygroups()で確認し、zone_fill_by_split()で正確に塗りつぶします(複製、グループ分割、各パーツを塗りつぶし、Colorize をオンにして Project All で戻します)。1つのメッシュ上の解剖学的領域:skin_zone_plan→zone_image→polypaint_from_image(実際の UV を作成する前に平面 UV を使用)。フォールバックとして、合成した Color Spray ストロークを使います。ゲート:skin_zone_checks(stage="zones")を実行します。額は中顔面より黄色く、中顔面はより赤く、男性の下顔面はより青く、それぞれの差が少なくとも1 JND(Lab で 2.3)あること。意図的に道化師のように見えること(Pablo)、すべてのゾーンが該当する解剖学的領域にあること。 - カバーとばらつき。 ゾーンの上から肌色を20〜40パーセントで重ねます(doc は RGB で約30、Pablo は低不透明度のカバー)。ゾーン画像のノイズまたは Color Spray ストロークでばらつきを加えます。ゲート:
stage="covered":道化師のように見えないこと(彩度が0.75を超える肌ピクセルは最大5パーセント[追加])、斑点があること。 mask_passによるマスクパス。キャビティを20〜40パーセントで暗く、赤くします。PeaksAndValleys(PVRange 14)または Smoothness に淡い暖色の塗りつぶしを使います。紫がかった赤のアンダートーンでao_pluginマスクを適用します(後で ping)。Pablo の Adjust Colors はダイアログです[live_p06 で確認]。同じマスクを使い、低い塗りつぶし値で置き換えます。マスクデータは読み取れないため、mask_coverage(masked, cleared)でマスクを確認します。 ゲート:各パスで領域の統計値が少しずつ変化し、すべてを合わせると、後頭部も含めて肌らしく見えること。- 焦点と仕上げ。 目:虹彩画像(暗い輪、下部は明るく、上部は暗く、瞳孔に近づくほど明るい)を目の SubTool に投影し、わずかに発散させます。唇も仕上げます。レンダラーが AO を追加しない場合を除き、光が決して届かない部分だけを選択的に暗くします。リアリティを出すために5〜10パーセントのウォッシュを加えます。ゲート:目のコントラストを含め、最後に
skin_zone_checksを実行してから、フラット、SkinShade4、MatCap White01 のシートをreferences/critique.mdに照らして評価します(paint_review)。 - カラーを出力。
texture_from_polypaint(path, side, flip_v=True)には UV が必要です(クローンに UV Master を適用します。Paste UVs ではポリペイントが保持されます)。または OBJ の頂点カラーを使うか、Substance Bridge Send PolyPaint を使用します。ゲート:マップ予算に合格すること、非対称のマークが想定位置にあること、ファイルがディスク上にあること。 - レンダリング。 保存してから
set_document_sizeを実行します(テストでは小さなサイズにします。Resize はキャンバスをクリアしますが、関数が描き直します)。render_setup(パースペクティブ、シャドウ、AO)を実行し、bpr_renderまたはpaint_views(..., "bpr")でビューを揃えます。ゲート:render_checksに合格し、レンダリングを100パーセント表示で確認したこと。 - パスとターンテーブル。
export_bpr_pass(ダイアログが開く場合があります)を実行します。道化師パスはsubtool_solo_viewsとid_passを併用します(ペイントとポリグループはそのままにします)。composite(マスクを通してシャドウと AO を Multiply で合成)を実行し、turntable_framesは短いチャンクに分けて実行してからassemble_turntableを使います。ゲート:すべてのフレームが直立し、フレーミングが一定であること。コンポジットは、ビューティーパスと切り替えて比較したときに上回ること。 - ポートフォリオとレポート。 グレーのフォームビュー(
colorize_all(False)、zb_review.review、元に戻す)、アルベドとビューティーのビュー、ID パス、ターンテーブル、1枚のシートを用意します。測定したもの、目視のみで確認したもの、実行できなかったものをレポートします。
数値
| 値 | 比較対象 | 出典 |
|---|---|---|
| 2K マップあたり約 400 万ポイント。2K は 400 万ピクセルで、UV カバレッジ 70 パーセントの場合、使用可能なピクセルは約 300 万 | マップの辺の長さと頂点数 | FlippedNormals 00:30:32;doc |
| FillObject の RGB Intensity が N パーセントの場合、ブレンドも N パーセント | 現在の色 | FlippedNormals 00:02:51 |
| RGB 約 30 のゾーン、約 10 のウォッシュ。Draw Size 150 の範囲を覆い、ゾーンは 100 以下 | ブラシストローク | doc Painting a Head |
| PVRange 14 | Mask PeaksAndValleys | Pablo 01:26:37 |
| Map Border は高(フレーム 4 と 16)、FlipV はオン | Multi Map Exporter | FlippedNormals 00:31:22 |
| 最終サイズは 1920 x 1080。テストは 1280 x 720 または 720 x 405。ポストカードは 3200 x 2133。印刷はインチ x 300 ppi | ドキュメント | Pavlovich;doc |
| 最終レンダーの Error Threshold は 0.01、テストでは 1(4 秒対 9 秒)。Progressive は 64、ノイズ除去時は 25 | Redshift | Pavlovich 040h 00:44:03 |
| HDRI 使用時のメインライトは 0.1(0 にはしない)。EXR のガンマは 2.2。macOS の Redshift のガンマは 1.8 | Light、Background | Pavlovich 00:23:12;doc |
| Crease Level は SmoothSubdiv より 1 低くする(3 と 4) | ソフトエッジのハイライト | Pavlovich 00:21:26 |
| Movie Turntable はデフォルトで 180 フレーム | Movie > Modifiers | Pavlovich FvpG 00:19:56 |
| リアルな平均 HSV 彩度は 0.5 未満 | 皮膚領域、Flat レンダー | Pablo 01:10:30(ピッカーの中央) |
| 1 JND = 2.3 Lab。ピエロ風の色の割合は 5 パーセント。L* の幅は 50。クリッピングは 0.5 パーセント。ノイズのシグマは 2 | ゲート | [追加]、実際のレンダーでキャリブレーション |
品質ゲート
- 測定可能:
paint_state(トップレベル、Rgb オン、Zadd オフ、テクスチャオフ);map_budget; マスク付き塗りつぶしの前にmask_coverageが 0 より大きいこと;正面 Flat レンダーでhead_regions_front()またはランドマークから投影した領域を使用してskin_zone_checksを実行すること;render_checks(フレーミング、値の幅、 クリッピング、ノイズ);上部マーカーを含むターンテーブルのフレームでupright_scoreを確認すること;ディスク上のファイルとそのサイズ。 - 視覚: 色は 5 つの視点の Flat、SkinShade4、MatCap White01 のシートで確認し、最終的な見え方は BPR または
Redshift のビューティーレンダーで確認します。各シートを 100 パーセントで表示して色の崩れやエッジを確認し、サムネイルでゾーンと値を確認します。ベージュやピエロ風の色、唇、目の焦点、後頭部、
あざ、影の切れ、粒状感を確認します。評価基準は
references/critique.mdです。
よくある間違い
| 間違い | このように見えます | 修正方法 |
|---|---|---|
| 最上位レベルより下でペイントする、または後から分割する | ペイントがぼやけてピクセル化する、アーティファクトが出る | 最上位レベルで最後にペイントし、先に分割します |
| 色付きの MatCap で判断する | ZBrush では色が適切でも、ほかでは違って見える | SkinShade4、MatCap White01、Flat Color |
| ペイント中に Mrgb をオンのままにする | レビュー用 MatCap が表示されなくなり、マテリアルが塗られる | ペイント中は Rgb のみを使用します。M または Mrgb は、保存済み ZTL でレンダリング用マテリアルを塗りつぶす場合のみ使用します [追加] |
| ペイントしたモデルがグレー一色になる | MatCap Gray で色が表示される | colorize_all(False) を実行してから元に戻します |
| テクスチャが表示されている | 新しいペイントが見えない | texture_off() |
| キャビティマスクをそのまま使う | 輪郭が強く出る | Blur を使って Mask Adjust を行い、強度を低くします |
| 数百万ポリゴンで Mask By AO を使う | 遅く、精度が低い | Ambient Occlusion プラグインを使います |
| ペイント済みの元データに UV Master を使う | ポリペイントが消える | Clone で作業し、Copy UVs、Paste UVs を実行します |
| 4M ポイントに 4K マップを使う | マップを無駄にし、テクセルがぼやける | recommend_map_size |
| プリセットマテリアルまたは SSS Weight 1 で Redshift を使う | ペイントが消える | Polypaint マテリアルを使い、Use Material Color を 0 に、Base を白に設定します |
| ローポリの硬いパーツで Smooth Surface を使う | シェーディングにあざのような跡が出る | オフにし、Dynamic Subdivision でクリースを付けます |
| 正投影でビューティーレンダーを作成する | 平坦で技術的な見た目になる | 透視投影をオンにします |
| スクリプトから Movie > Turntable を使う | 停止できず、既存のムービーについて尋ねられる | スクリプトでフレームを作成し、assemble_turntable を使います |
| フレームごとに角度を加算する | 90 度を超えて反転する | turntable_rotations の絶対値の 3 要素を使います |
引き継ぎ
- 受け取るもの: scenario-zbrush-sculpting、scenario-zbrush-character-creature、または
scenario-zbrush-stylizedから、トップレベルにある最終版のバージョン管理されたZTLと、その
stats()および最後の レビューシート、さらに名前付きSubToolとしての目とパーツ。scenario-zbrush-hard-surfaceからは、クリースのあるパーツを SubToolとして受け取ります。scenario-zbrush-pose-printからは、ポーズを付けたZTLを受け取ります(可能であれば、ポーズを付ける前に対称性を有効にしてペイントします[追加])。 - scenario-zbrush-retopology-exportへの引き渡し: ペイント済みZTL、
recommend_map_sizeによるマップ側の指定、およびエクスポートしたカラーマップ(texture_from_polypaint)、またはベイク前に複製したモデルにUVを作成する依頼。Multi Map ExporterのTexture from Polypaintは、そのスキルのマップ一括処理で実行します。 - ユーザーへの引き渡し: ビューティーレンダー、グレーシートとアルベドシート、パスとコンポジット、ターンテーブルのMP4またはGIF、ポートフォリオシート、ZTLのパス、および検証済みの内容。
- 連携チーム: 頂点カラーまたはマップを使ったルックデブではscenario-blender-texturing-shadingとscenario-maya-expert、一括レンダーではscenario-zbrush-automation。
ZBrush 2026に関する注意事項
- Redshiftには別途アプリケーションが必要です。2025.1以降はOIDNを使ったAOVに対応し、2025.2以降はCinema 4Dに一致するマテリアルに対応しています。BPRに変更はありません。
- Substance Bridge(2026.2)はポリペイントをPainterにフィルレイヤーとして送信します。Force UV Auto-Unwrapを実行すると、すべてのSubToolのUVが削除されます。
- ムービー:MP4(macOSではMOV)、4095ピクセルを超える場合はリサイズされます。Mask by Smoothnessは2024で修正済み、ZRemesher Keep Polypaintは2023以降、Ambient Occlusionプラグインは2021.6以降に利用できます。
zb_paint.PATHSは各パスにタグを付けます。多くは[strings](このビルドにラベルが存在)または[verify]です。まずlive_p01_paint_paths.pyを実行してください。存在しないパスに対するset()は何も通知しません。- ZBrushではまだ
zb_paintを一度も実行していません。オフラインテスト36件はすべて成功しています。ライブテストはtests/code/zbrush-paint-render/live_p01からp06までです。
参考資料
references/procedures.md:すべてのステージの完全なブリッジコード。ペイントまたはレンダーのコードを書く前に読み込んでください。references/critique.md:評価基準、Z1とZ2の仕上げテストケース、2つの評価プロンプト。各ゲートで読み込んでください。references/expert-notes.md:専門家ごとの詳細とタイムスタンプ、意見の相違点、タブレットなしでも応用できる内容。ここで扱われていない判断が必要な場合に読み込んでください。references/gui-paths.md:人間またはコンピューター操作エージェント向けのパレット、ホットキー、設定。Spotlight、ダイアログ、GUIでしか実行できない手順で読み込んでください。references/sources.md:認証情報、URL、タイムスタンプを含むすべてのソース。