mcpField
S
scenario-zbrush-stylized

scenario-zbrush-stylized

github.com/scenario-labs创意与媒体1.2k185 次安装1 天前更新
代码仓库

关于 scenario-zbrush-stylized

面向 ZBrush 风格化角色与收藏品制作的技能,适用于需要把解剖、轮廓、发型和玩具生产约束转化为可检查步骤的创作者与 Agent。它以量化比例旋钮、曲线路径和阶段质量门来组织建模流程。

主要功能

  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-stylized

安装后在 Claude Code 中输入/scenario-zbrush-stylized确认已加载。

包含的文件

除 SKILL.md 外,安装时一起下载的参考资料和脚本。

references/
critique.md
expert-notes.md
gui-paths.md
procedures.md
sources.md
scripts/
zb_stylized.py

详细介绍

ZBrush 风格化角色与收藏品

专家级风格化作品会有意简化解剖结构:以真实的骨骼标志点和比例为基准,设定少数明确的夸张参数,并制定可由 Agent 根据剪影衡量的造型语言规则。曲线是 Agent 最好的工具:发丝、发束、带子和围巾尾端都由计算得出的 3D 路径生成,因此“微调”会重新生成路径,而不是直接雕刻。如果这里提到的同级技能不在你可用的技能中,请让用户安装它 (npx skills add scenario-labs/skills --skill <name>);如果要在无人值守的情况下继续,请依据工具架构进行操作,并指出这一缺失。

必备背景: scenario-zbrush-expert(桥接、笔触引擎、审核循环、2026 年陷阱)。

立场(专家之道)

  • Shane Olson: 风格化不是“糟糕解剖结构的借口”。以接触表面的骨骼标志点(髋点、膝盖、两侧踝骨、肘部、锁骨顶端、颈椎底部、骶骨三角、头骨)为依据搭建风格化骨架,并省略永远不会显露的骨骼。每一处偏离真实比例的设计,都要用相对于真实值衡量的明确参数来描述(膝盖位于腿长一半处,双手垂至大腿中部);谨慎调整参数,因为角色一动就会暴露问题。
  • Guillaume Tiberghien(Keos Masons): “简单最难。”先添加解剖细节,再进行简化。风格化意味着清晰的方向性平面,像木头或岩石一样带有凿刻感;转折处要刻出折线,确保细分后依然笔直;形体之间要相互嵌合,形成细小的接触阴影。建模扎实之前不要上色。
  • Rakan Khamash(Blizzard): 造型语言是一套规则,不是个人喜好。使用 S 形和 C 形曲线,不要出现平行线,不要等分(改为 70/30),顶部外扩、底部收尖,细节旁要留出休止区,并且“要么表达清楚,要么干脆不表达”:角色必须在房间另一端也能一眼辨认。低模的 90% 到 95% 已在白模阶段确定。
  • Cedric Seaut(Keos Masons): 从剪影开始;将多个设计并排展示,才能塑造出鲜明不同的造型。
  • Pablo Munoz Gomez: 雕刻前先规划发束,再从一个角度为每束头发刻一条长笔触。将 DynaMesh 的分辨率设得略高于拾取器的数值;Polish 2 和 ClayPolish 就能让你“达到 80%”。
  • Dan Eder: 发束就是绑定的分段。先在临时主体上为每束头发铺设一条管状发丝,每条发丝设置一个多边形组,从前向后制作。不要平滑发丝。先不使用对称功能制作分缝发型,再进行镜像。切换 MatCaps 来查找缝隙。
  • Paul Bennett(Hasbro): 玩具是一种产品。先雕刻没有关节的中性站姿设计;关节用球体和圆盘制作,并用服装遮挡;壁厚不得低于 1 mm;融合飘散的发丝;不要制作相互接触手指之类的闭合环;注明文件比例(PVC 收缩率为 104%)。

先确定

输入变更简介未说明时的默认值
用途游戏(循环、预算、绑定头发)、收藏品或玩具(墙体、零件、比例)、概念设计或静帧作品集静帧
参考概念图、三视图、风格(《Overwatch》的厚重感、《Disney》的圆润感)无:以真实为基准,只加入明确提及的夸张效果
头发发丝(绑定或按块重拓扑)或单个雕刻网格雕刻网格(Pablo)
预算每个主角及每个头发版本的三角形数静帧不设预算;Blizzard 的主角是 16k [unit ?]
比例打印高度或玩具系列(6 in、3.75 in)无论如何都使用一个 200 mm 的标尺 SubTool(Shane)
对称性设计是否对称对称,然后刻意进行一次不对称处理

