FluXY – 25D fluid simulator v1.4 FluXY 使用 GPU 模拟看起来像 3D 的 2D 流体。可用于模拟火、烟、油漆、水、轨迹和各种 VFX。
FluXY 是一​​个 GPU、基于网格的 2.5D 流体模拟器。它轻巧、快速、坚固且易于使用。您可以使用它来实时模拟流体效果,以及生成翻书纹理。

❗包括着色器:

不透明流体表面(URP/HDRP,2019.4 及更高版本)
透明流体表面(URP,2019.4 及更高版本)
体积,1.3 中的新增功能(URP/HDRP,2021.2 及更高版本)
您可以开箱即用地在您的项目中使用包含的着色器,或者作为您自己的模拟驱动着色器的灵感。

💡将 2D 流体扩展到 3D 领域。

FluXY 流体存在于容器中。容器可以是自定义网格或平面矩形区域。容器可以面向相机,场景中的对象可以将密度和速度数据喷射到容器上。来自外部世界的所有 3D 数据(例如力、速度)都投影为 2D。这给人以全 3D 模拟的印象,但便宜了几个数量级。

💡 (1.4 中的新功能) 将模拟记录到动画书纹理

选择任何容器并从中录制翻书动画!这些在你场景中的任何地方播放都很便宜,而且由于基于运动矢量的插值,即使它们只有很少的帧也会看起来很流畅。

💡湍流、压力、浮力、表面张力、外力…

完全掌控模拟:增加湍流做漩涡状的流体,减少压力让它膨胀,增加浮力让它升到天空,利用附着力和表面张力做滴落的颜料,让它受风影响……

💡惯性效应

流体可以继承其容器的运动。将火炬放在角色手中,火焰会受到奔跑、跳跃、挥手等任何动作的影响。您可以完全控制将多少加速度/速度传递给流体。

💡模拟火、烟、墨水、水、油漆和其他 VFX。

让您的玩家穿越多油的水域、释放魔法、向可破坏/破碎的物体添加烟雾等等。


💡动态细节层次 (LOD)

与 Unity 的 LOD 组件集成,以较低的分辨率执行远距离模拟。细节层次之间的过渡像黄油一样平滑。

💡快速可分离压力求解器

计算压力通常是流体模拟中最昂贵的部分,因为相同的基本数学运算必须在每帧中重复多次。FluXY 为您提供了一种快速、可分离的压力求解器,可以在很短的时间内获得与传统方法相当的结果。而且,如果您愿意,您仍然可以选择使用传统方式。

💡波浪

当使用传统的压力求解器时,压力值可以作为廉价的波浪模拟加倍。

💡 100% GPU

整个流体模拟发生在您的 GPU 中,使用片段和顶点着色器。

💡多个流体容器的并行模拟。

模拟一个流体容器很快,但同时模拟多达 16 个甚至更快。FluXY 使用自动动态图集将多个模拟放入同一个纹理中,以获得最佳性能。


💡包括完整的源代码。快速支持和定期更新。

如果您想修改 FluXY,向其添加自定义功能,或者只是看一下引擎盖下的内容,您会很高兴知道每个脚本和着色器都包含在内并且可以轻松编辑。如果您需要帮助或有任何疑问,请给我们留言,我们将尽力提供帮助。

❓我需要知道什么才能使用 FluXY?

对于基本用例,只需要很少的经验。一些基本的 Unity 技能和理解 3D 概念,例如世界/局部空间、光线投射、速度/加速度……会让您走得更远。无需 C# 脚本。

当您获得更精细的效果时,一些着色器知识会很有用。FluXY 输出流体密度和速度值作为纹理,您可以将它们用作您自己的着色器中的输入来创建一些非常酷的东西。

技术细节
兼容所有平台和渲染管道。
使用香草片段/顶点着色器,不需要计算着色器支持。
刚体可以影响流体速度,您可以从流体中读回速度数据以影响刚体。然而,这两件事不能同时发生并相互反馈,因为从 GPU 读取流体速度/密度数据是异步完成的(你得到的数据总是几帧旧的)。


❌FluXY 不做/不做的事情:

不是完整的 3D 流体模拟器,没有体积效果。模拟发生在 2D 平面上。
没有自由表面流体模拟(例如,不能模拟容器上的倾倒流体)。
不是流体渲染器。包括一个与所有 SRP 兼容的基本无光照着色器(用于大多数商店视频/图像),以及用于流体表面和体积的示例着色器,但是您必须使用自己的着色器来实现任何奇特的效果。流体模拟输出两种纹理(密度和速度),您可以在自己的着色器/材质中轻松使用它们来匹配您的游戏外观。
无法模拟海洋、河流等大型水体。
不支持双向刚体耦合。刚体可以驱动流体流动,也可以被流体驱动,但不能同时进行。
❌自定义网格的限制

FluXY 在纹理空间中执行模拟,因此网格必须进行 UV 展开,同时牢记这一点:UV 必须不重叠,并且纹理接缝最小化,因为流体不能流过接缝。

着色器

体液
液体
物理

模拟
抽烟
体积的

发表回复

后才能评论