mcpField
S
scenario-zbrush-paint-render

scenario-zbrush-paint-render

github.com/scenario-labsクリエイティブ・メディア1.2k184 回インストール1 日前に更新
リポジトリ

scenario-zbrush-paint-render について

キャラクターのペイントとプレゼンテーションを扱うZBrushスキルです。ポリペイント、テクスチャ、レンダーを使うアーティストやエージェント向けに、解剖学的な色分け、マスク処理、段階的な確認、マップ容量の検査をまとめています。ポートフォリオ用の画像やターンテーブルにも対応します。

主な機能

  1. 01解剖学に基づく色分けの計画
  2. 02マスクと強度を指定した塗りつぶし
  3. 03ポイント数とテクスチャ容量の確認
  4. 04ニュートラル・フラット・マテリアル表示での確認
  5. 05レンダー、パス、ターンテーブルの作成

活用シーン

  1. 01キャラクターの肌色と解剖学的な色分け
  2. 02頂点数の制約内でのカラーマップ書き出し
  3. 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.md
expert-notes.md
gui-paths.md
procedures.md
sources.md
scripts/
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 を保存してください。元に戻す機能はありません。

  1. 事前確認。 paint_state()(レベル、ポイント数、UV、テクスチャ表示)、 recommend_map_size(points)、texture_off() を実行し、ZTL を保存します。ゲート:最上位レベルであること、 map_budget(points, side) に合格すること、v001 がディスク上にあること。必要ならここで分割し、ペイント後には分割しないでください。
  2. セットアップとベース。 set_paint_mode("rgb")(Zadd と Zsub はオフ)、fill(colour, 100) を実行します。くすんだ肌色のベース(FlippedNormals、doc)またはゾーン方式では純粋な黄色(Pablo)にします。ゲート:フラット表示の正面で塗りつぶし色が見え、Colorize がオンになっていること。
  3. ゾーンマップ。 パーツ(目、スカーフ、歯、服):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)、すべてのゾーンが該当する解剖学的領域にあること。
  4. カバーとばらつき。 ゾーンの上から肌色を20〜40パーセントで重ねます(doc は RGB で約30、Pablo は低不透明度のカバー)。ゾーン画像のノイズまたは Color Spray ストロークでばらつきを加えます。ゲート: stage="covered":道化師のように見えないこと(彩度が0.75を超える肌ピクセルは最大5パーセント[追加])、斑点があること。
  5. mask_pass によるマスクパス。キャビティを20〜40パーセントで暗く、赤くします。PeaksAndValleys(PVRange 14)または Smoothness に淡い暖色の塗りつぶしを使います。紫がかった赤のアンダートーンで ao_plugin マスクを適用します(後で ping)。Pablo の Adjust Colors はダイアログです[live_p06 で確認]。同じマスクを使い、低い塗りつぶし値で置き換えます。マスクデータは読み取れないため、mask_coverage(masked, cleared) でマスクを確認します。 ゲート:各パスで領域の統計値が少しずつ変化し、すべてを合わせると、後頭部も含めて肌らしく見えること。
  6. 焦点と仕上げ。 目:虹彩画像(暗い輪、下部は明るく、上部は暗く、瞳孔に近づくほど明るい)を目の SubTool に投影し、わずかに発散させます。唇も仕上げます。レンダラーが AO を追加しない場合を除き、光が決して届かない部分だけを選択的に暗くします。リアリティを出すために5〜10パーセントのウォッシュを加えます。ゲート:目のコントラストを含め、最後に skin_zone_checks を実行してから、フラット、SkinShade4、MatCap White01 のシートを references/critique.md に照らして評価します(paint_review)。
  7. カラーを出力。 texture_from_polypaint(path, side, flip_v=True) には UV が必要です(クローンに UV Master を適用します。Paste UVs ではポリペイントが保持されます)。または OBJ の頂点カラーを使うか、Substance Bridge Send PolyPaint を使用します。ゲート:マップ予算に合格すること、非対称のマークが想定位置にあること、ファイルがディスク上にあること。
  8. レンダリング。 保存してから set_document_size を実行します(テストでは小さなサイズにします。Resize はキャンバスをクリアしますが、関数が描き直します)。render_setup(パースペクティブ、シャドウ、AO)を実行し、bpr_render または paint_views(..., "bpr") でビューを揃えます。ゲート:render_checks に合格し、レンダリングを100パーセント表示で確認したこと。
  9. パスとターンテーブル。 export_bpr_pass(ダイアログが開く場合があります)を実行します。道化師パスは subtool_solo_views と id_pass を併用します(ペイントとポリグループはそのままにします)。composite(マスクを通してシャドウと AO を Multiply で合成)を実行し、turntable_frames は短いチャンクに分けて実行してから assemble_turntable を使います。ゲート:すべてのフレームが直立し、フレーミングが一定であること。コンポジットは、ビューティーパスと切り替えて比較したときに上回ること。
  10. ポートフォリオとレポート。 グレーのフォームビュー(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 14Mask PeaksAndValleysPablo 01:26:37
Map Border は高(フレーム 4 と 16)、FlipV はオンMulti Map ExporterFlippedNormals 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、ノイズ除去時は 25RedshiftPavlovich 040h 00:44:03
HDRI 使用時のメインライトは 0.1(0 にはしない)。EXR のガンマは 2.2。macOS の Redshift のガンマは 1.8Light、BackgroundPavlovich 00:23:12;doc
Crease Level は SmoothSubdiv より 1 低くする(3 と 4)ソフトエッジのハイライトPavlovich 00:21:26
Movie Turntable はデフォルトで 180 フレームMovie > ModifiersPavlovich 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、タイムスタンプを含むすべてのソース。

コメント