ComfyUI 魔法书 Logo
🏠 首页
👥 加群
🔥 报错不求人
😎 大帅比
登录 →
ComfyUI 魔法书 Logo
🏠 首页 👥 加群 🔥 报错不求人 😎 大帅比
登录
  1. 首页
  2. 🧩 插件工坊 (Plugin Workshop)
  3. ComfyUI GLSL节点插件使用教程 手把手教你玩转着色器特效

ComfyUI GLSL节点插件使用教程 手把手教你玩转着色器特效

0
  • 🧩 插件工坊 (Plugin Workshop)
  • 发布于 2025-06-30
  • 6 次阅读
编程界的小学生
编程界的小学生

ComfyUI GLSL 节点插件 - 保姆级图文教程

1. 插件简介

插件地址: https://github.com/patriciogonzalezvivo/comfyui_glslnodes

这个插件就像是给 ComfyUI 装了一个超级强大的"特效滤镜工厂"!它能让你用 GLSL 着色器代码来制作各种炫酷的视觉效果。

能给我们带来什么效果?

  • 制作各种炫酷的视觉特效(比如光影、扭曲、粒子效果)
  • 对图片和视频进行高级处理(边缘检测、景深效果、像素化等)
  • 创建动态的艺术效果和动画
  • 实现类似 Shadertoy 网站上的那些酷炫效果

简单来说,就是把专业的图形编程能力带到了 ComfyUI 里,让你能做出电影级别的视觉效果!

2. 如何安装

方法一:通过 ComfyUI Manager 安装(推荐)

  1. 打开 ComfyUI Manager
  2. 搜索 "GLSL Nodes"
  3. 点击安装即可

方法二:手动安装

  1. 打开终端/命令行
  2. 进入你的 ComfyUI 安装目录下的 custom_nodes 文件夹
  3. 运行命令:git clone https://github.com/patriciogonzalezvivo/comfyui_glslnodes.git
  4. 重启 ComfyUI

3. 节点详细解析

本插件总共包含 13 个节点,本次全部输出完成。

3.1 int 节点 - 整数输入器

这个节点就像一个"数字输入框",专门用来输入整数(比如 1、2、3 这样的数字)。

参数详解

参数名 (UI显示)参数名 (代码里)参数值建议值通俗解释 (能干嘛的)专业解释怎么用/举个例子
valuevalueINT0就是你想输入的整数,比如用来控制循环次数、选择模式等整数类型的数值输入比如输入 5 表示重复某个效果 5 次

3.2 float 节点 - 小数输入器

这个节点就像一个"精密调节器",可以输入带小数点的数字,用来做精细调节。

参数详解

参数名 (UI显示)参数名 (代码里)参数值建议值通俗解释 (能干嘛的)专业解释怎么用/举个例子
valuevalueFLOAT0.0输入小数,比如透明度、速度、强度等需要精确控制的数值浮点数类型的数值输入,支持小数点后三位精度比如输入 0.5 表示 50% 的透明度

3.3 vec2 节点 - 二维坐标输入器

这个节点就像一个"平面定位器",用来输入 X 和 Y 两个坐标值,比如屏幕上的位置。

参数详解

参数名 (UI显示)参数名 (代码里)参数值建议值通俗解释 (能干嘛的)专业解释怎么用/举个例子
xxFLOAT0.0水平方向的位置,左右移动X轴坐标值输入 100 表示向右移动 100 个单位
yyFLOAT0.0垂直方向的位置,上下移动Y轴坐标值输入 -50 表示向下移动 50 个单位

3.4 vec2 (pos) 节点 - 可视化二维位置选择器

这个节点就像一个"可视化地图",你可以直接在一个方格里点击来选择位置,比用数字输入更直观。

参数详解

参数名 (UI显示)参数名 (代码里)参数值建议值通俗解释 (能干嘛的)专业解释怎么用/举个例子
posposVEC2POS(0.0, 0.0)在可视化界面上点击选择位置,就像在地图上标记地点通过图形界面选择二维坐标位置在方格中心点击表示 (0,0),右上角表示 (1,1)

3.5 vec3 节点 - 三维坐标输入器

这个节点就像一个"3D空间定位器",可以输入 X、Y、Z 三个坐标,用来在三维空间中定位。

参数详解

参数名 (UI显示)参数名 (代码里)参数值建议值通俗解释 (能干嘛的)专业解释怎么用/举个例子
xxFLOAT0.0水平方向位置,左右移动X轴坐标值输入 1.0 表示向右移动
yyFLOAT0.0垂直方向位置,上下移动Y轴坐标值输入 -1.0 表示向下移动
zzFLOAT0.0深度方向位置,前后移动Z轴坐标值输入 2.0 表示向前移动

3.6 vec3 (pos) 节点 - 可视化三维位置选择器

这个节点就像一个"3D操作台",你可以通过拖拽来在三维空间中选择位置,比输入数字更直观。

