1

我正在开发一个使用 PhysX 作为底层物理求解器(使用它的 SPH 模拟)的非真实水渲染演示,并希望添加泡沫和水滴渲染以增强其视觉效果。

首先,我使用相邻粒子的数量作为阈值将它们分成组(水、泡沫和液滴),并以不同的方式渲染每个组,但阅读一些研究论文我得出的结论是,使用更基于物理的方法会更好,所以输入韦伯数。

以下参数用于获取韦伯数,它们都与某个粒子或整个流体相关:

  • 密度
  • 相对速度(相对于周围空气)
  • 特征长度
  • 表面张力

密度和相对速度由 PhysX 提供,我已经得到了。虽然密度是一个浮点值,但速度是一个包含 3 个浮点值的向量,一个用于 3D 空间的每个轴(x、y 和 z)。没有提供特征长度和表面张力,很难(或者如果提供它们我不知道如何获得它们)。

所以,我的问题是:

  • 我相信韦伯数必须是一个浮点值,所以我可以用它作为一个阈值来将粒子分成组。这里的第一个问题是,要获得它,我需要使用 PhysX 提供的相对速度,它是一个具有 3 个浮点值的向量。如何获得该向量的单个浮点值以在给出韦伯数的方程中使用它?
  • 阅读了一些研究论文(尤其是这一篇,在第 3.2.1 节中),我决定对粒子特征长度和表面张力使用固定值。问题是,我应该使用哪些值,假设这些值有理想值,我怎样才能得到这些理想值?
4

1 回答 1

1

在不了解您的应用程序的情况下,通常使用像 Weber 的无量纲数字将系统分类为低价值或高价值制度。对于这些应用程序,确切的值并不重要。关键是高值表明情况与低值情况有质的不同。当然,当数字介于两者之间时,这会成为问题,即。围绕团结。对系统进行分类的好处是它允许您进行近似,这通常会简化诸如所涉及的公式之类的事情。

由于您似乎仅使用韦伯的数字进行分类,我认为这也与您有关。

因此,要从物理背景回答您的问题,特别是考虑到您在这里的目标不是现实主义,使用近似值对情况进行分类以简化计算似乎很好地利用了韦伯(可能还有其他)等无量纲数字。

  • 对于速度,您可以使用向量的绝对值。
  • 对于特征长度,您可能应该使用液滴/泡沫大小,因为这似乎是模型中唯一的长度度量。

特别是,我不会太担心“理想价值”。近似值对大/小值有效(取决于所需的准确度/真实性,例如 >~10 和 <~0.1),因此 2 的因子不会对分类产生影响。如果确实如此,那么该近似值无论如何都是无效的。

于 2017-04-28T15:19:08.863 回答