TiXL 节点详解:Combine3Images —— 用三张输入图像重组 RGBA 通道
音视频图形学桌面应用【免费下载链接】t3TiXL is an open source software to create realtime motion graphics.项目地址https://gitcode.com/GitHub_Trending/t3/t3点击查看免费下载本篇技术指南围绕 TiXLtooll3/t3 实时动态图形创作工具算子库Lib.image.use中的Combine3Images节点展开讲解它如何将三张输入图像ImageA / ImageB / ImageC的任意通道R、G、B、Average、Brightness重新组装进输出纹理的 RGBA 四个通道并配合 Color 输入做通道预调制、配合 Alpha 模式与 Mip 生成控制输出结果。读完本文你将掌握该节点的全部输入参数、下拉选项的真实取值语义、底层 HLSL 实现原理以及它在 RGB 分离、三源合成类特效中的典型接法。Combine3Images 是什么Combine3Images位于算子库Lib.image.use分类下参见 Lib.image.use 算子索引官方定义为A node to combine 3 input images into the RGBA channels of a new one.即把三张输入图像合并到一张新图像的 RGBA 通道中。它是 TiXL 图像合成类算子的成员之一官方文档将其与同目录下的 BlendImages、Blend、BlendWithMask 归为所有混合/合成类操作一族All blend ops and similar: [BlendImages] [Blend] [BlendWithMask] [Combine3Images]与其余三个节点按权重或蒙版把两张图混合成一张的语义不同Combine3Images 不做加权混合而是逐通道重新路由输出的每个通道都可以独立选择来自哪张图、哪个分量因此特别适合构建通道级重组类特效如 RGB 分离、三源通道交换、把三张灰度图打包成一张彩色图等。输入参数一览官方文档给出了完整参数表本节在保留原表的基础上结合 Combine3Images.cs 的源码补齐每个下拉选项的真实取值与 Combine3Images.t3 中的默认值。名称相关性 类型说明默认值来自 .t3ImageATexture2D必填第一路输入图像参与 R/G/B/Average/Brightness 通道提取nullColorAVector4与 ImageA 采样的颜色逐分量相乘调制系数默认 (1,0,0,1) 即纯红(1, 0, 0, 1)ImageBTexture2D必填第二路输入图像nullColorBVector4与 ImageB 相乘的调制系数默认 (0,1,0,1) 即纯绿(0, 1, 0, 1)ImageCTexture2D必填第三路输入图像nullColorCVector4与 ImageC 相乘的调制系数默认 (0,0,1,1) 即纯蓝(0, 0, 1, 1)SelectChannel_RInt32下拉输出 R 通道的数据来源见下方 SelectInput 枚举0ImageA_RSelectChannel_GInt32下拉输出 G 通道的数据来源6ImageB_GSelectChannel_BInt32下拉输出 B 通道的数据来源12ImageC_BSelectAlphaChannelInt32下拉输出 Alpha 通道的数据来源见下方 SelectAlphaInput 枚举4SetToOneGenerateMipsBoolean是否在输出纹理上生成 Mip 链false从 Combine3Images.cs 可以看到三个 Select 通道输入都通过MappedType typeof(SelectInput)映射为枚举下拉框其完整取值语义为值含义值含义值含义0ImageA.R5ImageB.R10ImageC.R1ImageA.G6ImageB.G11ImageC.G2ImageA.B7ImageB.B12ImageC.B3ImageA.AverageRGB 均值8ImageB.Average13ImageC.Average4ImageA.Brightness感知亮度9ImageB.Brightness14ImageC.BrightnessAlpha 输入SelectAlphaInputCombine3Images.cs的取值语义为值含义0直接使用 ImageA 的 Alpha1直接使用 ImageB 的 Alpha2直接使用 ImageC 的 Alpha3强制设为 0完全透明4强制设为 1完全不透明注意到.t3默认配置SelectChannel_R0、SelectChannel_G6、SelectChannel_B12、SelectAlphaChannel4恰好构成R 取 A、G 取 B、B 取 C、Alpha 全不透明的默认路由配合 A/B/C 三路默认的纯红/纯绿/纯蓝调制色节点开箱即用即可观察典型的三通道合成效果。输出名称类型OutputT3.Core.DataTypes.Texture2D输出是一张新的 Texture2D其尺寸由内部_trippleImageFxSetup算子与渲染目标的设置决定RGB 三通道来自 Select 路由Alpha 通道来自 Alpha 模式选择。内部实现从算子到 HLSLCombine3Images 并不是直接写像素的叶子节点从 Combine3Images.t3 的 Connections 可以看出它是一个组合算子内部实例化了一个名为_trippleImageFxSetup的子算子并把 ShaderPath 指向Lib:shaders/img/use/img-combine-3.hlsl同时用多个Vector4Components拆解 ColorA/B/C、IntToFloat把通道选择索引转为 float子算子把上层输入喂给该子算子的FloatParams多输入槽。底层渲染核心位于 img-combine-3.hlsl作者 Thomas HelzleScreendream.de2022其像素着色器逻辑可分三步理解采样与调制第 42-44 行三路纹理按同一组 UV 采样并分别乘以 ColorA/B/Cfloat4 tA ImageA.Sample(texSampler, psInput.texCoord) * ImageAColor; float4 tB ImageB.Sample(texSampler, psInput.texCoord) * ImageBColor; float4 tC ImageC.Sample(texSampler, psInput.texCoord) * ImageCColor;这意味着 Color 参数不仅是着色更相当于通道级增益系数例如把 ColorA 设为 (1,0,0,1)则 tA 中只有 R 分量被保留G/B 被清零——这正是在合成前对某一路做只留红色预处理的低成本做法。Alpha 模式分发第 48-69 行按AlphaMode的 0-4 五个 case 分别取 tA.a / tB.a / tC.a / 0.0 / 1.0与前端枚举一一对应。逐通道路由第 71-109 行把 Select_R/G/B 组成int3循环三次、用switch按 0-14 的 15 个 case 取出对应分量写入color[0..2]最终返回float4(color.rgb, a)。关于两个非直接分量的实现细节Average(rgb)/3.0即算术平均灰度Brightnessmin(1.0, max(0.0, 0.239*r 0.686*g 0.075*b))即 Rec.709 风格感知亮度权重并钳制到 [0,1]第 86 行。当某一路需要按灰度参与合成例如当作蒙版或亮度图打包时选 Average 或 Brightness 比单独选某个通道更合理。实战接法RGB 分离示例仓库自带的示例 RgbSplitShiftExample.t3 展示了 Combine3Images 的典型上游组合Pixelate像素化后的图像、TransformImage旋转后的图像、RenderTarget渲染结果等三路信号分别接入 ImageA/ImageB/ImageC第 866-882 行再配合后续的 Layer2d、DrawMesh 等算子输出到画布。据此可以总结出几个直接可复用的接入套路通道打包Channel Packing把三张灰度图分别作为 ImageA/B/C三个 Select 分别设为 ImageA.R / ImageB.R / ImageC.R值 0/5/10Alpha 选 SetToOne即得一张三通道彩色图。这一模式与同分类下 CombineMaterialChannels、CombineMaterialChannels2把 roughness/metallic/AO 打包给 [SetMaterial]思路一致但 Combine3Images 的通道来源选择更自由不局限于 PBR 语义。RGB 分离效果将原始图的三路经过不同位移如分别做 R/G/B 偏移的 Glitch 类效果后接入三路输入Select 保持默认的 R←A、G←B、B←C即可得到经典色散效果——示例 RgbSplitShiftExample 正是这种思路的完整演示。亮度/蒙版重映射把同一张图接三路分别选 ImageA.Average、ImageA.Brightness 与固定常数色可快速得到灰度与亮度信息重组的变体。混合任意来源由于每个输出通道可独立选择三路中的任一通道或灰度派生值Combine3Images 天然可用于三选一/三选多的通道路由配合SelectChannel_*三个输入均可接表达式或动画值可以实时驱动通道在 A/B/C 之间切换。使用提示与注意事项必填输入ImageA / ImageB / ImageC 均为Texture2D Required未连接时输出无法正确更新Color 输入虽然非必填但默认值决定了各路的调制色改动前请确认其 RGB 分量是否符合预期。尺寸一致性三路输入按同一组 UV 采样若三张图分辨率不一致输出会按渲染目标尺寸统一处理建议在接入前用 TransformImage 或 RenderTarget 统一规格。Alpha 的取舍默认 Alpha 为 SetToOne不透明。当需要把 A/B/C 某一路的透明度传递出去时将SelectAlphaChannel改为对应选项0/1/2需要完全透明或实心则用 3/4。Mip 链若输出纹理后续会被缩小采样例如作为远处贴图或被 Scale 缩小可打开GenerateMips避免闪烁与摩尔纹若只是逐像素取用保持 false 更省资源。性能整个节点是一次全屏像素着色器 pass与图像分辨率正相关适合在实时渲染与演出场景下作为后处理链的一环使用。延伸阅读算子库分类索引Lib.image.use 全部图像使用类算子同族混合节点BlendImages / Blend / BlendWithMask通道打包的 PBR 应用CombineMaterialChannels源码与资源Combine3Images.cs、Combine3Images.t3、着色器 img-combine-3.hlsl、内部载体算子 _trippleImageFxSetup.cs赞分享音视频图形学桌面应用【免费下载链接】t3TiXL is an open source software to create realtime motion graphics.项目地址https://gitcode.com/GitHub_Trending/t3/t3点击查看免费下载相关推荐TiXL 中的 CombineMaterialChannels2 操作符三图通道重组与 PBR 材质贴图打包实战TiXL 中的 CombineMaterialChannels2 操作符三图通道重组与 PBR 材质贴图打包实战 CombineMaterialChannel音视频图形学桌面应用TiXL 图像混合指南BlendWithMask 节点详解——用遮罩亮度在两幅图像间无缝过渡TiXL 图像混合指南BlendWithMask 节点详解——用遮罩亮度在两幅图像间无缝过渡 导读 BlendWithMask 是 TiXL 实时图形创作工具音视频图形学桌面应用ImpromptuInterface核心组件解析ActLike方法背后的动态代理生成机制ImpromptuInterface核心组件解析ActLike方法背后的动态代理生成机制 ImpromptuInterface是一个强大的.NET库它通过结音视频图形学桌面应用上一篇3步开启AI绘画训练Kohya_ss图形化界面全攻略下一篇如何使用apollo-link-state构建React应用本地状态管理系统创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