参数详解

参数名 (UI显示)参数名 (代码里)参数值建议值通俗解释 (能干嘛的)专业解释怎么用/举个例子
posposVEC3POS(0.0, 0.0, 0.0)在3D可视化界面中拖拽选择空间位置,就像操作3D建模软件通过三维图形界面选择空间坐标拖拽白点到不同位置来设置3D坐标

3.7 vec4 节点 - 四维数据输入器

这个节点就像一个"四合一调节器",通常用来输入颜色的 RGBA 值(红、绿、蓝、透明度)。

参数详解

参数名 (UI显示)参数名 (代码里)参数值建议值通俗解释 (能干嘛的)专业解释怎么用/举个例子
xxFLOAT0.0通常代表红色分量,0-1之间X轴分量或红色通道值输入 1.0 表示最大红色
yyFLOAT0.0通常代表绿色分量,0-1之间Y轴分量或绿色通道值输入 0.5 表示中等绿色
zzFLOAT0.0通常代表蓝色分量,0-1之间Z轴分量或蓝色通道值输入 0.0 表示无蓝色
wwFLOAT0.0通常代表透明度,0-1之间W轴分量或Alpha透明度值输入 1.0 表示完全不透明

3.8 vec4 (color) 节点 - 可视化颜色选择器

这个节点就像一个"调色盘",你可以直接在色轮上选择颜色,比输入数字方便多了。

参数详解

参数名 (UI显示)参数名 (代码里)参数值建议值通俗解释 (能干嘛的)专业解释怎么用/举个例子
colorcolorVEC4COLOR(1.0, 0.0, 0.0, 1.0)在色轮界面上直接选择颜色,就像用画图软件的调色板通过图形界面选择RGBA颜色值在色轮上点击红色区域选择红色

3.9 glslUniforms 节点 - 统一参数管理器

这个节点就像一个"中央控制台",用来收集和管理所有的输入参数,让着色器能够使用这些数据。

参数详解

参数名 (UI显示)参数名 (代码里)参数值建议值通俗解释 (能干嘛的)专业解释怎么用/举个例子
(动态输入)kwargs各种类型无这个节点会自动接收连接到它的所有输入,像个万能插座动态接收并缓存所有uniform参数把图片、数值等都连到这里统一管理

3.10 glslEditor 节点 - 简单代码编辑器

这个节点就像一个"代码记事本",让你可以写 GLSL 着色器代码来创建特效。

参数详解

参数名 (UI显示)参数名 (代码里)参数值建议值通俗解释 (能干嘛的)专业解释怎么用/举个例子
versionversionGLSL_VERSIONS"140"选择GLSL语言版本,就像选择软件版本GLSL着色器语言版本号选择 "140" 适合大多数情况
codecodeSTRING默认代码在这里写你的特效代码,就像写配方GLSL着色器源代码写代码来创建渐变、动画等效果
typetypeSHADER_TYPES"fragment"选择着色器类型,目前主要用片段着色器着色器程序类型选择 "fragment" 用于图像处理

3.11 glslEditorPro 节点 - 专业代码编辑器

这个节点就像一个"专业代码工作台",比简单编辑器功能更强,有语法高亮和更好的编辑体验。

参数详解

参数名 (UI显示)参数名 (代码里)参数值建议值通俗解释 (能干嘛的)专业解释怎么用/举个例子
versionversionGLSL_VERSIONS"140"选择GLSL语言版本,就像选择编程语言版本GLSL着色器语言版本号选择 "140" 兼容性最好
typetypeSHADER_TYPES"fragment"选择着色器类型,主要用于图像处理着色器程序类型选择 "fragment" 处理像素
codecodeGLSL_STRING默认代码在专业编辑器中写代码,有语法提示和高亮带语法高亮的GLSL代码编辑器享受更好的代码编写体验

3.12 glslViewer 节点 - 着色器渲染器

这个节点就像一个"特效渲染机",把你写的代码变成实际的图像或动画效果。

参数详解

参数名 (UI显示)参数名 (代码里)参数值建议值通俗解释 (能干嘛的)专业解释怎么用/举个例子
fragment_codefragment_codeGLSL_CODE必需连接编辑器节点,提供要执行的特效代码片段着色器代码对象连接 glslEditor 的输出
widthwidthINT512输出图像的宽度,像素数量渲染目标宽度输入 1024 得到更高清的图像
heightheightINT512输出图像的高度,像素数量渲染目标高度输入 1024 得到更高清的图像
framesframesINT1要生成多少帧,1帧就是静态图,多帧就是动画渲染帧数输入 30 生成30帧的动画
fpsfpsINT30动画播放速度,每秒多少帧帧率设置30fps 是常见的流畅动画速度
uniformsuniformsGLSL_CONTEXT可选连接 glslUniforms 节点来提供参数统一变量上下文连接参数管理器来传递数据