工作流

  1. 设计表。 将每个旋钮写成一个数值,并注明其实际含义(大鼻子:nose_third,眉毛到鼻底的距离占脸长的三分之一,实际值为 1.0;浓眉:眉骨深度;长小腿:femur_tibia)。从概念图中获取每个数值;如果概念图没有提供,就把指定特征夸张到在 64 到 128 px 缩略图中仍能看清,并记录下来。写出三层视觉信息(Rakan):剪影构想、承载意图的次级形状、三级细节。规划头发分束和分缝。GATE:每个旋钮都有目标值和理由。
  2. 先做剪影。 用两个或三个原始形体变体(scenario-zbrush-sculpting)进行初步构型,并用 zb_review.review 渲染。GATE:变体之间的 lineup() IoU 低于 0.85 [added];选定的变体在 64 到 128 px 下仍清晰可辨(squint())。
  3. 按标志点搭建风格化骨架。 所有正交视图都关闭透视(Shane:透视会让遮罩、裁切和镜像产生偏差)。规则:
    • 颅骨加下颌,在眼线处分开;下颌角位于耳朵下方、头部深度的中点;
    • 头部两侧:从顶视图看,头部两侧并非平行,因此要裁切颅骨两侧,让头部朝脸部逐渐变窄(Shane 02:00:26),然后让两侧呈弧形,而非平面(02:11:58)。Agent:在正交顶视图中用两点 ClipCurve 笔划,或对颅骨 SubTool 使用 Deformation Taper(两者均需 [verify]),再用 Move 或 Clay 笔划塑出弧度;
    • 眼睛:先放置眼球球体,再塑造包裹眼球的眼睑;每只眼睛向外转几度(scenario-zbrush-sculpting P17);外眼角明显位于内眼角之后(从顶视图检查);
    • 骨盆前倾,胸廓后仰,股骨向内倾斜,胫骨保持笔直。GATE:subtool_boxes() 上的 head_checks 和 body_checks 均通过,或者将每项失败记录为有意打破规则;对仅含颅骨的顶视图渲染运行 head_taper();渲染正面和侧面的正交视图并与概念图对照;再渲染一张三分之四透视观察图(zb_sculpt.persp_snapshot_code)检查眼窝。
  4. 合并并塑造平面。
    • 将初步构型以 128 到 256 的分辨率执行 DynaMesh(remesh_code,scenario-zbrush-sculpting);用宽幅 hPolish 或 TrimDynamic 笔划切出平面(较宽容,因此脚本化笔划也能奏效);让形体彼此嵌合。ClayPolish 可作为全局平面滤镜 [added for forms; Pablo uses it on hair]。
    • 细分时保留平面(Guillaume 00:46:42 to 00:47:50):先对合并后的部件使用 ZRemesher,生成适合雕刻的拓扑,然后对平面边界加 crease,使其细分后仍能“保持笔直”:crease_planes(Groups By Normals、Crease PG、CreaseLvl),再按层级规范执行 Divide(scenario-zbrush-sculpting P15)。Crease 是边标记:之后任何 DynaMesh 或 ZRemesher 操作都需要重新添加 [added]。GATE:正面、侧面和三分之四剪影的 shape_language():没有平行边对,直线占比不超过 0.25,每 1000 px 的噪点翻转不超过 4 次(默认值 [added]);45% 到 55% 区间内没有 band_breaks() 断点;MatCap Metal01 下没有凹陷(Plouffe);细分后,掠射视角下加 crease 的边界仍保持清晰。
  5. 次级形状和道具(围巾、带子、腰带)。
    • 使用 scenario-zbrush-sculpting 中的圆环和带子,结和搭扣偏离中心(70/30)。
    • 尾部和带子做成曲线带:使用 sides=0 的 lay_strands(Curve Flat,Pavlovich),或使用 sides=4 做带子;用带重力的 march_strand 生成路径,并弯成 S 形。
    • 只在压力或关节造成褶皱的位置塑造褶皱(Rakan)。需要重量感的围巾先用 Dynamics 布料模拟垂坠(scenario-zbrush-character-creature),然后重新塑造褶皱。GATE:正视图中每条尾部都能归类为 S 形或 C 形(classify_polyline);没有平行的尾部(strand_report)。
  6. 头发。 可绑定或用于游戏的头发采用发束;静帧、打印件和单一网格采用雕刻网格。两种方式都要先在头发主体的 OBJ 导出文件上规划路径(P3 to P5)。
    • 规划:沿分缝和发际线布置 roots_along,从分缝向外布置 directions_away,用 plan_strands 交替设计 C 形和 S 形弯曲,并用 vary() 改变长度;在正面、右侧和顶面渲染图上用 overlay_paths 绘制路径并检查(Pablo 用 polypaints 区分发束;Dan 在概念图上绘制分区)。
    • 雕刻式(Pablo,P4):使用 scalp_shell;每束头发用粗 CurveTubes,然后用 DynaMesh 将数百束融合;每个发缕从其 best_view 方向各做一笔 stroke_from_view ClayBuildup 笔划(sculptris=True);沿每条 crevice_path 使用 Dam_Standard Zsub;执行 rebalance;再执行 finish_hair。
    • 发束式(Dan,P5):在头部内放置一个小型虚拟 SubTool(Pablo);每条发束用一个 CurveTube,从前向后延伸,前部抬高更多;执行 Auto Groups;运行 strand_mesh_report;之后镜像分缝发型。GATE:规划图中没有平行的相邻发束,设计的发束类型在右视图和顶视图中清晰可辨;眯眼观察时头发仍清晰;五张检查视图(顶视图能看到分缝)在两种 MatCap 下都没有间隙或穿插;其余区域保持简洁。
  7. 不对称、明度、颜色交接。
    • 有意添加不对称细节:结、刘海、眉毛。
    • 检查 Guillaume 的灰度效果(value_check):不能有纯黑或纯白,最强对比应在脸部;上色前只加深睫毛和瞳孔。
    • 为每种材质规划不同颜色的材质 ID;在顶层进行 polypaint,并在纯色 SkinShade4 下评估,因为 MatCap 的色相和明度并不准确(Pablo VRisbJQAaZw 00:23:40, 00:24:54)。
  8. 产品限制(玩具或收藏品)。
    • toy_scale(高度 / 12,再为 6 in 增加 4%;3.75 in 则 / 18);
    • 在打印尺寸下检查发束和薄形体(1 mm 墙厚、0.5 mm 修边);
    • 头发作为独立部件,并与头部对接定位;飞散的头发要融合,发束要成簇以便重复上色;不能有闭合环,裙摆上要开缝。不要把雕刻细节做到超出打印尺寸所能呈现的程度(Carratala,90 mm)。