相关新闻

Octop COS/S3 远程存储后端完整指南:3 步把 Agent 工作区送上云

Octop COS/S3 远程存储后端完整指南:3 步把 Agent 工作区送上云

Octop COS/S3 远程存储后端完整指南:3 步把 Agent 工作区送上云 【免费下载链接】Octop A smarter, self-hosted AI assistant — multi-user, multi-agent. 项目地址: https://gitcode.com/GitHub_Trending/oct/Octop Octop 是一个更聪明、可自托管&#xf…

2026/9/22 1:26:14 阅读更多 →
使用 chezmoi data 命令输出与调试模板数据

使用 chezmoi data 命令输出与调试模板数据

开发工具CLI配置管理 【免费下载链接】chezmoi Manage your dotfiles across multiple diverse machines, securely. 项目地址: https://gitcode.com/gh_mirrors/ch/chezmoi 点击查看 免费下载 导读 chezmoi 的 data 子命令用于把**计算完成后的模板数据&#xff…

2026/9/22 1:53:09 阅读更多 →
MicroPython pyboard 快速参考指南:核心 API 实战速查与源码级解读

MicroPython pyboard 快速参考指南:核心 API 实战速查与源码级解读

MicroPython pyboard 快速参考指南:核心 API 实战速查与源码级解读 【免费下载链接】micropython MicroPython - a lean and efficient Python implementation for microcontrollers and constrained systems 项目地址: https://gitcode.com/gh_mirrors/mi/microp…