3.13 glslBuffers 节点 - 缓冲区提取器

这个节点就像一个"中间结果提取器",可以把渲染过程中的中间步骤结果拿出来单独使用。

参数详解

参数名 (UI显示)参数名 (代码里)参数值建议值通俗解释 (能干嘛的)专业解释怎么用/举个例子
buffersbuffersGLSL_BUFFERS必需连接 glslViewer 的缓冲区输出着色器缓冲区数据连接渲染器的第三个输出
typetype选择列表"BUFFER"选择要提取的缓冲区类型缓冲区类型选择"BUFFER" 用于普通缓冲区
indexindexINT0选择第几个缓冲区,从0开始计数缓冲区索引号输入 0 提取第一个缓冲区

4. 使用技巧和建议

4.1 新手入门建议

  • 从简单开始:先用默认的代码模板,修改几个数值看看效果
  • 多看例子:插件自带了很多示例文件,在 examples 文件夹里
  • 逐步学习:不要一开始就写复杂代码,先理解基本概念

4.2 性能优化技巧

  • 合理设置分辨率:不要一开始就用很高的分辨率,512x512 足够测试
  • 使用 glslUniforms:如果有多个参数,用这个节点统一管理更高效
  • 避免过多帧数:测试时用少量帧数,确认效果后再增加

4.3 常用代码模式

  • 时间动画:使用 u_time 变量创建随时间变化的效果
  • 位置相关:使用 gl_FragCoord 和 u_resolution 处理像素位置
  • 纹理采样:使用 texture() 函数读取输入图像

5. 常见问题解答

Q1: 为什么我的代码不工作?

A: 检查以下几点:

  • GLSL 版本是否选择正确(推荐 140)
  • 代码语法是否正确(注意分号和大括号)
  • 是否正确连接了所有必需的输入

Q2: 如何让效果动起来?

A: 在代码中使用时间变量:

  • u_time - 当前时间(秒)
  • u_frame - 当前帧数
  • 设置 frames 参数大于 1

Q3: 怎么处理输入的图片?

A:

  • 把图片连接到 glslUniforms 节点
  • 在代码中用 u_tex0、u_tex1 等访问
  • 使用 texture(u_tex0, uv) 采样像素

Q4: 为什么在 macOS 上某些版本不工作?

A: macOS 不支持某些 GLSL 版本(如 130, 420, 430, 440),建议使用 140 或 330。

Q5: 如何学习 GLSL 编程?

A: 推荐资源:

  • Shadertoy.com - 在线 GLSL 编辑器和社区
  • LYGIA 着色器库 - 提供很多实用函数
  • 插件自带的示例文件

6. 进阶应用

6.1 多缓冲区技术

使用 #ifdef BUFFER_0 等指令可以创建多个渲染通道,实现复杂的后处理效果。

6.2 ShaderToy 兼容

选择 "fragment (shadertoy)" 类型可以直接使用 ShaderToy 网站上的代码。

6.3 自定义 Uniform

通过命名规则(如 u_tex0、u_val0)可以自动识别和使用输入参数。

7. 总结

这个 GLSL 节点插件为 ComfyUI 带来了强大的图形编程能力,让你能够:

  • 创建各种视觉特效
  • 处理图像和视频
  • 制作动态动画
  • 实现专业级的后处理效果

虽然需要一些编程基础,但通过学习和实践,你可以创造出令人惊叹的视觉作品!

记住:从简单开始,多看示例,勤加练习,你也能成为 GLSL 特效大师!

标签: #插件 2338
相关文章

ComfyUI错误修复插件详解:轻松解决常见问题 2025-07-10 18:25

ComfyUI-CustomMenu插件使用教程:高效自定义工作流指南 2025-07-10 17:50

ComfyUI图像合并插件comfyui-merge使用教程 2025-07-03 22:44

ComfyUI 图像合并插件教程 (comfyui-merge) 1. 插件简介 这是一个专门用来合并图片的 ComfyUI 插件,就像用 PS 把多张图片叠在一起那样。它的特别之处在于你精确控制每张图片的混合方式。 GitHub 地址:https://github.com/LingSss9/com

ComfyUI WAN 2.2视频插件教程:万相AI提示词全攻略 2025-07-31 11:47

ComfyUI WAN 2.2视频插件教程:万相AI提示词实战指南 2025-07-29 20:10

ComfyUI HeyGem数字人插件教程:零基础快速精通指南 2025-07-22 14:10

目录

从节点基础到高阶工作流,我们为你绘制最清晰的 ComfyUI 学习路径。告别困惑,让每一次连接都充满创造的魔力,轻松驾驭 AI 艺术的无限可能。

  • 微信
  • B站
  • GitHub
Copyright © 2025 AIX All Rights Reserved. Powered by AIX.
隐私政策
津ICP备2024019312号