COLUMN / pipeline framework
ADUCG /
Pipeline Framework
Exploring the depths of pipeline framework. Curated articles, technical deep dives, and production insights.
构建 production-ready lighting macro 的 10 条 Katana 实战经验
2026.05.19Industrial Light & Magic 的 lighting TD Jonathan Wai 总结了让 Katana macro 在真实电影/剧集 production 中长期可用的 10 条经验:从团队化设计、UI 表达、版本管理、依赖治理到性能与可维护性。
Disney 的 Hyperion Renderer:设计与演进
2026.05.14从 Big Hero 6 到 Moana,Disney 如何把 path tracing 做成可量产的渲染器?这篇译文完整讲清 Hyperion 的批量光线架构、coherence 提取、denoising 与调试体系,以及它如何在几部电影的生产压力下持续演化。
从“重新加载”到“瞬间同步”——解锁迪士尼动画的协同秘密:UNF(统一通知框架)全解析
2026.05.14厌倦了在 Houdini、Maya 和 Unreal 之间反复保存和重载?迪士尼开源的统一通知框架 UNF 实现了 USD 场景的毫秒级实时同步,无需文件锁,无需重新加载。本文深度解析 UNF 如何颠覆传统 CG 管线协作,对比 Perforce、UE 多人编辑,揭秘顶级动画工作室的实时协同秘密,是技术美术和关卡设计师必读的管线进阶指南。
xSTUDIO用户指南
2026.05.12xSTUDIO 用户指南中文译本
使用科学数据(Using Scientific Data)
2026.05.06给 Pixar Surface 的镜面反射切到物理模式,把颜色选择器改成 RGB,然后从折射率数据库里按红绿蓝波长分别查出折射率和消光系数,就能搭出一套基于实测数据的金属着色。用黄金跑一遍会发现数值虽然数学上准确,但颜色偏淡,稍微拉高红色消光、压低绿蓝,金色会暖得更对味。说到底,是在科学参数和画面直觉之间找一个自己认可的平衡点。
《守卫者传奇》的电影摄影
2026.04.29即使在 10 多年后来看,《守卫者传奇》对全 CG 电影摄影机的处理依然是工业标杆。文章深入复盘了影片如何通过极其大胆的浅景深、长焦镜头以及模拟真实摄影机的追焦滞后感,在数字世界中构建出一种极具真实触感的“实拍”视觉风格。
《乐高大电影》的摄影学:把塑料世界拍成“可信的写实”
2026.04.29把乐高拍出写实感,远不止处理塑料材质那么简单。从导演那句“要像有人在地下室里用微缩模型拍出来”的 brief 开始,团队一头扎进烟雾箱技巧、真实积木的光照测试,以及圆柱形脑袋的情感表达里。这份摄影笔记记录了如何用景深、色差和厚重的空气透视,让积木世界既微小又具备史诗分量。
《乐高蝙蝠侠大电影》如何在激进周期下完成灯光与渲染,并保持最高审美标准
2026.04.29在两年半的极限周期里,Animal Logic 的灯光团队用工业化管线撑起了《乐高蝙蝠侠大电影》的“可信伪写实”视觉。从 70 年代黑色电影到超高饱和色彩,他们为高谭市打造了“宝宝第一次末日”般的独特光影,单个镜头最多容纳两万多盏灯。这里分享了高强度下保持审美标准的方法,以及一些令人咋舌的渲染数据。
在 Houdini 中集成 Conduit:从工具碎片到 ProductIO 框架
2026.04.27探讨 Conduit 工具在 Houdini 管线中的深度集成方案。不同于通用的插件,文章分享了如何通过一套定制化的连接逻辑,解决大型项目在资产传递与跨软件协作中的数据同步痛点,实现生产效率的工业级提升。
版本镜像管理:用 Ar 2.0 实现一键全场景更新(v01 → v02)
2026.04.27深入探讨 USD Ar 2.0 协议下的资产解析方案,重点分享如何通过‘版本镜像’机制解决大规模项目在多服务器环境下的资产同步与版本对齐难题。
一套学生团队的 USD Pipeline:Maya → Solaris → RenderMan + Tractor
2026.04.27一份来自学生团队的 USD 流程实践总结:从 Maya 导出 USD 到 Solaris 的 LookDev 与 Set Dressing,再到 RenderMan 渲染和 Tractor 农场调度,他们把导出限制、跨软件尺度、农场卡死等常见卡点做成模板和自动化脚本,让团队能更专注于创作本身。
从 Maya 到 Houdini Solaris:基于数据驱动的场景自动化重建方案
2026.04.26Maya里手动摆放的场景布局,如何高效迁移到Houdini Solaris的USD流程?技术美术师JonnhyRDG的开源方案提供了一种思路:从Maya导出变换数据,转成JSON字典,再在Solaris里按规则重建引用与实例化结构,把场景装配变成可再生的流程能力。
从 $F4 到 {FrameID:4}:序列帧命名规则的演变
2026.04.23从 Houdini 的 $F4 到 Nuke 的 ####,再到 Unity 的 FrameID:4,序列帧占位符的写法一直在变。这篇笔记把三种典型语法的来龙去脉、边界清晰度和扩展性做了对比,也聊了起始帧、padding 和占位符识别这些跨软件对接时容易踩的坑,适合做流程的同行参考。
Windows平台下 xSTUDIO 编译与环境配置指南
2026.03.26一份在 Windows 上从源码构建 DNEG 开源审片工具 xSTUDIO 的实操笔记,梳理了 Visual Studio 2022、vcpkg、Qt 6.5.3 的配置要点,以及 CMake 构建中常见的依赖与运行时问题。
Light Linking 不是解决方案:它是 Lookdev 与场景基准失效的症状
2026.03.25你有没有遇到过这种情况:同一套灯光下,A 角色偏暗两档,B 角色却爆掉,最后只能给每个角色单独打灯?很多人会顺手用 light linking 来救火,但 Arvid Schneider 认为这恰恰是上游崩坏的信号。他把 light linking 的副作用讲得很清楚——破坏物理合理性、扛不住相机运动、拖慢迭代,还掩盖材质问题。更重要的是,给出了一套用黑旗、反光板等物理工具替代链接,回归统一 lookdev 基准的落地路线。
Lookdev 到底是什么:一套可复用的制作级基准与数值表
2026.03.02Lookdev 是在进入镜头前,用可控光照与参考物验证材质物理合理性与艺术可指导性的环节。一份可复用的制作级基准包括中性场景必备的灰球、镜面球和色卡,线性空间下常见材质与肤色的 albedo 数值表,以及转台规范、多 HDRI 校验和资产固化策略,帮助团队建立可评审、可迁移的材质验证回路。
AOUSD 2025 年度回顾:OpenUSD 标准化和增长的里程碑年份
2026.02.262025 年对 OpenUSD 联盟来说是里程碑式的一年,核心规范 1.0 获批,为 3D 互操作性奠定了通用语言。会员数量快速增长至 50 个普通会员和 88 个贡献者,新成立了工业数字孪生、Web 和构建三个兴趣小组。从 GTC 到 SIGGRAPH,行业领导者展示了 OpenUSD 在制造、建筑、机器人等领域的实际应用,生态系统的扩展和标准化进程正在加速。
Foundry 收购 Griptape——fxpodcast 独家专访
2026.02.26Foundry 收购了 Griptape,把 AI 编排能力带进 Nuke 等创意工具。这期 fxpodcast 专访了双方负责人,聊了聊为什么编排比模型本身更重要,以及工作室如何安全地把 AI 嵌入现有管线。从实验到生产,治理、可重现性和集成才是关键。
用于 Lookdev 的校准光照:可核验的 lux、色温与 HDRI 标定方法
2026.02.20材质调得再准,光照数值拍脑袋的话,一到镜头灯光还是会崩。这里有一套经过验证的 Lookdev 光照校准思路:用 lux 和色温做标尺,配合真实世界照度表、HDRI 标定和灰球验证,让光照可诊断、可迁移。
physLight:物理单位驱动的标准化光影渲染架构
2026.01.30physLight 把流明、亮度这类光度学单位以及快门、光圈、ISO 等相机参数直接引入渲染管线,用光谱灵敏度修正 RGB 偏差,让数字光照与实拍影像在物理上对齐。方案已集成到 USD,帮助消除不同工具间的差异,使虚拟产品与实拍画面高度匹配。
Arnold vs V-Ray vs Redshift vs Karma vs RenderMan:2026 年渲染器选择指南(制作视角)
2026.01.10渲染器选择不是画质之争,而是看谁在你的生产条件下更可靠、更可维护。从Arnold、V-Ray到Karma、Redshift,各渲染器的制作定位差异明显,而Hydra可切换渲染器与MaterialX标准正在让流程更灵活。固定色彩管理和渲染基准,往往比换引擎更能决定效率。
Houdini 植被高效布局与碰撞模拟:把植被自动变成 UsdSkel Agents(含 Vellum)
2025.10.19如果你需要在 Houdini 里处理角色穿过密集植被的碰撞交互,这套方案把植被资产自动转为 UsdSkel agents,批量生成近似骨骼后接入 Vellum 做高效模拟,再把姿态回写为轻量 USD 动画缓存。从 PDG 批量处理到 Solaris 布局、渲染合成,整条链路都跑通了。
Fringe Lights:在 Glimpse 中实现彩色半影边缘(Colored Penumbra)
2024.12.03在制作 Netflix《Leo》时,Animal Logic 为路径追踪器 Glimpse 开发了 Fringe Lights 功能,让灯光师可以单独调整半影区域的颜色,完全受光和完全阴影的部分则保持不变。实现上只需在光源采样时最多额外追踪一条阴影射线,就能以极小的计算开销估算出过渡区域,并施加独立的半影着色。这种控制方式直观、渲染全程可见,省去了在合成阶段靠遮罩手工调色的麻烦,也避免了多盏补光相互干扰的问题。
Houdini 20.5 Copernicus Slap Comp:在 Solaris Hydra 里实时预览多渲染层合成
2024.08.26在 Houdini 20.5 中,Copernicus 的 Slap Comp 让 Hydra 视口内实时合成成为可能,但原生工具不支持多渲染层叠加。这里介绍一个 HDA,能够动态叠加多个层,并在切换活跃层时保持最终合成画面的预览,让分层迭代更直观。
Nucleus:面向动画与视效应用的设计系统
2024.07.27Animal Logic 的论文介绍了 Nucleus 设计系统,一套面向动画与视效应用的插件式架构。它组件化 Qt 开发,解决多工种协作中常见的代码割裂与重复劳动,并引入应用成熟度模型来度量复杂交互工具的质量。
Houdini 20 羽毛系统实战:做一只鸟(羽毛图集、Groom、APEX、Karma XPU、Solaris 导出)
2024.07.08在 Houdini 20 里用全新的羽毛系统做一只鸟,从手绘羽毛形状、Groom 梳理、APEX 绑定到 Solaris 中 Karma XPU 渲染与导出,完整走通羽毛资产的创建与动画管线。还聊了 condensed 羽毛数据、变形器与 Feather Procedural 在渲染时的用法。
Houdini UDIM UV layout
2024.06.17在 Houdini 里用 uvlayout 处理 UDIM 时,UV 经常跑到象限交界处,进 Substance Painter 就会出问题。一个更省事的办法是先按需要的象限数量平铺一个参考平面,把它连到 uvlayout 的第二个输入端,再把 Pack Into 设为 Islands from second input,UV 就会规整地落在指定区域内。
Houdini输出FBX的LOD和Collision
2024.06.17Houdini导出FBX时处理LOD和碰撞体,通常有两种思路:一种直接在OBJ层级里组装好,另一种给模型添加segment属性,再用name或path属性输出。两种方式都能在ROP FBX节点中完成,后者在需要程序化控制时更顺手。
理解 USD Composition Arcs
2024.05.21在 USD 里,组合弧是让多个图层和资产无缝拼合的核心机制。子层、引用、变体、有效载荷、继承和特化这六种操作符各有分工,从多用户协作到按需加载重型数据,掌握它们的差异才能真正发挥 USD 的威力。
Maya Python 性能优化指南
2024.04.30在 Maya 里写 Python 工具,性能问题迟早会碰上。这份笔记从 API 选择到批量操作、缓存策略,对比了 cmds 和 API 2.0 的实际差距,并附上了可参考的提升倍数。如果你也在为脚本卡顿头疼,这些思路或许能帮上忙。
Houdini 20 快速人群:Crowd MotionPaths 入门与 Agents/USD 的关键概念
2024.04.10Houdini 20 新增的 Crowd MotionPaths 工具集,让 SOP 里直接做人群动画成为可能,不用再跑仿真。这篇笔记从 Agent 的搭建开始,一路讲到 Solaris 和 USD 导出,把几个容易混淆的概念都理了一遍。
如何查询hip文件的houdini版本信息
2024.03.08有时候从网上下载或甲方发来的 hip 文件没注明 Houdini 版本,其实查起来很简单。要么在 Houdini 里打开 Python Shell 跑一句命令,要么把 hip 当压缩包解压,找到 .variables 文件,版本号就写在里面。
USD Assets构建指南
2024.01.20在搭建 USD 资产管线时,术语和结构往往需要团队花时间对齐。这份指南从组件、装配等基础概念出发,梳理了原始层次与文件组织的常见模式,并给出了最小可行资产的构建思路,很适合作为建立资产直觉的起点。
AYON的安装部署
2024.01.18AYON 是 ynput 在 OpenPYPE 基础上全新打造的 web 端流程管理平台,集成了项目管理、文件版本与 DCC 插件。如果你之前用过 OpenPYPE,会发现 AYON 不再只是 DCC 与 ShotGrid 等系统的桥梁,而是一个完整的制作中枢。部署推荐用 Docker compose,拉取镜像后一条命令就能跑起来,后续更新也只需 pull 再 up。1.0 版本还新增了 Kitsu 插件集,官方文档和社区资源也一并附上。
Solaris 里实时生成 Position Reference(pRef)AOV:让 aPMatte 在变形角色上也能“粘住”
2023.12.19变形角色上 aPMatte 遮罩总是漂移?pRef AOV 能解决这个问题。在 Solaris 里用 Python LOP 节点把参考帧的点位写成 primvar,再在 Karma 里输出,遮罩就能稳稳粘住。不用上游烘焙,也不用 SOP Modify。
在 Houdini 用 SOPs + Solaris 做程序化浮冰(Drift Ice):几何、细节、变体与 USD 组织
2023.12.19记录一次用 Houdini 程序化生成北极浮冰的实践:用 RBD Material Fracture 和 Boolean Fracture 搭建冰与雪的基础结构, Attribute Noise 添加表面细节,再到 Solaris 里完成材质、变体和 USD 装配,顺便聊了 AOV 和 primvar 的用法。
线上管理项目以及生产环境的搭建
2023.12.13分享一套面向异地小团队的线上制作管线方案,以 Kitsu、OpenPYPE 和 Perforce 为核心,把任务管理、文件版本同步与 DCC 流程串起来,兼顾低成本和高可定制性,无需专业 TD 二次开发。
Kitsu的安装部署
2023.12.05Kitsu 是 CGWire 开发的动画与视效协作平台,社区版免费,功能向 Ftrack 看齐。我在腾讯云轻量服务器上 Docker 部署了它,从拉取官方镜像到运行容器、更新数据库架构,几步就能跑起来,还支持简体中文。
解决UE5(UnrealEngine 5)迁移文件报错
2023.12.05UE5迁移资产时,如果目标路径不在当前项目内,会一直报错无法继续,而UE4只需忽略即可。解决办法是在目标位置新建Content文件夹,并在其上一级目录创建一个.uproject文件,让引擎认为这是一个合法的项目路径。
面绘迈向更光明的未来:Nuke 中基于 USD 的工具集
2023.08.05Animal Logic 为面绘艺术家打造了一套直接在 Nuke 里操作 USD 舞台的工具集 AL_USDNuke。它把路径追踪视口、节点式编辑和高保真渲染反馈整合在一起,让大型 USD 场景的加载与修改不再吃力,面绘成果也能顺畅发布给上下游部门复用。
PipelinePro 的界面配色逻辑:用颜色传达层级与情绪
2023.07.28PipelinePro 的界面配色不是装饰,而是一套用暖冷渐变引导层级、用红紫橙绿蓝传递情绪与风险的语义系统。它让用户少看文字就能感知重要程度和操作氛围,也让品牌印象更清晰。
使用Nuke将360全景图转为柱形图
2023.07.03Nuke没有直接提供Cylindrical投射方式,但可以自己搭一套相机阵列来采样拼接。从世界中心复制一圈相机,这里用了24台,数量越多拼接越自然,调整好焦距后把每个相机的输出拼起来就行。
为什么要使用ACES进行灯光渲染?
2022.11.14ACES 渲染的高光与色彩表现更接近人眼感知,动态范围扩展让亮部细节保留得更好,颜色在变亮时自然去饱和。相比 sRGB,ACEScg 能减少高光裁剪,也让光照设置更贴近真实强度,提升画面真实感的同时也提高了工作效率。
win10安装Stable Diffusion
2022.10.11在 Windows 10 上 WSL 与 Docker 部署 Stable Diffusion 的实操记录,涵盖 CUDA 驱动兼容性处理、分支选择以及 hlky、auto 等不同 WebUI 方案的对比。
强化绑定变形:在《DC 超级宠物联盟》上的镜头雕刻(Shot Sculpting)
2022.08.08在《DC 超级宠物联盟》里,动画师用一套镜头雕刻工具直接在镜头中捏出肌肉鼓起、猪挤进狭小空间等效果,不用再等绑定部门返工。这套工具基于 Animal Logic 的 Bond 变形系统,把 blendshapes、lattice 等变形器无缝塞进 Maya 动画流程,让轮廓始终由动画师掌控。
剪辑管线转换:Animal Logic 迁移至 OpenTimelineIO
2022.08.07Animal Logic 的剪辑管线迎来一次彻底重构。他们用 OpenTimelineIO 和 Electron 打造了跨平台的 Editron 工具,前端基于 Vue.js,后端在 Linux 上跑任务图,输出 OTIO、EDL 和 USD。这次迁移让管线不再绑定特定剪辑软件,近期制作中已经看到扩展性和排障效率的提升。
规模化 USD:Animal Logic 的集成与实践
2022.07.27Animal Logic 在向 USD 迁移时,选择用片段组合来替代强类型实体,让管线从数据库驱动转向场景描述驱动。这套方案支撑了数百万 USD 文件的生成与多项目并行,他们也在持续解决大规模解析和查询的性能问题。
Clarisse 5.0 切换python版本
2021.08.14Clarisse 5.0 开始同时支持 Python 2 和 Python 3,安装时可按需勾选,启动后默认使用 Python 3。如果之前为旧版写过工具,保留 Python 2 可以避免兼容问题。切换版本只需在命令行加上 -python_version 2 或 3 参数,也可以把命令写成快捷方式。另外 5.0 将 iFX 和 BUiLDER 合并为一个安装包, -flavor iFX 参数就能决定启动哪个版本。
usd-noodle
2021.05.21USD-noodle 是一个开源小工具,把 USD 文件的层级与引用关系用节点图的方式呈现出来,方便快速理清场景结构。它支持命令行独立运行,也提供了完整的 Houdini 插件,安装后可以直接在 LOP 环境中加载 stage 查看,很适合日常排查依赖和了解文档组成。
Katana批量镜头生产(二)
2021.02.19接续前一篇的模板搭建,这一部分进入实际镜头的批量生产,并先确立文件路径与命名规范,让 Katana 表达式和变量能稳定拾取目录。
Katana批量镜头生产(一)
2021.02.19接手一个外包网大项目时,Maya 频繁崩溃让批量渲染几乎无法推进,于是切到 Katana 重新搭建流程。这篇记录了手动导出 Alembic、统一资产命名、在 Katana 里还原材质并组装可复用模板的实战过程,为后续多镜头并行生产铺好了路。
UE4 Texture Streaming Pool Over 报错
2021.02.05烘焙 UE4 项目时如果提示 Texture Streaming Pool Over,多半是场景资源量超出了默认的流送池上限。可以手动在 ConsoleVariables.ini 里调大 r.Streaming.PoolSize 的值,或者干脆在项目渲染设置中关闭纹理流送功能。
离线安装使用Quixel Mixer
2020.12.28Quixel Mixer 在离线环境安装时常会中途失败,即便装完也卡在登录环节。一个可复现的解决办法是先从联网机器上拷贝完整的安装目录,再配合离线许可文件激活,就能绕过这些限制。
3天
2020.11.08多项跨领域研究指向一个朴素结论:达到专业水准大约需要十年或一万小时,关键在于“审慎地重复”——不是机械堆量,而是不断挑战极限、分析失误并修正。莫扎特4岁作曲,但写出世界级作品也花了13年;甲壳虫乐队在爆红前已在利物浦和汉堡演出了近十年。柏林音乐学院的数据更直观:20岁时,顶尖学生累计练习超一万小时,而普通学生只有四千。捷径从来都是幻觉。
著名动画师关于眨眼的建议
2020.11.08一群动画师聊起眨眼技巧,从时机选择、双眼偏移到情绪对频率的影响,没有死板规律,却处处指向角色性格与叙事。Pixar常用的偏移闭合法、剪辑师眼中的眨眼剪接点,以及快入慢出等手感经验,都在提醒:眨眼是表演,不是生理反应。
提问的智慧
2020.10.29在技术社区混迹多年,这份指南一直是我推荐给新人的必读。它不讲大道理,而是用黑客的直率告诉你:好问题本身就是一种贡献。从搜索旧帖到精准描述,每一步都在帮你更快得到答案,也赢得尊重。
UE4渲染自定义通道
2020.08.22在UE4里做电视剧的场景延伸镜头,效率确实比传统流程快不少,但ID和AOV这类通道用起来总感觉不如离线渲染器顺手。后来试了试自定义通道的方案,直接在DefaultEngine.ini里配置BufferVisualization材质,就能在渲染时把P、ID这些层一并输出,合成那边处理起来灵活很多。
Grip 与 Filament:基于 USD 的灯光工作流
2020.08.17Animal Logic 在《比得兔2》中彻底重构了灯光流程,以 USD 为骨架开发了 Grip 节点图库和 Filament 交互前端,取代沿用十年的 RSS 脚本系统,让灯光师在统一工具中获得更交互、可复用的制作体验。
Clarisse iFX经验之谈(二)
2020.08.06在Clarisse iFX里,合理的目录结构不只是为了整洁,更是因为每个节点的唯一路径直接影响操作效率。聊聊Image与Layer的镜头分层思路,以及如何用group像Set一样组织渲染元素,让复杂场景的分层输出更顺畅。
如何启用Katana3.5的USD插件
2020.08.06Katana 3.5 自带了基于 USD 19.11 的插件,但默认不会加载。只需在系统环境变量或启动脚本里指定插件路径,就能在节点菜单中创建 USD 节点。目前这套官方插件还比较基础,支持加载文件、读写属性与设置变体,暂未提供层合并和专用显示窗口。
Arnold ROP配置预设AOV
2020.08.03给 Arnold ROP 增加自定义 AOV 预设其实很简单,找到 htoa 目录下的 properties.py 文件,按格式把需要的通道名加进去,重启 Houdini 后新选项就会出现在列表里。
Houdini Solaris中如何加载USD文件
2020.08.03在Solaris里加载USD文件,LoadLayer、Sublayer、Reference节点都能用,但选哪个更顺手?这里梳理了不同方法的区别和实际搭配技巧,帮你更灵活地搭建程序化场景图。
关于Katana Arnold输出MotionVector
2020.05.10在Katana里用Arnold输出运动矢量,通常有两种路子:直接调用预设的motionvector AOV,或者motion_vector shader自定义AOV。无论哪种,都别忘了在渲染设置里设好快门,并在Arnold全局选项里勾选output_motion_vectors。用shader的话,还要把AOV shader加进去,通道名得对上。
Houdini Arnold自定义Cryptomatte
2020.04.29Cryptomatte 默认只提供 Asset、Object、Material 三种 ID,但实际项目里常常需要更灵活的分类。在 Houdini 的 Arnold 工作流中,可以借助 cryptomatte 节点的 user 参数自定义 AOV,然后给物体写入同名的字符串属性,渲染时就能得到额外的遮罩通道。
Clarisse iFX经验之谈(三)
2020.03.01Clarisse iFX里几个容易被忽视的功能,其实能显著提升效率。Variable让批量操作自动化,Comment注解比想象中更好用。团队协作上,Clarisse本身偏向个人创作,真要协作还是得看Builder。另外,花点时间定制自己的Shelf,工作会顺手很多。
Houdini Solaris USD基础概念(一)
2020.01.05从prims到stage,把USD场景构成里那些绕不开的基础概念捋了一遍,包括属性、关系、元数据、层与合成操作符,适合在Solaris里刚上手USD时对照着看。
Houdini Solaris USD基础概念(二)
2020.01.05在Houdini Solaris的USD工作流中,理解Primitive类型、父级类型和Kind分类是构建清晰场景结构的基础。内容梳理了mesh、Xform、Light等常见primitive,以及Scope与Xform在层级管理上的区别,并解释了Assembly、Component等Kind如何注释模型层次,帮助维护合理的场景图。
Houdini帮助文档默认以Web浏览器打开
2020.01.04想让 Houdini 的帮助文档跑得更快?把环境变量 HOUDINI_EXTERNAL_HELP_BROWSER 设为 1,它就会改用系统默认浏览器打开,而不是内置窗口。在 macOS 上提速明显,还能顺手用上浏览器的翻译或笔记插件。
SideFX Labs
2019.11.29SideFX Labs 已集成到 Houdini 18.0 中,前身就是 GameDev 工具包。它提供了 150 多个测试版 HDA 节点,覆盖地形、UV、材质等常见流程,并与 Gaea、Substance、Rizom UV 等软件打通。很多操作一个节点就能完成,对不熟悉底层节点的用户很友好。项目仍在 GitHub 上活跃更新。
关于场景装配
2019.10.26场景装配不是又一个DCC,而是把资产、材质、灯光和渲染规则组合起来的程序化流程。它靠非破坏性、按需加载和模板复用,让复杂场景的管理变得轻快不少。这篇文章聊了装配的核心任务,也对比了Katana、Clarisse、Gaffer这几款工具在视口、渲染器支持和上手难度上的真实体验,顺带讨论了小团队值不值得搭这套管线。
Nuke,Nuke Studio和Hiero禁用Frame Server
2019.07.28在局域网环境中使用 Hiero 批量输出时,如果另一台机器正占用 Frame Server,软件启动就可能直接卡死并报错。这时只需在启动命令里加上 --disable-nuke-frameserver 参数,临时禁用 Frame Server,Hiero 就能恢复正常。这个小技巧同样适用于 Nuke 和 Nuke Studio。
《乐高大电影 2》中的基于物理的镜头光晕渲染
2019.07.27《乐高大电影2》里那些强逆光下的镜头光晕,并不是靠后期合成贴上去的假效果,而是基于真实镜头物理模拟出来的。团队 Polynomial Optics 库搭建了一套渲染器,只追踪两次反射的光路,在效率与准确性之间找到了一个很实用的平衡点,同时把遮挡和镜头污渍这些细节也一并带了进去。这套方案在约 50 个镜头中稳定跑通,艺术家上手调整起来也比较自然。
Clarisse iFX 4.0 SP1坑爹BUG
2019.07.07Clarisse iFX 4.0 SP1 在后台渲染时有个让人头疼的 bug:cnode 命令行即便只指定了某个 layer,也会把整个 image 下的所有层都渲一遍,只保存你指定的那层。农场渲染时间直接翻倍。用 3.6 对比测试后确认问题出在版本上,官方论坛早有人提交,SP3 已修复。临时方案是每个 image 只放一个 layer。
使用cmder替代windows的cmd
2019.07.07还在用Win7,无缘体验微软新终端?Cmder是个不错的免费替代品。它弥补了原生Cmd在快捷键和界面上的不足,提供mini和full两个版本,解压即用。配置好环境变量和右键菜单后,就能享受多标签页、路径补全、历史搜索等便利操作。
Computer Graphics Metaphysics
2019.06.13计算机图形学里总有些现象难以用现有知识解释,于是有了一个戏称的分支——Computer Graphics Metaphysics,简称CGM,专门收纳那些不合常规逻辑的图形问题。
英特尔推出HdOSPRay和OpenVKL
2019.06.05英特尔最近放出了两个新工具,对做体积和 USD 流程的朋友可能挺有用。OpenVKL 是一套专为 CPU 体积渲染优化的算法库,预计第三季度以 Apache 2.0 许可发布。HdOSPRay 则把 OSPRay 的光线跟踪带进了 USD 的 Hydra 视窗,在皮克斯标准厨房场景里基本光追能跑到 62fps。目前只提供源码,Linux 和 macOS 支持较好,Windows 还是实验性的。
为什么我们要使用Email进行协作?
2019.06.01在团队协作中,Email 的异步特性让沟通不必实时在线,也方便信息归档与回溯。这篇文章分享了如何主题、抄送和及时回复让邮件协作更高效,并对比了 IM 与电话的适用边界,还引用了 Email 之父对邮件持久价值的看法。
Autodesk Standard Surface
2019.05.27在跨设施资产交换中,表面外观的一致性一直是个麻烦。Autodesk Standard Surface 规范试图用一套精简的参数化模型解决这个问题,它脱胎于 Arnold 标准曲面着色器,并提供了 OSL 和 MaterialX 参考实现。模型分层与混合操作覆盖了金属、玻璃、木材等常见材质,参数集只保留最实用的部分,让外观开发更直观。
Unreal改进学习门户网站
2019.05.27Epic Games 最近翻新了 Unreal 学习门户,一口气上线了超过 35 个课程和功能介绍,用 Epic 账号就能直接登录学习。
在不同渲染器及游戏引擎中使用纹理的原理方案
2019.05.27聊聊纹理在不同渲染器与游戏引擎里的运作机制和落地思路。
Deadline plugins添加版本号
2019.04.04软件迭代快,Deadline 仓库的插件版本号经常跟不上。如果暂时不想升级 Deadline 又需要支持新版 Houdini,直接改两个配置文件就能搞定——记得先备份。
houdini无法读取网络路径文件
2019.03.03在 Houdini.env 里把 HOUDINI_ACCESS_METHOD 设为 2,能绕开 Windows 用户与组权限的检查,直接按文件属性判断,让网络路径上的文件读取不再卡住。
Maya动画曲线导出及导入
2019.02.28在 Maya 里用 animImportExport 插件导出动画曲线时,选择物体后以 animExport 格式输出,勾选双精度和包含子层级能保证数据完整;导入时只需选中目标物体再加载 .anim 文件即可。这套流程简单可靠,适合日常在角色或道具间迁移动画数据。
Maya 2018/2015速度比较
2018.11.17在一台双路Xeon E5-2637 v3配Quadro M5000的机器上跑了一组Maya版本对比,结果挺有意思。Maya 2018 update3在蒙皮角色和OpenSubdiv动画上帧率暴涨,单个OpenSubdiv角色从2017的19fps直接跳到250fps,15个角色也从2.39fps提升到33fps。布尔运算和Bifrost解算同样快了不少,视口处理大量面时也更流畅。
Deadline渲染任务添加环境变量
2018.11.02在Deadline渲染管理中,当同一节点需要同时支持Maya和Katana的Arnold渲染时,环境变量冲突是个常见痛点。修改提交脚本,为任务预设EnvironmentKeyValue属性,能让不同DCC在渲染时各自加载正确的许可与环境,避免手动干预。这里分享了Katana提交脚本的具体修改位置与方式。
启动katanaBin无法定位动态链接库kernel32.dll解决办法
2018.10.23在 Katana 3.0v3 配合 KtoA 2.2.0.0 和 Arnold 5.2.0.0 的环境里,Windows 7 SP1 上启动时遇到 SetDefaultDllDirectories 无法定位 kernel32.dll 的报错,导致 Arnold 渲染异常。这个问题的修复方式很简单,安装 KB2533623 补丁即可解决。
修复因卸载Maya等软件造成文件ico丢失
2018.08.03在Windows上同时安装多个版本的Maya或3ds Max,卸载其中一个后,所有相关文件的图标都变成了丑陋的默认样式。这其实是注册表里DefaultIcon键值被清除导致的。手动在HKEY_CLASSES_ROOT下为对应文件类型补上这个项,再用Resource Hacker从exe中找出正确的图标ID,就能让图标恢复原样。
UE4离线安装时报错解决办法
2018.07.27在离线部署 UE4 时,如果从官网拷贝的安装文件启动报错,多半是运行库或系统组件缺失。常见情况包括缺少 C++ 2013 运行库、Win7 未更新 SP1,以及 DirectX 不完整导致的各种 dll 丢失。顺手放了一个快速修复工具,能覆盖大部分这类问题。
Arnold to Maya MultiSub Shader
2018.07.23在 Maya 中使用 Arnold 时,借助 aiSwitch 节点与 aiUserDataFloat 配合,可以按 ID 为不同物体分配不同材质。给每个物体的 Shape 节点添加一个名为 mtoa_constant_index 的浮点属性,设定各自的索引值,aiSwitch 便会根据该索引输出对应的 shader,实现一套材质球控制多个模型外观的效果。
加速Maya开启与关闭的方法
2018.07.16Maya 2016 之后的版本启动变慢,往往是因为新增的 Cloud 登录组件在后台拉起了多个 Chromium 进程,即使使用节点锁定许可也无法跳过。设置 MAYA_DISABLE_CLIC_IPM、MAYA_DISABLE_CIP 和 MAYA_DISABLE_CER 这几个环境变量,就能把启动时间从 38 秒降到 14 秒,关闭时间也从 15 秒缩到 5 秒。
windows下编译pbrt v3
2018.07.10在 Windows 上编译 PBRT V3 的随手记录:Git 克隆源码,CMake 生成 Visual Studio 工程,VS2015 编译后,用命令行渲染官方示例场景,输出 EXR 图像。GitHub 上还有 Maya 与 Houdini 的插件,方便在 DCC 中调用。
V-Ray环境变量问题
2018.06.26安装 V-Ray for Maya 后,插件看似正常加载,渲染器列表里却找不到它,Deadline 也会抛出找不到环境变量的错误。这通常是因为系统没能及时刷新安装时写入的环境变量。遇到这种情况,先试试注销再重新登录,往往就能让变量生效。
Maya2017无法运行designer.exe
2018.06.20Maya 2017 的 designer.exe 有时会突然罢工,弹出一个错误提示。在 Autodesk 论坛上找到了一个简单的修复方法:把安装目录下 qt-plugins 里的 platforms 文件夹复制到 bin 目录中,熟悉的界面就回来了。
使用V-Ray Denoiser tool降噪
2018.05.06动画序列降噪时,独立版 V-Ray Denoiser Tool 比内置降噪器更可靠,因为它会混合前后帧来抑制闪烁。顺手记下了 vdenoise 的命令行用法和通配符示例,方便直接套用。
Mtoa arnoldAOVChildSelector注册失败
2018.02.01Mtoa 提示 arnoldAOVChildSelector 注册失败,通常是因为 Maya 的首选渲染图层设置仍为传统 Render Layers,导致无法注册面向新 Render Setup 的内容。如果项目并未使用 Render Setup,这个错误可以安全忽略。
NUKE 重打光节点(Relighting Nodes)
2018.02.01用 Nuke API 实现三套重打光节点(Diffuse/Specular/Rim),依赖 Normal、World Position、Eye pass,可做 Phong/Blinn 高光与 Rim NdotEYE。
修改默认的Mtoa渲染设置及Drivers
2018.02.01想让 Mtoa 每次启动都自动套用你偏好的渲染设置?利用 hooks.py 里的钩子函数,在 userSetup.py 中重写 setupOptions 和 setupDriver,就能把 AA 采样、伽马值、光线深度等参数固定下来,还能默认开启 Merge AOVs。省去重复调整的麻烦,适合需要统一渲染配置的团队。
windows7上编译Pixar USD
2017.11.10在 Windows 7 上编译 Pixar USD 的完整过程,从安装 Visual Studio、Python 等必备工具,到获取源码、修正编译脚本,再到配置 Maya 插件所需的环境变量,每一步都有清晰指引。
MtoA Relative paths for standins
2017.11.01在 MtoA 里给 Standin 指定路径时,直接用 /Dog.ass 这种相对路径就可以,它会基于项目目录或者 Procedural Search Path 来解析。
Version-up script for Clarisse (Nuke Style)
2017.10.26一个模仿 Nuke 版本递增习惯的 Clarisse Python 脚本,能自动识别工程文件名里的 v 数字并保存下一个版本。
Yeti and UDIM
2017.10.23在 Yeti 里加载 Mari 的 UDIM 贴图,纹理路径用 <UDIM> 占位符即可。U 坐标保持原样,但 V 坐标需要换成 ($t)+1-($t-floor($t)),否则 UDIM 编号超过 1001 时会出现意料之外的结果。
WindowBox Shader
2017.10.18Julius Ihle 的 WindowBox Shader 用一张贴图在平面上模拟室内透视,完美匹配相机,特别适合大型城市场景。它不参与光照反射计算,能大幅减少模型和渲染压力,支持 PRman、V-Ray、Arnold 和 Blender,是一种高效的 Interior Mapping 实现。
OctaneRender for Maya Bubble Shader
2017.09.08在 Maya 中利用 OctaneRender 3.06.4 制作气泡着色器时,发现可以直接在渲染相机上叠加特效与调色,跳过了后期合成,流程非常轻快。
maya2011及以上安装时候可能遇到的问题
2017.09.02有时候破解 Maya 不小心搞错了步骤,再打开就看不到激活窗口,只弹出一个 License was not obtained 的报错。这时候别慌,去 Windows 服务里把 FLEXnet licensing service 停掉,删掉 C:\ProgramData\FLEXnet 文件夹,再启动服务,一般就能恢复正常。
用于基于纹理的面部动画的可扩展 Blendshape 系统
2017.08.01Animal Logic 在《乐高蝙蝠侠大电影》中实践了一套按需生成 blendshape 的面部动画方案,把曲线控制顶点与切线的增量绑定到 blend weight,将动画曲线数量从数千条压缩到数百条,同时保持动画师熟悉的曲线雕刻手感。
《乐高蝙蝠侠大电影》:图形化分解编辑——优化装配工作流
2017.07.29Animal Logic 在《乐高蝙蝠侠大电影》里把镜头分解编辑做成了图形化工具 Assembly Studio。它用类似网购的拖拽购物车,让艺术家批量分配角色、道具,还能顺带复制动画曲线和布景配置。内嵌 RV 后,审阅和编辑直接联动,大规模装配的效率上去了,连续性问题也少了很多。这套思路现在已经是所有新项目的标配。
MtoA2.0使用osl
2017.04.16Arnold 5.0 开始支持 OSL,MtoA 2.0 也同步跟进了。设置一个环境变量 ARNOLD_PLUGIN_PATH 指向 OSL 目录,把 .osl 或 .oso 文件放进去,Maya 启动后自动编译,Hypershade 里就能直接使用这些节点。
Katana启动加载渲染器批处理脚本
2017.01.12一个用于启动 Katana 并加载多个渲染器插件的批处理脚本,设置 KATANA_RESOURCES 和 DEFAULT_RENDERER 等环境变量来管理启动资源,同时演示了如何集成 3Delight、V-Ray、Multiverse 和 Deadline 等工具。
Arnold for maya设置per-light AOVs和per-Shadow AOVs
2016.11.17记录一个在Maya中为Arnold设置逐灯光AOV和逐阴影AOV的实用流程。创建对应的light_group与shadow_group AOV,再给每盏灯的Shape节点添加mtoa_constant属性并指定不同ID,就能在合成阶段灵活控制各灯光的贡献。注意该方法适用于Arnold 4及更早版本,并需要提前安装alshader。
V-Ray alsurface shader
2016.09.23V-Ray 用户现在也能用上 alSurface 了。ChaosGroup 放出了 v0.2b-alpha 版本,基于 Anders Langlands 的开源着色器编译,还在持续更新。这个着色器在 Arnold 那边已经相当成熟,免费又好用,很多工作室都在用。目前 V-Ray 版还缺折射支持,但值得关注。
TACTIC CG项目管理系统
2016.09.16Tactic 是一套开源的数字资产管理系统,在广告、电影或游戏项目中能用来搭建自己的制作管线。它不像 Shotgun 或 Ftrack 那样开箱即用,需要花时间定制软件接口和目录规则,但对预算有限的小团队来说是个很实际的替代方案。安装后就能直接上手,内置了游戏和视效项目模板,可以按镜头、资产创建任务并分配,再工作流管理先后顺序。
MAYA2016以上版本Hypershade切换为旧版本模式
2016.09.13Maya 2016 之后的 Hypershade 默认节点视图对老用户不太友好,还更吃资源。设置环境变量 MAYA_ENABLE_LEGACY_HYPERSHADE=1 并配合一段 MEL 命令,就能把 Work Area 和经典布局找回来。
FStormRender初测
2016.09.06FStormRender 目前仅支持 3ds Max,参数极简,内置 LUT 功能,上手比 OctaneRender 更快。用一张 GTX580 实测半小时得到 1080p 图像,速度与 Octane 接近,但缺少 AOV 和体积效果,暂时还接不了商业项目。
Unreal Engine 4使用IBL
2016.09.04在 Unreal Engine 4 里启用基于图像的照明,能快速为场景带来更自然的反射与环境光。这里记录了几张实际效果截图,供参考比对。
Octane渲染测试
2016.09.02随手跑了几张 Octane 的渲染测试,1920 分辨率加上运动模糊,基本都在 10 秒内出图,响应速度确实快。
maya vray渲染细分工具
2016.08.17一个Maya V-Ray 渲染用的细分小工具,MEL 脚本写了个简单面板,选好最大细分值点一下 apply,就能给场景里选中的模型批量加上 vray_subdivision 和 vray_subquality 那套属性。
Cryptomatte tools
2016.08.102015 年 SIGGRAPH 上,Psyop 的 Jonah Friedman 和 Andy Jones 分享了 Cryptomatte,一种自动分配 ID 并完美处理运动模糊、景深和透明度的方案。现在 Nuke 工具已经可以下载,AlShaders 也集成了该功能,能直接输出 crypto_asset、crypto_material、crypto_object 三种 ID,数量不受限制。在 Nuke 里,一个 Cryptomatte 节点就能点选或输入名称来选取和减选,还能快速生成所有或所选 ID 的遮罩,用起来相当顺手。
Pixar USD公布原代码
2016.08.07Pixar 把自家场景描述框架 USD 的源码放到了 GitHub 上,对大型复杂场景管线感兴趣的话,可以直接拉下来编译体验。
一窥 Animal Logic:Glimpse 渲染器
2016.03.31Animal Logic 的内部渲染器 Glimpse 最初只是灯光主管 Max Liani 为快速预览灯光而写的工具,如今已成长为支撑《乐高大电影》等动画长片的制作级路径追踪器。它强调简单易用,让艺术家无需纠结采样调优,只需关注创作本身。从 2011 年的灰模预览到全公司统一的视口内渲染,Glimpse 的发展历程折射出一家工作室从服务走向原创的技术自觉。
Arnold创建light passes
2016.03.23在 Arnold 里用 alshader 做 light passes 很方便,它的 AOV 预设了 light_group。添加 light_group AOV 后,给灯光的 Shape 节点加上 mtoa_constant_lightGroup 属性,让值与 AOV 编号对应,就能渲染出独立的灯光通道。
Arnold MatCap Shader
2015.11.24在 Arnold 里折腾 MatCap 听起来有点多余,但偶尔为了统一镜头或者做点卡通风格的效果,用简单的法线方法就能搞定,而且渲染飞快,丢给合成也省事。
VRay PBR Shader
2015.10.24分享一个基于 VRayMtl 的 PBR 着色器设置,把原本分散的 diffuse 与 reflection 属性合并为 diffuse、gloss、metalness、specular 四个滑块,对塑料、金属和粗糙表面更友好。已内置伽马校正,反射采用 GGX,菲涅尔曲线为固定近似,需要时可替换更精确的曲线。
Atom as Python Editor for Maya
2015.09.24用 Atom 写 Maya Python 脚本比在内置编辑器里敲代码顺手得多。安装对应的扩展包,再在 userSetup.py 里加一行 commandPort,就能把代码直接发到 Maya 里运行,调试起来很流畅。
清除MAYA被锁定的未知节点
2015.08.24在清理 Maya 场景时,常会遇到被锁定的未知节点无法直接删除。这里有两段 MEL 脚本,一段基于当前选择手动清除,另一段自动遍历场景中所有未知节点并解锁删除。
Multi Color ID for Nuke
2015.08.21一个在Nuke里快速提取V-Ray Render ID和Object ID的小工具,顺带输出coverage通道来解决边缘锯齿问题。
VRay GGX材质实例:更写实的高光
2015.08.17Neil Blevins 用手机实拍与 V-Ray 渲染对比,演示了 GGX 着色器如何产生更写实的金属高光。相比传统的 Ward 或 Blinn,GGX 能呈现中心锐利、衰减绵长的反射,配合 Glossiness 与 Tail 参数可精细控制高光形态。
GGX Shader for Vray
2015.08.16Vray 3.1 带来的 GGX 着色器,让反射表现上了一个台阶。它基于微表面模型,相比传统的 Phong 或 Blinn,高光峰更锐利、拖尾更长,同等光泽度下细节丰富得多。从各向异性到复杂 HDR 场景,GGX 都能给出很漂亮的表面反射。记住它是个纯反射的 BRDF 模型,不涉及折射。
Python scripts for Subdivision and Texture Input Gamma in Vray for Maya
2015.08.12V-Ray for Maya 用户经常需要批量设置纹理 Gamma 和细分属性。这里有两个现成的 Python 脚本,选中节点后运行,就能自动添加对应的 V-Ray 属性,省去手动调整的麻烦。
Vray Render Elements UV and Point Position
2015.08.12Vray for Maya 一直没有内置的 UV 和点位置渲染元素,而 3ds Max 早已支持。这里提供两段脚本, ExtraTex 配合 samplerInfo 节点,快速输出 UV 和世界坐标通道,方便后期合成使用。
katana本地批量渲染命令
2015.07.22在 Katana 里跑本地批量渲染,命令行其实就几个关键参数:场景文件路径、帧范围、渲染节点名,以及想分给渲染的线程数。一条典型的命令把这些串起来,就能让 Katana 在后台默默把序列吐出来。
Russian Roulette sampling
2015.06.28alSurface 着色器为 Arnold 引入的 Russian Roulette 采样,会在每次光线交互时随机决定计算反射还是折射,而不是两者都算。一个仅靠门窗进光的室内场景测试里,渲染时间直接从 131 分钟降到 59 分钟,画面质量几乎看不出差别。对于玻璃这类材质,这种策略能明显提速,且不需要牺牲效果。
Maya Mental ray 分布式渲染
2015.06.23有人问到 Maya mental ray 分布式渲染的做法,我把配置要点记了下来。需要单独安装 Satellite,确保版本对应,然后开启服务、统一端口,最后在 maya.rayhosts 里填入渲染节点信息。
关于MAYA RenderLayer批渲报错
2015.03.23Maya批渲染时如果遇到RenderLayer切换报错,提示引用场景中存在缺失节点的覆盖,可以尝试执行 fixRenderLayerOutAdjustmentErrors 命令快速修复。
Auto UdimName
2015.02.25一段在 Maya 里自动处理 UDIM 纹理路径的小脚本,把文件节点里的具体编号替换成 udim 占位符,并顺手修正项目路径。对 Arnold 和 V-Ray 的大小写差异也做了区分。
maya2013 mental ray使用内置的IBL
2015.02.23Maya 2013 的 mental ray 内置 IBL 依然是个很实用的方案,配合几行脚本就能保证 BSDF 计算正确。使用 mia_material 时留意一下设置,可以有效减少噪点,mentalrayIblShape 里也记得关掉 light emission。
Arnold ass Dso
2014.11.24在 Arnold 的 .ass 场景描述文件里直接嵌套另一个 .ass 或其他格式的文件,这个小技巧能简化一些流程上的引用管理。
新流程
2014.09.22分享了一个更新后的工作流程截图,供同行参考管线调整思路。
Katana GroupStack Node
2014.06.21Katana 的 GroupStack 节点用法示意,附节点图供参考。
Point-Based Ambient Occlusion
2012.11.29在 3Delight 里用点云烘焙实现环境光遮蔽,渲染快且平滑。记录从 ptc_write 烘焙到 ptc_occlusion 渲染的完整步骤,调整 maxsolidanglevalue 能让遮蔽更柔和,maxdistvalue 控制衰减范围。
Katana基础入门
2012.09.24想用 Katana 跑通第一个渲染,场景里光有模型和灯光还不够。这篇入门笔记从搭建几何体、摄像机和灯光开始,用 Merge 节点把它们合到一起,再配上 RenderSettings 和 Arnold 渲染器,最后 MaterialAssign 给茶壶和灯光指定材质,一步步得到一个带阴影的渲染结果。