2026/9/20 23:33:48 阅读更多 →

最新新闻

儿童网页设计入门到精通:别再只背语法,直接上项目

儿童网页设计入门到精通:别再只背语法,直接上项目

儿童网页设计入门到精通:别再只背语法,直接上项目 看了一堆教程还是不会写项目?这大概是很多想入行前端或者做少儿编程教育的转岗伙伴最大的困惑。…

2026/9/22 1:58:03 阅读更多 →
吉他节拍器怎么用:图解原理与后端思维实战指南

吉他节拍器怎么用:图解原理与后端思维实战指南

吉他节拍器怎么用:图解原理与后端思维实战指南 官方文档翻了三页还云里雾里?别慌,吉他节拍器怎么用这事儿,其实没那么玄乎。很多转行搞后端的朋友,一看到“节拍”、“频率”、“同步”这些词就头大,觉得这是搞音乐的专业设备,跟写代码八竿子打不着。…

2026/9/22 1:58:03 阅读更多 →
赛睿rival踩坑实录:版本升级API全变了?这份完整示例救急

赛睿rival踩坑实录:版本升级API全变了?这份完整示例救急

赛睿rival踩坑实录:版本升级API全变了?这份完整示例救急 版本升级后 API 全变了,你写的代码直接报错,是不是想砸电脑?别急,赛睿rival…

2026/9/22 1:58:03 阅读更多 →
中望cad2015面试必坑一文搞懂

中望cad2015面试必坑一文搞懂

中望cad2015面试必坑一文搞懂 面试被问“中望CAD2015底层几何引擎如何优化大规模图纸渲染”时,你卡壳了?别慌,很多人死在原理答不上来。今天用实战案例一文搞懂中望cad2015高频考点,拒绝背八股。…

2026/9/22 1:58:03 阅读更多 →
艺龙旅行网机票查询源码拆解:避坑指南与面试通关

艺龙旅行网机票查询源码拆解:避坑指南与面试通关

艺龙旅行网机票查询源码拆解:避坑指南与面试通关 面试被问“艺龙旅行网机票查询怎么实现的”,你张口就来“爬虫抓数据”?HR直接摇头。 别慌,这不是让你去黑盒测试,而是考察你对高并发、数据一致性及容错机制的理解。…

2026/9/22 1:57:03 阅读更多 →
3个面试坑:纳米手机镀膜性能优化全解析

