问题标签 [nuke]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
python - 在 Hiero 中运行 Python 插件
我在执行来自 Hiero 的定制 python 代码时遇到了一个小问题。众所周知,首先要查找详细信息的地方是官方文档“Nukepedia”、Python 开发指南和 Hiero 用户指南。根据 Python 开发指南,Hiero 默认创建一个“.hiero”目录,允许人们添加插件路径以在软件中使用它们。好吧,我找不到那个目录,经过几次测试,我推断 Hiero 正在使用保存在“.nuke”目录中的 init.py。
所以我想也许我可以在那里添加插件路径,但不断收到著名的 _fnpython 模块导入错误(在创建 Python/Startup 目录之前)。
我在 .nuke 中添加了 Python/Startup 文件夹并在 Startup 中添加了插件,我得到了同样的错误,我什至通过在 init.py 中添加插件的路径来尝试它,也得到了同样的错误。
然后我创建了一个“.hiero”文件夹并做了和以前一样的事情,但是 Hiero 从来没有考虑过这个文件夹,我推断通过在控制台中打印一些字符串,Hiero 总是使用保存在“.nuke”中的 init.py文件夹并一直显示相同的错误。
最后,我尝试查看安装过程并尝试将 Nuke 和 Hiero 的文件夹分开,这可能会创建“.hiero”目录,但一切都是自动化的。
我想运行的代码由 Nuke 和 Hiero 给出(在示例目录中),我只是不知道要从程序中运行它要做什么。
我应该怎么做才能解决这个问题?
先感谢您。
nuke - 通过chrome打开nuke软件?
如何通过浏览器打开桌面应用程序(如 Nuke)。
例如:RV 软件有一个 url 协议。我们可以使用它(rvlink://)。
python - 节点创建覆盖导致错误
当我使用 The Foundry NUKE 时,我一直在尝试学习一些 Python 来改进我的工作流程。我一直在进行各种覆盖,以在创建时更改节点。其中一个是StickyNote
我之前有过这个覆盖:
它给了我预期的结果,但后来我试图让它在创建时清除标签为空。
所以我在底部添加了这一行:
并且它没有将标签的值设置为空。
所以我把它改了一下:
现在这个脚本创建了具有预期值设置的节点,但对我来说,它创建了 200 个节点,直到它出错。menu.py
所有这些都在我的文件底部被解决/调用:
我正在寻找一些帮助来找出在创建时将标签添加为空的方法。
谢谢,希望这是可以理解的。
python - UnboundLocalError:分配前引用的局部变量“readlgt”
我正在使用 Foundry Nuke,我遇到了这个问题:
这是我的程序:
python - 如何将写入节点附加到读取节点?
好吧,我刚刚开始接触 Nuke 的 API。在这里我导入镜头:
选择素材(并存储在变量中):
当我将它通过管道传输到 Write 节点时,它不起作用:
虽然我创建了一个写入节点,但它没有连接到读取节点。我希望它能够连接。函数不选择非 GUI模式下的toNode()
节点吗?
python - 为什么 Read() 在 CLI 模式下不读取帧范围?
这是我的脚本:
我基本上是在阅读视频并写出图像序列。
问题是,这个脚本渲染了 1 帧 91 次,预计会渲染 91 个不同的帧。
当我试图调查时,我发现问题出在读取节点上。我发现帧范围设置为1 - 1。我必须手动设置帧范围吗?因为当我在 GUI 上读取相同的视频文件时,帧范围设置正确。这表明 GUI 取决于元数据,而我的脚本可能不是?
如何摆脱手动设置帧范围?
python - 如何从 Maya 中启动 Nuke?
我似乎在这里做了一些不正当的事情,我对它是什么感到目瞪口呆。我正在尝试从 Maya 中启动 The Foundry NUKE,当我尝试时,我收到与未找到模块有关的错误。但是,如果我在常规命令行上加载 Nuke,它会加载得非常好。似乎与 Maya 的 Python 解释器无法找到该模块有关?我好像找不到...
更新#1:我什至尝试在所有这些无济于事之前做一些 Nuke 插件、DLL、lib 和包含目录的 sys.path.appends...
更新#2:我重新安装了我的 Python 并验证它是 64 位的。还检查了我的 64 位 Maya 和 Nuke 版本。我也尝试了以下方法...在 Maya 之外打开一个普通的 Python 命令提示符,以通过 os.system 调用加载 Nuke,它可以工作。只有在 Maya 中执行 Nuke 的 os.system 调用时,它才会因导入此 _socket 模块的问题而失败。在检查 Maya 正在加载的 _socket 模块时,我得到:
让我相信 Maya 的 Python 正在加载这个 _socket 的差异版本,然后 Nuke 是什么,那里出了点问题。
原始代码/错误:
python - 试图将 nukescripts.PythonPanel 嵌入到 PyQt 设计的面板中
我在 The Foundry NUKE 中创建了 2 个面板。一个是使用PyQt
设计器,另一个是使用nukescripts.PythonPanel
. 现在我正在尝试嵌入nukescripts.PythonPanel
设计的PyQt
面板。
如果您运行第一个模块(测试),您将在面板中看到 2 个选项卡,第一个选项卡中有 Qt 小部件。我正在尝试将第二个模块(test2)面板嵌入到第二个选项卡中。
请找到以下模块进行测试。测试 - pyqt 设计的面板。测试 2 - nukescripts.PythonPanel
测试 -
测试2-
python - 如何在 Foundry Nuke 中获取项目尺寸?
我正在尝试获取项目的尺寸(format
),在外行术语中,项目的高度和宽度用于进一步处理。在阅读有关 Nuke Python 开发人员指南的Formats 文档时,我发现要获取项目的宽度和高度,必须选择脚本中的任何节点,例如
但这会对节点图产生一些不利影响。Gizmo 连接到 Viewer1,即使我附加nuke.toNode("Viewer1").setSelected(False)
到上述行的末尾。
如果您想查看整个脚本,这里是代码。
这个整体过程看起来很糟糕。我做错了什么吗?可能的解决方法是什么?
python - Foundry Nuke 的 Reformat 节点问题
作为我的核弹项目的一部分,我想跟踪我的镜头并将 CG 元素添加到其中。为此,我对素材进行了不失真处理并将其写入磁盘以加快处理速度。然而,当我试图重新扭曲书面素材(如附图所示)时,它并没有给我原始素材。我发现Reformat5
andReformat7
并没有给我相同的边界框尺寸,即使两个节点是相同的。
我的原始素材大小是 1920*1080。不失真后变成1928*1085。
因此,我放置了一个Reformat4
尺寸为 1928*1085 的节点并将其写入磁盘。在左侧,我再次放置重新格式化节点,将未失真的素材调整回 1920*1080,并保留大小为 1928*1085 的边界框,以便执行镜头失真以恢复我的原始素材。
它在左侧工作正常,但如果我在我的书面素材上做同样的事情,边界框尺寸就不一样了。
Reformat7
给出大小为 1924*1083 而不是 1928*1085 的边界框。我在这里想念什么?我在网上搜索,但找不到任何解决方案。请对这个问题有所了解。
我的核弹脚本如下: