如果你画过角色设定图,应该体会过这种折磨:正面画好了,侧面崩了;侧脸终于满意,回头一看衣服花纹又全部错乱。过去解决这个问题,要么靠 ControlNet 反复锁姿势,要么靠 LoRA 练专属角色,本地显存不够时一套工作流跑下来要抽卡几十次。今天这套基于 Krea2 的 ComfyUI 进阶工作流,核心目标只有一个:把“局部重绘、无损扩图、角色四视图设定图”这三件高频需求,变成可以在本地一次性跑通的固定流程。
先说判断:Krea2 真正带来的变化,不是生成质量比上一代高了多少,而是把“生成后的定向修改”变得可控了。它更适合用在需要反复微调、补全画布、统一角色设定的生产环节。如果你一直在用 ComfyUI 做单张文生图,却总卡在“改一处就毁全图”的阶段,这篇文章就是给你写的。
本文是“纯新手向 ComfyUI 系列”的进阶篇,默认你已经会安装 ComfyUI、能跑通最基本的文生图工作流。文章会从概念讲到节点配置,从局部重绘到无损扩图,最后串联成一条完整的角色四视图设定图工作流。整个过程中涉及的参数、环境配置和常见报错,我会放在一起讲完,方便你直接对照操作。
1. Krea2 进阶工作流的定位与适用场景
很多新手第一次接触 Krea2,会误以为它就是某个具体的“大模型”。实际上,在 ComfyUI 里使用时,它更像一套针对图像编辑与重绘任务设计的模型能力组合。Krea2 的本地部署版本,通常以 checkpoint 或编辑专用模型的形式出现在工作流中,配合 VAE Encode for Inpainting、扩展画布类节点,可以完成比传统图生图精细得多的局部控制。
从工作流角度说,Krea2 适合替代项目中那些“重画一整张图”的笨重做法。传统图生图如果只想修改眼睛或衣领,需要把整张图传给模型,结果连头发都一起变了。Krea2 这类模型的特点,是更关注遮罩范围内的语义理解,生成时会把外部区域当作参考条件,只对遮罩区域做重建。这个机制决定了它天然适合下面几类任务:
| 场景 | 传统做法的问题 | Krea2 工作流的改进 |
|---|---|---|
| 角色表情微调 | 改眉毛会连带改发型和背景 | 遮罩限定范围,非遮罩区域尽量保持 |
| 服装细节修改 | 重绘导致布料纹理全乱 | 局部编辑模型能参考上下文重新生成 |
| 竖构图转横版 | 拉伸变形,或生成剩余区域后接缝明显 | 无损扩图按语义扩展,渐进式补全 |
| 角色多视图 | 每张视图独立生成导致角色不一致 | 固定参考条件,视图间只改角度与身材 |
纯新手最容易犯的错,是拿到 Krea2 之后仍然按照“文生图 + 高重绘幅度”的老思路去用。比如做局部重绘时把 Denoise 调到 0.8 以上,遮罩范围以外的画面也跟着被重画;做无损扩图时一次性向外扩展太多像素,结果地面和墙壁的透视关系对不上。这些问题不是模型不行,而是没有理解工作流的定位。
这篇文章重点涉及三类读者:第一类是游戏原画或插画新手,想快速产出角色多视图设定稿;第二类是做漫画或短视频分镜的内容创作者,需要在固定构图下反复局部修改;第三类是已经在用 ComfyUI、但希望摆脱“抽卡式改图”的进阶玩家。这三类人读完这篇文章后,至少应该能搭出三个可复用的工作流模板。
2. 核心概念:局部重绘、无损扩图与角色四视图设定图
2.1 局部重绘(Inpainting)究竟在做什么
局部重绘的原理并不难理解。你可以把生成模型想象成一个修复师,它只需要处理你指定的那块画布区域。在 ComfyUI 里,这个区域就是通过遮罩 Mask 来表示的。实现过程通常是:读取原图 → 用涂抹工具画出一块白色遮罩 → 把图像和遮罩一起编码到潜空间 → 采样器只针对遮罩区域生成新内容。
这里最关键的细节是“非遮罩区域如何参与计算”。在早期方案中,非遮罩区域会被简单地保留在潜空间里,但采样器对它们仍然有隐式作用力,这就是为什么有时候只是改个刘海,整张脸都变了。Krea2 这类编辑模型在训练时就加入了局部编辑数据,对遮罩边界的处理更精细。配合 ComfyUI 的 VAE Encode(for Inpainting)节点,非遮罩区域会通过 grow_mask_by 参数做边缘膨胀,保证重绘边缘与原有画面自然融合。
新手经常忽略的是denoise参数的语义。在局部重绘中,denoise 控制在潜空间噪声图上叠加多少新噪声。数值太低,遮罩区域变化微弱;数值太高,遮罩边缘容易出现明显边界。比较稳妥的做法,是把 denoise 控制在 0.4 到 0.7 之间,具体取决于修改幅度。
2.2 无损扩图(Outpainting)与简单拉伸的区别
无损扩图听起来高级,本质上是在原图外部补充新的画面内容。传统做法是把画布拉伸变大,然后把空白区域喂给模型生成,缺点是接缝明显、透视断裂。无损扩图的思路是分多次向外扩展,每次只增加一块区域,同时保留固定原有的大面积像素不被重新绘制。
在 ComfyUI 中,无损扩图通常由两类节点配合完成:一类是图像边缘扩展节点,用于在指定方向和像素数上扩大画布;另一类是重绘采样节点,负责只针对新增区域进行填充。因为每次只处理新增区域,已有画面不会被二次污染,所以称为“无损”。更精细的实现还会加入 overlap(重叠区域)参数,让每次扩展与上一次的内容有一段交叉地带,采样时根据交叉区域对齐构图和色彩。
关于无损扩图,真正值得花时间研究的是扩图方向与单次扩展像素的平衡。一次性扩展 512 像素仍然容易出现结构断裂,而每次扩展 64 到 128 像素再跑一次采样,效果会更平滑。代价是需要多次采样,时间成本更高。所以无损扩图的本质,是用多次迭代换取画面一致性。
2.3 角色四视图设定图的工作逻辑
角色四视图通常指正面、侧面、背面,以及一个细节放大图或动作参考图。传统绘制中,画师需要从同一个角色模型出发,保证五官、发型、服饰在转换角度时逻辑一致。对 AI 来说,困难点在于生成多张视图时,模型默认会把每张当成独立图像来理解,容易出现“正面和背面根本不是同一个人”的情况。
在工作流中解决这个问题,思路是把参考图信息作为条件输入到生成环节,并锁定角色描述文本。比如先产生一张满意的正面图,然后以它作为参考,再生成侧面、背面和动作图。实际操作中,还经常叠加 ControlNet 的 OpenPose 或 Lineart 来控制姿势。Krea2 的作用,则更多体现在局部修正阶段:这张背面图的发型走向不对,可以在侧面图基础上用局部重绘精准修掉。
2.4 Krea2 在这三者中的角色
如果从节点层级看,Krea2 并不是一个单独运行的“插件”,而是出现在模型加载、编辑能力、条件控制等不同环节中。你可以把它理解为模型的编辑能力基底。在 ComfyUI 中,关键看模型文件放置在哪一个目录,以及对应的加载节点如何被调用。
从材料中能看到“krea2 edit v1.2”这样的版本信息,说明 Krea2 在编辑能力上有持续迭代。对普通用户来说,更值得关注的是它擅长哪些编辑操作:小范围修图、局部结构重建、以及在大画布上保持对象一致性。这意味着你可以把它放进局部重绘工作流里做主力编辑模型,也可以在四视图流程中用来做服装和细节的统一修正。
3. 环境准备:ComfyUI、Krea2 模型与依赖包
3.1 选择整合包还是手动部署
ComfyUI 的部署方式主要分两种:整合包和手动部署。对纯新手来说,推荐先使用整合包。整合包的优势是把 Python 环境、依赖库、常用节点、模型目录结构都预置好了,下载解压后启动就能用。很多教程里提到的“秋叶一键整合包”就是这类工具,它最大的价值不是免安装,而是把后续节点缺失、Python 环境冲突这几个新手最容易栽的坑提前填平了。
不过整合包也有缺点:部分自定义节点版本较旧,或者缺少某个特定模型的依赖。Krea2 如果在运行工作流时提示缺少节点或包,需要回到 Python 环境中手动补装依赖。从技术路线上说,手动部署更灵活,对依赖掌控更精确,但纯新手容易在环境变量和 CUDA 版本上卡住。我的建议是:先用整合包跑通整条工作流,再根据报错去补装缺失节点,不要在第一天就追求手动部署。
3.2 Krea2 模型应该放在哪里
ComfyUI 的模型目录是有明确约定的。Krea2 相关模型文件应该放在ComfyUI/models/下的对应子目录中,具体取决于它的格式:
ComfyUI/ ├── models/ │ ├── checkpoints/ # 完整模型,包含文本编码器和 VAE │ ├── loras/ # LoRA 微调模型 │ ├── controlnet/ # ControlNet 条件控制模型 │ ├── vae/ # 独立的 VAE 模型 │ └── custom_nodes/ # 自定义节点插件如果你下载到的是一个 checkpoint 文件,就放到checkpoints目录;如果是编辑专用的 VAE 或模块文件,放到对应目录。放错目录会导致加载节点时找不到模型,这是新手最常遇到的问题。
3.3 依赖包与缺失节点处理
运行工作流时如果看到类似“请安装缺失的包以使用此工作流。要安装缺失的节点,请先在你的 Python 环境中运行”的提示,说明工作流引用了尚未安装的自定义节点。解决方法是在 ComfyUI 的 Python 环境中安装对应依赖,或者在custom_nodes目录下克隆需要的插件。
手动安装依赖时,需要注意只激活 ComfyUI 自己的 Python 环境,不能直接使用系统 Python。尤其是在多个 Python 版本并存的情况下,装错环境会导致明明已经pip install过,启动时仍然报错。推荐先确认可执行文件路径:
# 在 ComfyUI 根目录下执行,确认当前 Python 环境 python -c "import sys; print(sys.executable)" # 安装缺失依赖,请根据实际报错信息调整包名 python -m pip install opencv-python scipy如果错误信息指向某个自定义节点文件夹,只需要单独进入该目录重新安装:
# 进入缺失节点目录后安装依赖 cd custom_nodes/ComfyUI-Krea2-Nodes python -m pip install -r requirements.txt3.4 验证环境是否可用
环境配置完成后,先用最简单的工作流验证 Krea2 是否加载正常。新建一个加载 checkpoint 的节点,选择 Krea2 模型,接入一个空的潜空间和 KSampler,生成一张基础测试图。如果这一步能成功跑出图来,就说明模型加载和采样链路没有大问题,后面的进阶工作流都可以在这个基础上搭建。
4. 工作流一:局部重绘的关键节点与参数要点
4.1 节点清单
局部重绘的基础工作流包含以下节点组:
Load Image → VAE Encode (for Inpainting) → KSampler → VAE Decode → Save Image ↑ 遮罩图像(Mask)Load Image 负责加载原图,遮罩图像从同一张图进入VAE Encode (for Inpainting)的mask输入。这样编码器会把原图和遮罩一起编码,采样器生成时只针对遮罩区域做重建。
4.2 遮罩图像怎么画
在 ComfyUI 中,最简单的方式是在 Load Image 节点上传图片后,点击“编辑遮罩”(Edit Mask)按钮,然后用涂抹工具在需要修改的区域画上白色。遮罩不要求画得非常精细,因为 VAE Encode(for Inpainting)节点有一个grow_mask_by参数,它会自动把遮罩边缘向外扩展几个像素,让重绘边界融合得更自然。
这里容易出错的是:新手会把遮罩画在整张图上。这样等于重绘全图,Krea2 的局部编辑优势完全发挥不出来。正确做法是只涂修改的核心区域,比如只修改眼睛时,遮罩尽量贴近眼睛范围就够了。
4.3 核心参数分析
局部重绘效果不佳时,优先检查这几个参数:
| 参数 | 作用 | 新手建议值 |
|---|---|---|
| denoise | 控制重绘幅度 | 0.5 到 0.7 |
| grow_mask_by | 遮罩边缘膨胀像素 | 4 到 12 |
| cfg | 提示词遵守程度 | 7 左右 |
| steps | 采样步数 | 20 到 30 |
需要说明的是,Krea2 这类编辑模型对 Context(上下文)的依赖比普通模型更强。如果重绘区域太小、周围参考信息太少,模型容易“自由发挥”。所以有时候把遮罩稍微扩大一点,反而比精确到发丝更稳定。
4.4 完整工作流 JSON 示例
下面是一份可以直接导入 ComfyUI 的局部重绘最小工作流。使用前请确认模型文件名称是否匹配,不匹配时在节点里重新选择即可。
{ "1": { "class_type": "LoadImage", "inputs": { "image": "your_image.png" } }, "2": { "class_type": "VAEEncodeForInpaint", "inputs": { "pixels": ["1", 0], "vae": ["5", 2], "mask": ["1", 1], "grow_mask_by": 6 } }, "3": { "class_type": "CheckpointLoaderSimple", "inputs": { "ckpt_name": "krea2_edit_v1.2.safetensors" } }, "4": { "class_type": "CLIPTextEncode", "inputs": { "text": "detailed eyes, natural lighting, soft shadow, high quality", "clip": ["3", 1] } }, "5": { "class_type": "VAELoader", "inputs": { "vae_name": "krea2_vae.safetensors" } }, "6": { "class_type": "KSampler", "inputs": { "model": ["3", 0], "positive": ["4", 0], "negative": ["7", 0], "latent_image": ["2", 0], "seed": 123456, "steps": 25, "cfg": 7.0, "sampler_name": "euler", "scheduler": "normal", "denoise": 0.6 } }, "7": { "class_type": "CLIPTextEncode", "inputs": { "text": "blurry, low quality, deformed", "clip": ["3", 1] } }, "8": { "class_type": "VAEDecode", "inputs": { "samples": ["6", 0], "vae": ["5", 0] } }, "9": { "class_type": "SaveImage", "inputs": { "images": ["8", 0], "filename_prefix": "krea2_inpaint" } } }这份 JSON 的核心逻辑是:原图通过 Load Image 分别输出 pixel 和 mask,pixel 和 vae 一起编码,mask 进入遮罩输入。KSampler 中denoise=0.6是局部重绘的推荐起点。如果你只修改非常小的细节,可以降到 0.4;如果是修改大面积服装,可以升到 0.7。
5. 工作流二:无损扩图的实现方式
5.1 扩图的基本思路
无损扩图在 ComfyUI 中有两种常见实现。第一种是使用图像边缘扩展类节点,把现有画布向指定方向延展,再用采样器填充新区域;第二种是使用专用的 Outpainting 节点包,它们在扩展画布的同时会自动生成遮罩,并设置好采样所需的参数。
无论哪种实现,核心流程都是:
Load Image → 扩宽画布 → 对新增区域编码 → KSampler 定点重绘 → 解码保存为了画面自然,新增区域不能一次性扩展太多。推荐的单次扩展像素为 64 到 128 像素。方向可以根据需要选择向左、向右、向上或向下,也可以多个方向同时扩展。
5.2 从竖构图到横版设定图的扩图策略
应用在角色四视图时,最常见的需求是把一张竖构图角色图扩展成横版多视图底板。这时可以先向左右两侧扩展,再在新的画布中通过布局节点摆放多张视图。如果你使用的是支持批次的输出节点,也可以用一张大尺寸空白画布作为底图,把正面图、侧面图、背面图分别粘贴到对应区域,再通过局部重绘把背景补全。
这里的关键是:扩图不是基于“拉伸”,而是基于“语义补全”。模型会根据画面中的地面线、墙缝、光影方向等线索,推测扩展区域应该是什么样的。所以提供参考信息的原始画面越大,扩图成功率越高。
5.3 扩图参数建议
无损扩图的参数和局部重绘不完全相同。在填充新增区域时,denoise不需要太高,因为新增区域原本就是空白,没有需要保留的原图信息。更关键的是overlap(重叠区域),它决定了每次采样时有多少像素与之前生成的画面重叠,重叠区域越多,接缝越不明显。
| 参数 | 作用 | 推荐值 |
|---|---|---|
| expand_pixels | 单次扩展像素 | 64 - 128 |
| overlap | 与已存在画布的重叠像素 | 32 - 64 |
| denoise | 新增区域重绘幅度 | 0.6 - 0.8 |
| direction | 扩展方向 | left/right/up/down |
5.4 扩图节点配置示例
如果你安装了支持 Outpainting 的自定义节点,配置示例如下:
Load Image → Outpaint Node ├── pixels → 编码 → KSampler → 解码 → Save Image └── mask → 送入采样器部分节点会在 Outpaint 之后直接输出 latent 和 mask,不需要手动连接 VAE Encode。配置时需要在节点属性里设置left、right、top、bottom的像素数,以及overlap值。运行完成后,如果发现接缝处有明显色差,可以增加 overlap,或者把生成结果重新送入一次局部重绘,用低 denoise 值统一色调。
6. 工作流三:一键生成角色四视图设定图
6.1 布局先行还是生成先行
生成四视图,有两种思路。第一种是“先生成后拼接”,先分别生成正面、侧面、背面,再把三张图拼到同一张画布中,最后统一修正;第二种是“先拼版后生成”,在一张大画布上布局好三个区域,用 ControlNet 锁定姿势,再一次性生成三视图。
从 Krea2 的特性来看,更稳妥的是第一种。因为 Krea2 在编辑模式下擅长对已有局部做修正,而不是从零生成三视图。先生成单张视图,再通过拼接和修正得到四视图,可控性更高。
6.2 提示词设计
四视图的提示词,需要在统一角色特征的条件下,分别描述正面、侧面、背面。可以在正向提示词中把角色固定描述写全,在需要变化的部分用不同关键词控制视角。
masterpiece, best quality, 1girl, character design sheet, front view, side view, back view, white background, full body, consistent outfit, same hairstyle, game character concept art, soft lighting, high detail这里有一个实操技巧:在 KSampler 的负面提示词中加入extra limbs, duplicate face, inconsistent clothing这类词,能明显减少视角切换时出现的结构错误。
6.3 分步操作流程
第一步,加载 Krea2 模型,先生成一张满意的正面全身图。第二步,把这张正面图作为参考图,放入图生图流程,用提示词改为side view,同时调整 ControlNet 姿势图,生成侧面图。第三步,用同样的方法生成背面图。第四步,把三张图载入到一张空白底图上,用局部重绘修复人物边缘和背景阴影。第五步,把最终结果再送入一次轻度重绘,统一三张视图的光影和轮廓线。
为了保证角色一致性,一个建议是:选定生成整洁的正面图后,不要重新抽取随机种子,而是固定种子和提示词,只修改视角关键词。这样 Krea2 在生成侧面和背面时,颜色和发型特征会保持相对稳定。
6.4 四视图工作流模板
以下 JSON 演示了从正面图生成侧面图的核心逻辑,实际使用时需要加载正面图,并修改提示词中的视角描述。
{ "1": { "class_type": "LoadImage", "inputs": { "image": "front_view.png" } }, "2": { "class_type": "VAEEncode", "inputs": { "pixels": ["1", 0], "vae": ["5", 0] } }, "3": { "class_type": "CLIPTextEncode", "inputs": { "text": "1girl, side view, full body, same outfit, same hairstyle as reference, game character concept art, white background, high quality", "clip": ["4", 1] } }, "4": { "class_type": "CheckpointLoaderSimple", "inputs": { "ckpt_name": "krea2_edit_v1.2.safetensors" } }, "5": { "class_type": "VAELoader", "inputs": { "vae_name": "krea2_vae.safetensors" } }, "6": { "class_type": "KSampler", "inputs": { "model": ["4", 0], "positive": ["3", 0], "negative": ["7", 0], "latent_image": ["2", 0], "seed": 888888, "steps": 30, "cfg": 7.0, "sampler_name": "dpmpp_2m", "scheduler": "karras", "denoise": 0.55 } }, "7": { "class_type": "CLIPTextEncode", "inputs": { "text": "extra limbs, duplicate face, inconsistent clothing, blurry, low quality", "clip": ["4", 1] } }, "8": { "class_type": "VAEDecode", "inputs": { "samples": ["6", 0], "vae": ["5", 0] } }, "9": { "class_type": "SaveImage", "inputs": { "images": ["8", 0], "filename_prefix": "krea2_side_view" } } }这里的denoise=0.55很关键,它让侧面图保留正面图的肤色、发色、服装色,同时允许视角变化。如果你发现侧面图和正面图姿势太接近,可以稍微提高 denoise;如果角色身份发生了漂移,则降低 denoise。
7. 运行结果与效果验证
7.1 预期输出
局部重绘工作流的预期结果是:遮罩区域内的细节按照新的提示词改变,遮罩外的画面基本保持原样。无损扩图的预期结果是:新增画布上生成与原图连续的地面、背景和环境光,整张图看起来像本来就是大尺寸画面。四视图设定图的预期结果是:一张包含角色正面、侧面、背面和细节信息的横版设定图,三张视图在服装、发色、气质上保持一致。
7.2 如何判断成功
判断标准不是“图好不好看”,而是“是否满足工作流约束”。局部重绘只需要看非遮罩区域的像素变化幅度是否小;无损扩图看新增区域与原有区域的边缘是否自然;四视图看三张视图在角色身份特征上是否统一。建议每次保存结果时,顺手把遮罩和参数一起截图,方便后续对照调参。
7.3 失败先看哪里
如果生成效果不理想,第一步不是改提示词,而是检查遮罩和参数。局部重绘失败,先看遮罩是否布满整个修改区域,再看 denoise 是否过高。扩图出现明显接缝,先调大 overlap 或降低单次扩展像素。四视图角色不一致,先固定随机种子,再降低 denoise。按照这个顺序排查,通常比盲目抽卡更有效率。
8. 常见问题与排查思路
| 问题现象 | 可能原因 | 排查方式 | 解决方案 |
|---|---|---|---|
| 启动工作流时提示缺少节点 | 自定义节点未安装 | 看报错信息中的节点名称 | 在 custom_nodes 中安装对应插件,重启 ComfyUI |
| 提示“请安装缺失的包以使用此工作流” | Python 环境缺少依赖 | 按报错提示进入指定环境执行 pip install | 确认环境路径后安装 requirements.txt 中的依赖 |
| 局部重绘后非遮罩区域也变了 | denoise 过高或 mask 过大 | 降低 denoise,检查遮罩范围 | 将 denoise 调到 0.4-0.6,重画遮罩 |
| 扩图接缝明显 | overlap 太小或单次扩展像素太多 | 观察接缝位置 | 增加 overlap 到 48-64,每次扩展 64-128 像素 |
| 角色四视图不像同一人 | 随机种子变化或 denoise 过高 | 固定 seed,降低 denoise | 统一种子,将 denoise 保持在 0.5 左右 |
| 显存不足导致报错 | 长宽尺寸过大,batch 过大 | 查看输出日志中的 OOM 信息 | 关闭其他进程,降低图像分辨率或减小 batch |
| Krea2 模型加载失败 | 模型文件放置路径错误 | 检查 checkpoint 节点是否能选到模型 | 将模型放到对应目录,刷新节点列表 |
| 生成结果颜色断层 | VAE 与模型不匹配 | 替换 VAE 测试 | 换用模型配套的 VAE 文件 |
9. 最佳实践与工程建议
9.1 角色一致性管理
角色一致性是四视图工作流最容易翻车的地方。我的建议是:每次进入新流程前,固定三样东西,模型版本、随机种子、角色标准化提示词。角色标准化提示词可以单独存放,内容包含发型、发色、瞳色、服装款式、颜色和配饰。这样在生成侧面、背面时,只需要修改视角关键词,不需要重复描述全部角色特征。
9.2 显存优化
Krea2 在编辑模式下对显存有一定压力,尤其是无损扩图需要多次采样。如果显存不够,推荐使用 Tiled VAE 解码,并降低单批次图数量。还有一个技巧是先用较小分辨率跑通流程,确认构图和效果后再调高分辨率。不要在最开始就追求 4K 输出,这会让调参成本成倍增加。
9.3 参数版本管理
ComfyUI 工作流的可复制性很强,但也容易失控。建议在保存图像时,把工作流 JSON 一并导出,文件名格式可以包含模型名、denoise、种子、日期等信息。我之前见过很多项目,图没保存好,后来想复现效果时,只能重新抽卡。养成好习惯后,你手上的每一张图都可以追溯来源。
9.4 版权与合规提醒
使用 Krea2 生成本地图片时,需要注意素材版权问题。不要将他人受版权保护的绘画作品直接放入局部重绘流程中修改后商用。用于个人学习、风格测试和原创角色设计没有问题,但涉及商业项目时,需要确认使用的底图和风格参考是否有授权。本文所有工作流仅用于技术演示和学习交流。
10. 总结与后续学习方向
这篇文章讲了 Krea2 进阶工作流的三个核心模块:局部重绘、无损扩图和角色四视图设定图。它们都可以在 ComfyUI 中通过标准化节点串联起来。局部重绘的关键是遮罩和 denoise 的平衡;无损扩图的关键是控制单次扩展像素和 overlap;四视图生成的关键是固定种子和角色描述,只改变视角关键词。
如果你是纯新手,建议不要直接照搬完整四视图工作流。先把局部重绘跑通,再尝试无损扩图,最后再组合成四视图。每一条工作流单独练熟之后,组合起来会非常顺手。后续还可以继续深入 ControlNet 姿态控制、LoRA 角色微调、以及用多个参考图做跨视角融合。这些都是建立在这篇文章基础之上的进阶方向,建议收藏备用,实际运行时遇到问题可以随时回来对照参数。
这套 ComfyUI 工作流真正的价值,是让你从“不断抽卡碰运气”切换到“定向修改、可控生成”的思维方式。只要把局部重绘和无损扩图这两个基础能力练好,角色设计的工作效率会提升很多。下一期的系列内容,更适合围绕角色一致性进一步展开,届时可以继续聊 ControlNet 和 LoRA 的配合方法。