3个面试坑:纳米手机镀膜性能优化全解析

3个面试坑:纳米手机镀膜性能优化全解析 面试被问“纳米手机镀膜”原理,你张口就卡壳?别慌,这题看似物理,实则考察的是你对 性能优化 底层逻辑的理解。很多后端或算法工程师因为不懂硬件微观结构,答非所问,直接凉凉。…

2026/9/22 1:57:03 阅读更多 →

日新闻

3台商务办公笔记本实测:手写实现环境配置,告别卡半天

3台商务办公笔记本实测:手写实现环境配置,告别卡半天

3台商务办公笔记本实测:手写实现环境配置,告别卡半天 配置环境就卡半天?别怪机器慢,多半是你没选对工具链。在Java、Go或Python的项目现场, 手写实现…

2026/9/22 0:00:41 阅读更多 →
剑帝加点速查手册:3分钟搞懂核心逻辑

剑帝加点速查手册:3分钟搞懂核心逻辑

剑帝加点速查手册:3分钟搞懂核心逻辑 面试被问原理答不上来,是不是常态?别慌。很多开发者对着 GitHub 开源仓库里的代码发呆,看似简单实则暗藏玄机。今天这份【剑帝加点】速查手册,直接带你拆解核心实现,把面试必考的原理讲透。…

2026/9/22 0:00:41 阅读更多 →
手写实现图片压缩网站核心:搞定WebP转换与质量调优

手写实现图片压缩网站核心:搞定WebP转换与质量调优

手写实现图片压缩网站核心:搞定WebP转换与质量调优 复制来的代码跑不通不知道怎么调?别慌,这种“复制粘贴地狱”在开发圈太常见了。尤其是做 图片压缩网站…

2026/9/22 0:00:41 阅读更多 →

周新闻

Flutter for OpenHarmony游戏卡片渐变背景实战:从原理到性能优化

Flutter for OpenHarmony游戏卡片渐变背景实战:从原理到性能优化

直接铺开项目本身吧。这几个月我一直在折腾一件事:用Flutter给OpenHarmony做一款游戏集合类的App,说白了就是把若干小游戏塞进一个壳里,用统一入口分发。这个方向本身不算新鲜,真正让我花了不少心思的,是首页那堆游戏卡…

2026/9/21 3:13:20 阅读更多 →
Word表格编号全攻略:从列表编号到题注交叉引用

Word表格编号全攻略:从列表编号到题注交叉引用

写Word文档,最让人头疼的往往是那些“看起来不起眼”的小问题。比如表格编号这事:今天在表后面多加了两个空白行,明天给客户交稿前发现整个章节的编号全部错位,光是挨个改序号就能耗掉大半个下午。我前阵子帮人整理一份上百页的技…

2026/9/21 2:19:36 阅读更多 →
从第一个站到第二个站:独立开发者的静态网站选型与落地实践

从第一个站到第二个站:独立开发者的静态网站选型与落地实践

1. 项目概述1.1 核心需求解析做独立开发者这几年,说实话,第一个网站上线的那天晚上我兴奋得没睡着。但等它跑了半年,流量惨淡、功能臃肿、代码自己都懒得看第二遍之后,我才慢慢琢磨明白一个道理:第一个网站是练手&…

2026/9/21 4:51:05 阅读更多 →

月新闻

持续集成 流水线自动化与 声明式交付 实践:原型怎样变成可用功能

持续集成 流水线自动化与 声明式交付 实践:原型怎样变成可用功能

持续集成 流水线自动化与 声明式交付 实践:原型怎样变成可用功能分类:[AI/大模型]细分主题:AI 增强型 CI/CD 流水线自动化与 GitOps 实践:Agent 工作流、工具调用与任务拆解:从原型到生产的验收清单很多团队在尝试用大…

2026/9/21 15:36:51 阅读更多 →
容器编排 生产环境运维与排障实战:复盘记录怎样真正派上用场

容器编排 生产环境运维与排障实战:复盘记录怎样真正派上用场

容器编排 生产环境运维与排障实战:复盘记录怎样真正派上用场分类:[工程技术]细分主题:Kubernetes 生产环境运维与排障实战:可复制的项目复盘模板与决策记录大部分团队的事故复盘报告,最后都变成了躺在 Confluence 或钉…

2026/9/21 15:36:51 阅读更多 →
容器 容器化技术与镜像安全管理:核心链路应该先拆哪一步

容器 容器化技术与镜像安全管理:核心链路应该先拆哪一步

容器 容器化技术与镜像安全管理:核心链路应该先拆哪一步分类:[工程技术]细分主题:Docker 容器化技术与镜像安全管理:核心链路的逐步实现与关键代码取舍面对一个积累了五六年历史包袱的单体架构应用(包含 Web 接口、后台…

2026/9/19 23:35:34 阅读更多 →