肖像大师:皮肤细节
Portrait Master's Skin Details Module
- text_out
Ask the community what gives an AI portrait away and the number one answer has been the same for years: too-smooth skin. The "influencer default" look - poreless, plastic, lit like a skincare commercial. This node is the antidote. PortraitMasterSkinDetailsCN (肖像大师:皮肤细节) is the Portrait Master v3 module that puts texture back where the checkpoint smoothed it away: pores, freckles, moles, wrinkles, blemishes - plus the eye-detail sliders that make irises look like eyes instead of stickers.
It's part of comfyui-portrait-master-cn, the Chinese localization of Stefano Flore's Portrait Master. Pure prompt assembly, no models, no dependencies.
How it works
Same mechanism as its sibling modules: 18 sliders, each 0–2, and when one is above 0 the node injects the matching phrase into the prompt - natural skin, skin pores, freckles, acne, skin with acne, tanned skin, and so on - wrapped in ComfyUI's (phrase:weight) syntax. The 启用 (enable) toggle turns the whole module on and off. Output is a single text_out STRING that chains with the other modules via text_in.
The inputs that matter
You won't touch all 18. The ones that actually fix the "skincare ad" look:
- 皮肤细节 (skin details) - the headline slider; injects
detailed skin. Start here. - 皮肤毛孔 (skin pores) and 皱纹 (wrinkles) - add texture that reads as shot on a real camera.
- 雀斑 (freckles), 痣 (moles), 皮肤瑕疵 (imperfections), 皮肤痤疮_痘痘 (acne) - character beats that also kill the retouched feel.
- 晒黑_小麦色皮肤 (tanned skin) - for warmer skin tones without reaching for a LoRA.
- The eye quartet: 眼睛细节 (eyes details), 虹膜细节 (iris details), 环形虹膜 (circular iris), 圆形瞳孔 (circular pupil) - the iris ones specifically fight the too-symmetric, too-clean AI eye.
Where people get burned
The README's own warning is the one that matters: cranking skin and eye detail will override your shot framing. Set 皮肤细节 and 眼睛细节 too high and the model starts drifting toward extreme close-ups, because those tokens pull the camera in. The fix the author suggests: lower the sliders, or counter it in the negative prompt with (closeup, close up, close-up:1.5).
Also worth remembering - this module emits positive tokens only. If you want the porcelain-skin anti-look gone entirely, a lightweight negative like "shiny skin, glossy skin" still earns its place, because these tokens describe what you want, not what you don't.
Installing it
cd ComfyUI/custom_nodes
git clone https://github.com/DropFan/comfyui-portrait-master-cn
Restart ComfyUI, or search comfyui-portrait-master-cn in ComfyUI Manager. No models, no requirements.txt, no GPU cost - it's string assembly in Python.
The honest take
The node is a quality-of-life tool, not a miracle: at base resolution (512–768) the pore/freckle tokens barely show; they shine at higher resolutions or in a second pass where the detail can actually render. Use it with a realistic checkpoint and a real upscale step and you'll notice the difference. Use it on a stylized anime model and it'll mostly be ignored - the tokens assume photographic skin vocabulary. For SDXL-era realism work, this is the single most useful module in the pack.
Inputs (20)
| Name | Type | Default | Description |
|---|---|---|---|
| 自然皮肤 | FLOAT | 0.000–2 | — |
| 素颜 | FLOAT | 0.000–2 | — |
| 洗脸程度 | FLOAT | 0.000–2 | — |
| 干燥脸 | FLOAT | 0.000–2 | — |
| 皮肤细节 | FLOAT | 0.000–2 | — |
| 皮肤毛孔 | FLOAT | 0.000–2 | — |
| 酒窝 | FLOAT | 0.000–2 | — |
| 皱纹 | FLOAT | 0.000–2 | — |
| 雀斑 | FLOAT | 0.000–2 | — |
| 痣 | FLOAT | 0.000–2 | — |
| 皮肤瑕疵 | FLOAT | 0.000–2 | — |
| 皮肤痤疮_痘痘 | FLOAT | 0.000–2 | — |
| 晒黑_小麦色皮肤 | FLOAT | 0.000–2 | — |
| 眼睛细节 | FLOAT | 0.000–2 | — |
| 虹膜细节 | FLOAT | 0.000–2 | — |
| 环形虹膜 | FLOAT | 0.000–2 | — |
| 圆形瞳孔 | FLOAT | 0.000–2 | — |
| 启用 | BOOLEAN | true | — |
| text_inopt | STRING | — | |
| seedopt | INT | — |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| text_out | STRING | — |