You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Nuke制作带缩放动画视频时如何将背景黑框设置为alpha值0的透明状态

Nuke 缩放动画背景透明调整方案

要实现缩放动画的背景透明效果,需要对你的代码做3处核心修改:

  • 给无alpha通道的JPEG素材添加值为1的不透明alpha通道
  • 调整Transform节点的填充规则,避免空白区域被默认填充黑色
  • 修改输出编码为支持alpha通道的格式,普通H.264编码的MOV默认不存储alpha信息

修改后的完整可运行代码如下:

import nuke

projset = nuke.Root()
projset["format"].setValue("HD_1080")
# 开启项目全局alpha通道支持
projset["alpha_channel"].setValue("alpha")

content = nuke.createNode("Read")
content["file"].fromUserText("input.jpeg")

# 新增:给JPEG素材添加纯白alpha通道
add_alpha = nuke.nodes.AddAlpha()
add_alpha.setInput(0, content)

result = nuke.nodes.Transform()
result.setInput(0, add_alpha)
# 新增:设置Transform空白区域不填充黑色,保留透明
result["black_outside"].setValue(False)

result["center"].setValue(result.width() / 2, 0)
result["center"].setValue(result.height() / 2, 1)

scale = result["scale"]
scale.setAnimated()
for value, time in (
    (0, 0),
    (1, 20),
    (1, 40),
    (0, 60),
):
    scale.setValue(value, time=time)

output = nuke.nodes.Write(file="output.mov")
output.setInput(0, result)
# 新增:设置输出编码为ProRes 4444 支持alpha通道
output["file_type"].setValue("mov")
output["format"].setValue("Apple ProRes 4444")
# 开启alpha通道输出
output["alpha"].setValue(True)

nuke.render(output)

注意:如果你的后期流程不需要MOV封装,也可以将输出格式改为PNG序列,天然支持透明通道,兼容性更强。

内容的提问来源于stack exchange,提问作者shpindler

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.04 19:27:01