创建视觉效果
介绍
作为一名 VFX 艺术家,探索各种工具成为一种生活方式。最近,一个项目让我深入研究 PopcornFX,这是一种粒子系统,可以作为中间件嵌入游戏引擎和应用程序中。例如,PKFX 有 Unreal、Unity 和 After Effects 的插件,并嵌入到 iClone 和 Substance Painter 等中。
我从早期就知道它,但认为它只是一个基于脚本的基本工具,工程师比艺术家更感兴趣。我大错特错了。
我很高兴地发现,尽管这个粒子系统具有普遍性、适用于任何地方的性质,但它非常复杂。我特别欣赏它基于节点的可视化脚本、制作精良的独立编辑器及其用于监控性能和数据流的高级工具集,以及 PKFX 的整体深度功能。
在工作流程中使用胡克定律
作为 Houdini 和前 ICE 用户,我感到宾至如归,坦率地说,我对创建复杂效果的速度感到惊讶。最新版本展示了 6 路光照贴图、视差光线行进、先进的 GPU 支持等技术。SPH 流体甚至可能即将出现。
请记住,这是实时的。以一种与管道和平台无关的形式。
为了与社区分享我的一些探索,让我们根据胡克定律创建一个自定义弹簧力。简而言之,胡克定律指出,随着弹簧的伸展,抵抗它的力会增加。因此,它是一种寻求平衡或静止状态的恢复力。
以最简单的形式写出,因为它与我们有关:F = -kx,其中 F 和 x 是向量,k 是表示弹簧系数(或弹性程度)的标量值。
向量 x 是弹簧从其静止状态的位移:x rest – x current。
图示为节点,该图非常小:
是的,它真的只有 3 个节点。PopcornFX 的物理节点处理所有集成,因此自定义力实际上只需要艺术家将他们的想法或公式转换为节点并将它们插入物理“加速”输入中。
(请注意,节点下方是每个节点计算所需时间的运行记录。PKFX 在实时运行时不断提供有关效果效率的信息,并具有各种显示以反馈每个节点的性能和功能影响。)
我选择胡克定律来说明,因为在我看来,它是最优雅的力量——非常简单,但能够产生美丽的动作:
以下是用于此效果的整个图表:
左上角将生成的粒子排列成一条线。这些生成位置(在框内绘制的点)然后由左下角的蓝色节点移动(蓝色表示它是一个模板,我之前制作并保存为预设工具的图形)。计算弹簧力,向其添加重力,并将结果输入蓝色物理节点。然后用棕色节点绘制结果——初始位置周围的框,计算出的弹簧结果是一个大点,在两者之间画一条线。
粗黄线表示图中的区域,其中每帧将演化数据存储为一个新值。在这种情况下,前一帧的结果位置。
胡克定律对视觉特效艺术家来说当然有多种方便,可用于构建复杂的弹性结构和动态系统。但即使是最基本的形式,它也很有用且易于实现。例如,这里是 Unity 中基本弹簧力效果的等效实现,使用 VFX 图形:
类似的图也可以在 Niagara 等中轻松实现。
PopcornFX
那么为什么实时 VFX 艺术家应该关注 PopcornFX?几个原因。
首先,它本身正在演变成一个非常强大的工具。PopcornFX 处理空间查询和检索数据(例如最近点属性),它可以扩展到数百万个粒子(随着 GPU 实现的进一步细化,效率会更高)并且以一种对常见 VFX 任务来说非常易于访问和高效的方式编写,然而它使用户能够管理接近同类最佳 DCC 工具(如 Houdini)的复杂程度。
其次,作为中间件,其嵌入自定义管道和应用程序的能力意味着它已经出现在有趣的地方。能够创作可用于无数不同项目和管道的工具和模板,而不管核心引擎的差异如何,这一想法非常吸引人。
最后,PopcornFX 具有难以捉摸的“乐趣”因素,使用起来很愉快。任何让用户更多地关注手头的任务而不是工具本身的工具总是值得注意的。PKFX 的第 2 版形式非常易于学习和使用。