Loading... # Nuke 3D 合成流程笔记:从 CameraTrack、Card 到模型融合 在 Nuke 中完成一个包含实拍背景、Camera Tracking、Card、3D 模型以及前景遮挡的综合合成时,最大的难点并不是某一个节点的使用,而是理解**2D 合成、3D 空间和渲染输出之间的关系**。 这篇笔记记录一次完整的 Nuke 3D 合成流程,并整理过程中遇到的问题与解决思路。 --- # 1. Nuke 3D 合成的基本逻辑 Nuke 的 3D 系统与 Blender、C4D 等三维软件最大的区别是: > Nuke 的 3D 更多服务于合成,而不是建模和渲染。 它主要用于: * 摄像机反求(Matchmove) * 将 2D 元素放入真实空间 * 添加简单 3D 模型 * 制作空间遮挡关系 * 辅助视觉效果合成 一个典型流程: ``` 实拍素材 ↓ CameraTracker ↓ Solve Camera ↓ Create Camera ↓ 建立3D空间 ↓ 添加Card / Model ↓ ScanlineRender ↓ 2D Merge合成 ``` --- # 2. CameraTracker:从二维画面恢复三维空间 ## 2.1 Track 与 Solve CameraTracker 的流程: ``` Track ↓ Solve ↓ Create Camera ``` 其中: ### Track 寻找画面中的特征点。 好的跟踪点通常具有: * 高对比度 * 纹理丰富 * 不会移动 * 不容易被遮挡 例如: ✅ 墙面纹理 ✅ 窗框边缘 ✅ 地面纹理** ** 不推荐: ❌ 人物 ❌ 树叶 ❌ 反光玻璃 ❌ 移动物体 --- ## 2.2 Solve Error Solve 后会得到误差值。 一般来说: * < 1:比较理想 * 1~2:通常可以接受 * 更高:需要检查点质量 但不能只看数字。 实际判断标准: > 创建 Camera 后,3D 点是否稳定跟随真实画面。 --- # 3. Create Camera 与 3D 空间建立 Solve 完成后: ``` CameraTracker ↓ Create Camera ``` 生成: * Camera * 3D Points 这个 Camera 是整个三维合成的核心。 之后: * Card * 模型 * Axis 都应该围绕这个 Camera 工作。 --- # 4. Axis:三维空间中的定位点 在 Nuke 中,Axis 可以理解为: > 一个没有几何形态的三维空节点。 它包含: * Position * Rotation * Scale 但是: * 不会被渲染 * 不会出现在最终画面 用途: * 定位模型 * 建立父子关系 * 作为空间参考 例如: ``` CameraTracker Point ↓ Axis ↓ TransformGeo ↓ Model ``` --- # 5. Card 的作用:建立空间平面 Card 本质上是: > 一个带贴图能力的 3D 平面。 常见用途: * 放置背景元素 * 制作墙面 * 制作地面 * 投射图片 例如: ``` Camera | Card | ScanlineRender ``` --- ## Card 的重要理解 Card 不是普通图片。 它具有: * 三维位置 * 旋转 * 深度关系 所以它可以: * 被模型遮挡 * 随摄像机运动 * 参与空间合成 --- # 6. 3D 模型导入 Nuke 常见格式: * OBJ * FBX * Alembic OBJ 是比较常用的交换格式。 流程: ``` ReadGeo ↓ Scene ↓ ScanlineRender ``` --- # 7. 模型为什么导入后是黑色? 这是 Nuke 初学者最常遇到的问题。 原因通常是: 模型只有: * Geometry(几何) 但是缺少: * Material(材质) * Texture(贴图) * Light(光照) 所以渲染结果可能: * 黑色 * 无颜色 * 没有细节 --- # 8. Nuke 中的材质逻辑 Nuke 的材质系统和 Blender 不同。 Nuke 不负责完整 PBR 渲染。 它主要支持: * BasicMaterial * Phong 等基础材质 常见流程: ``` ReadGeo \ Scene / BasicMaterial ``` 材质通过 Scene 分配给几何。 --- ## 贴图 贴图通常连接: ``` Read(Texture) ↓ BasicMaterial mapS ``` 其中: * mapS:颜色贴图 * mapE:自发光 * mapT:透明 * mapU:法线等辅助信息 --- # 9. 模型贴图错位的问题 如果: * 模型存在 * 材质存在 * 但是贴图位置错误 大概率是: ## UV 问题 原因: * UV 没导出 * UV 展开方式不兼容 * 多材质模型 * UDIM 不支持 * Blender/C4D 自动处理,但 Nuke 不会 解决: 在 Blender 中重新处理: ``` 编辑模式 ↓ 全选 ↓ UV智能展开 ↓ 重新导出OBJ ``` 确保: * 包含 UV * 包含贴图坐标 --- # 10. Scene 与 ScanlineRender Scene 是 Nuke 3D 世界的容器。 它可以包含: * Camera * Card * Geometry * Light * Axis 例如: ``` Camera | Card | Model | Light | Scene | ScanlineRender ``` --- ScanlineRender 的作用: > 把 3D 世界转换成 2D 图像。 也就是: ``` 3D ↓ ScanlineRender ↓ RGBA图像 ``` 之后才能: * Merge * Roto * Defocus --- # 11. Alpha 与合成问题 在 Nuke 中: RGB 和 Alpha 是两个独立概念。 经常出现: > 看得到颜色,但是 Merge 后消失。 原因: 可能: * Alpha 为 0 * 通道错误 * Merge 使用 Over 时被覆盖 检查: Viewer 切换: ``` RGB Alpha ``` 分别查看。 --- # 12. Roto 与遮挡关系 例如: 需求: > 模型只显示在窗户里面。 不要修改 Scene。 因为: * Scene 管空间 * Roto 管画面区域 正确: ``` 模型 ↓ ScanlineRender ↓ Merge ↓ 背景 ``` Roto 作为 Mask: ``` Roto(Window) ↓ Merge Mask ``` 结果: 模型只在窗户区域出现。 --- # 13. 人物遮挡模型 如果: 人物在前景,需要挡住模型: 流程: ``` 背景 ↓ 模型 ↓ 人物Roto ↓ 最终Merge ``` 核心思想: > 把人物从背景中分离出来,重新放回合成层级中。 例如: ``` 模型 + 背景 ↓ Merge ↓ 人物Roto层 ↓ 最终画面 ``` --- # 14. 远景模糊与景深 真实摄影中: 远处物体通常有景深虚化。 Nuke 有两种方法。 --- ## 方法1:Defocus 简单: ``` 房子层 ↓ Defocus ``` 适合: * 独立远景层 --- ## 方法2:ZDefocus 更真实: ``` ScanlineRender ↓ 输出Z ↓ ZDefocus ``` 利用深度信息控制: * 哪些地方清晰 * 哪些地方模糊 --- # 15. 最终输出 Nuke 使用: ``` Write ``` 导出。 推荐: ## EXR 序列 例如: ``` shot_comp_%04d.exr ``` 优点: * 保留高质量 * 支持 Alpha * 后期方便 如果需要视频: 可以: EXR序列 → Premiere / Resolve → 输出视频 --- # 16. 一个完整的 Nuke 3D 合成节点结构参考 ``` CameraTracker | Create Camera | Camera | ------------------------ | | Card ReadGeo | | | Material | | -----------Scene-------- | ScanlineRender | ZDefocus | Merge | Roto Mask | Final | Write ``` --- # 17. 最重要的经验总结 ## 1. 空间问题和画面问题要分开 空间: * Camera * Axis * Card * TransformGeo * Scene 画面: * Roto * Merge * Mask * Defocus --- ## 2. 模型出现 ≠ 合成完成 真正可信的 3D 合成需要: * 正确空间位置 * 正确遮挡 * 正确光照 * 合理景深 --- ## 3. Nuke 不是 Blender 不要期待: * 完整 PBR * 自动材质转换 * 自动 UV 修复 Nuke 更像: > “把三维元素放进真实摄影画面里的工具。” --- # 结语 这次完整流程最大的收获并不是记住某几个节点,而是建立了一套 Nuke 3D 合成的思维: **先建立真实空间,再加入元素;先解决空间关系,再处理画面效果。** 当 Camera、Scene、Alpha、Roto、Merge 之间的关系理顺后,Nuke 的 3D 合成就不再是“调参数”,而是一套可以预测结果的流程。::: 最后修改:2026 年 08 月 23 日 © 允许规范转载 打赏 赞赏作者 支付宝微信 赞 1 如果愿意的话...或许可以请我喝杯奶茶。