问题标签 [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 - Nuke中python中的动态像素采样问题
作为一个练习,我最近开始编写一个在 2 个几何图形之间生成闪电的小工具。到目前为止,我成功地使用通过 python 脚本创建的动态表达式创建了与地理相关的随机数量的闪电。
我想在每个闪电的接触处添加一些分支,我发现最快的方法是使用粒子系统在目标地理上传播点。使用图像处理和位置传递,我能够快速提取靠近闪电接触点的点。
现在除了在每个帧上运行一个小脚本以将隔离点位置和索引放在每个帧的列表中之外,我没有其他解决方案。
在 python 脚本中循环采样像素时,我经常遇到同样的问题。使用nuke.frame()时框架不会更新。
这是我正在处理的脚本:
PosC 应该为每个帧存储不同的值,但它只存储每个帧的第一帧的值。
有没有人有解决方法或这个?
或者有没有人知道使用 python 以外的东西来存储非零像素(例如在线)的方法?
谢谢
c++ - Foundry Nuke NDK:3d 到 2d 相机投影
我正在努力使用 Nuke NDK 计算从 3d 到 2d 渲染相机的准确投影点。我有一个动态的数据量(对于下面的测试,我只是使用一个恒定的 8 个点),我正在计算这些数据,因此为此目的将协调节点打包在一个小工具中似乎是不切实际的。
我一直在尝试效仿这个nukescripts.snap3d.projectpoint
例子,但到目前为止,我已经很不满意了。
我得到的数据示例:
通过Reconcile3d
节点的数据:
谁能看到我在数学上失败的地方。我没想到会遇到这些问题,但仅仅在这些预测上就被困了将近 2 天。谢谢。
python - Python Nuke - 如何使用另一个函数的变量结果
我在返回函数时遇到了一些麻烦。我想创建一个 Nuke 脚本,询问用户一个目录,并自动在写入节点中使用当前日期、小时等设置该目录的路径。这部分非常简单(这是DateWrite()
提供的代码中的函数)
现在,我想在渲染完成后打开这个目录。所以我必须使用回调并调用一个打开给定目录的函数。
这是我遇到麻烦的地方:由于目录是在第一个函数中设置的,所以我尝试使用return
.
它有效,但它迫使我使用第一个函数两次(这部分是openDirectoryAfterRender()
函数)
我对 Python 和一般代码都很陌生,所以这可能是一个菜鸟问题。我尝试了很多不同的解决方案,这个是我能得到的最接近我想要的解决方案。
非常感谢 !
python - Nuke Viewer 设置帧范围问题
我正在 Nuke10 中编写时间线同步脚本。我应该更改全局框架设置。例子:
之后,我应该更改查看器播放范围。例子:
分开它的工作。但在一起 - 不是。一开始我有全局帧范围1-10。当我运行所有这些行时 - 帧范围设置为 1-100,但播放范围设置为 5-10。
我在脚本中间添加命令来检查播放范围:
这是打印:
我认为问题在于,在脚本完成运行之前,查看器中的数据不会更新。
如何强制 nuke 刷新查看器?
或者可能有命令等待完成之前命令的更新?
或者可能需要在查看器中指定帧范围?
python - 我尝试在 nuke 脚本编辑中使用 Kivy,但它显示“根本找不到任何有价值的文本提供程序”
这是我的环境设置
它总是说
当我输入
核弹刚刚关闭
这些代码在我的 Pycharm 中运行良好。你以前见过这个问题吗?Nuke 脚本编辑是否对查找 env 有任何特殊规则?
python - 如何在 Nuke 中通过 Python 选择数组中的节点?
我想选择createdNodes[]
在 The Foundry Nuke 脚本中创建的所有节点。
谁能帮我?
python - 如何通过 Python 更新 NUKE 中的 nuke.frame() 值?
我想使用if...else
条件语句自动播放和停止 The Foundry NUKE 中的序列。我可以轻松地开始播放序列,但我无法停止。问题是值nuke.frame()
不更新。如果有人对此问题有任何经验,请帮助我。
这是一个代码:
python - 提取代码以在回调中对其进行本地化
这是我在这里的第一篇文章,所以如果我做错了,请告诉我。我尝试寻找现有的答案,但不确定要搜索什么。
考虑以下简单示例,一个名为的 python 模块mymath.py
仅使用内置的 python 操作和模块。这个自定义模块是可移植的,因此任何人都可以执行代码,而无需安装除了股票 python 之外的任何东西。
请注意,main()
只有 callsum_series()
反过来调用plus()
. 在这个虚构的代码库的其他地方可能需要其他函数,但我们只关心main()
.
现在,我只想将相关的源代码作为文本字符串复制到另一个对象。换句话说,收集main()
及其所有依赖项(递归),产生一串可执行代码。
我目前的解决方案:
这是可行的,将模块的本地副本作为字符串生成,main()
无需导入mymath
. 问题是knob
现在所有额外未使用的功能都变得臃肿,尽管它能够mymath.py
通过重新运行我当前的解决方案来获取我所做的任何更改。
所以,问题是 - 有没有办法做相当于:
导致源 =
所以,基本上“源代码”现在只包含相关代码并且是可移植的,不再需要人们在异地安装 mymath。
如果您好奇,我的真实案例涉及使用 The Foundry Nuke(合成应用程序),它有一个内部回调系统,可以在knob
(属性)上触发回调事件时运行代码。我希望能够与异地客户共享这些保存的 Nuke 文件(.nk
或.nknc
),而不需要他们修改他们的系统。
python - Python for Nuke:在当前节点之前选择节点
如何在当前选择的节点之前通过 python 选择一个节点?
例如,我想在所有“Write”节点之前添加一个“Clamp”节点。