数值

数值相对于来源
膝盖位于腿长的一半处;双手位于大腿中部;下颌角位于头部深度的 0.5 处旋钮的真实基准Shane
眼线位于头高的 0.5 处;面部三庭长度相等,误差约在头高的 5% 以内真实头部Anatomy For Sculptors(角色摘要)
外眼角至少比内眼角靠后头部深度的 0.10起始阈值风格化摘要 [补充]
从顶部看头部两侧:收窄(窄处 / 宽处)比例至多为 0.95;侧面下垂至少为深度的 0.01head_taper 默认值Shane 规则,阈值 [补充]
70/30,绝不 50/50;比例为 0.45 到 0.55 时发出标记沿跨度的分界位置Rakan;范围 [补充]
粗模 = 低模的 90% 到 95%;主角预算为 16k,包含两种发型游戏角色Rakan
头发 DynaMesh:128 壳;440 阻挡;1416 精修;1032 到 1784 细化;在 2.4M 到 2.6M 个点时重新执行 DynaMeshPablo 的头部,他的机器Pablo 画面
Deformation Polish 2;ClayPolish Max 25、Min 0、Sharp 0、Soft 0、RSharp 和 RSoft 约为 5收尾Pablo 画面
Curve Tube Brush Modifier 默认值 20、方形值 4、平坦值 0;Z Intensity 34 会压平管状轮廓IMM 文档,Pavlovich
发丝横截面约为 3 到 4 个多边形游戏发丝Dan 画面
1 mm 壁厚(0.85 时标记)、0.5 mm 边缘、0.12 mm 配合偏移、肘部 115 度玩具生产Bennett

质量检查门槛

  • 代码检查:head_checks 和 body_checks 通过或有意保留;在顶视图中检查 head_taper; 在眉线、围巾带和分缝处检查 split_check;三个剪影中的 shape_language 标记为空;没有 50/50 的 band_breaks;检查 lineup IoU;strand_report 中没有平行对,并且每个视图都有设计好的类型;strand_mesh_report 中每根发丝只有一个壳,且面数在预算内; 每次 DynaMesh 后检查点数;玩具使用 mm 单位的 feature_check。
  • **视觉检查:**使用 MatCap Gray 加 Metal01(凹陷处)或其他 MatCap(头发间隙、Dan)检查 zb_review.review;在 64 和 128 px 下眯眼检查;使用 annotate_shape;铺设头发前显示计划叠加图;检查透视效果是否吸引人;顶视图检查分缝和头部两侧;也要完成头部后侧。

常见错误

错误看起来像修正
所有部分都夸张每个特征都很突出,看不出重点只指定一两个参数;其余保持基准值
眼角位于同一平面从上方看,脸像一张平面面具将外眼角向后收(canthus_recess)
头部两侧平行,或侧面是平面从上方看,头骨呈方块状或气球状削切两侧,保留弧线(head_taper)
Divide 后平面感消失风格化平面变得模糊、圆润在 ZRemesher 之后、Divide 之前使用 crease_planes
四肢或带子的边缘平行腿像管子,裤子显得乏味顶部展开,底部收窄
按 50/50 分割围巾或腰带恰好在中间分段调整为 70/30(split_check)
到处都是细节轮廓杂乱,没有留白保留简洁区域(Pablo、Rakan)
头发是一整团或由成千上万根发丝组成眯眼看时看不出发束先规划大块发束,再为每块加一根发丝或一绺发束
用笔刷推动并平滑发丝发丝变软、弯折重新生成路径并重新铺设;Dan 从不平滑发丝
没有清除 ClayPolish 遮罩下一个笔刷“毫无反应”finish_hair 会清除遮罩
玩具带有乱发或手指相互接触铸件断裂,无法脱模合并、分离,并在 1 mm 处检查

交接

  • **接收:**来自 scenario-zbrush-sculpting 的基本体和 DynaMesh 形体(带版本号的 ZTL、 stats()、评审表);来自 scenario-zbrush-character-creature 的布料垂坠和真实解剖结构。
  • **交付:**交给 scenario-zbrush-paint-render 紧凑的雕刻、明度目标和材质 ID 计划;交给 scenario-zbrush-pose-print 不带关节的中性设计、部件和关节计划 (球体和圆盘)、作为带键控部件的头发、比例因子和文件百分比;交给 scenario-zbrush-retopology-export 按每根发丝分组的束状头发(绑定链)、块状多边形组、 每根发丝的面数、与边线对齐的设计线(Rakan)。

ZBrush 2026 说明

  • Curve Flat 和 Curve Flat Snap 已随版本提供(2021.6.3),Bend 拆分为 Bend Start 和 End,IMM 笔刷 可接受任意笔划(2024),曲线笔刷几何错误已在 2026.2.1 修复。
  • Pablo 的头发笔刷和 DE_HairTubes 是第三方工具:可用 ClayBuildup、Standard、 Dam_Standard 和 CurveTube 代替;自定义笔刷从 Asset Directory LightBox/Brushes 加载。
  • 曲线 API 接受工具空间中的点,但无法读回曲线;curves_to_ui 单独使用可能无法 构建网格(Maxon 的示例):live_01 会测量应用操作和轴映射。
  • 透视设置为 Draw:Perspective(已安装的 commands.xml 中提供,没有 Transform:Persp);PATHS 会先尝试已安装的 ID。Gizmo 是默认设置,局部对称跟随 Gizmo。在 macOS 上按 Cmd+W 会退出 ZBrush。

参考资料

评论

支持 Markdown