UE Niagara 浮力
UE Niagara 浮力

UE Niagara 浮力

image.png

img_v3_02h1_60fc2cb1-f995-4590-ac9a-d0d7930f5a3g.jpg

计算得到小球的侵没体积就等于三种情况之和:

img_v3_02h1_36ea65b3-5035-49d1-80f6-8ffa7274cbbg.jpg

d ≤ -r : 球离开水面
d ≥ r : 球全部没入水中
-r < d < r : 球一部分在水里

得到小球没入水中的体积,便可以知道小球所在位置处的浮力。

物体在水中与空气中收到的阻力不同还需要动态的调整物体受到的阻力,用来模拟物体在水中收到阻力变大移动变慢的状态,根据计算小球当前的没入水中体积和小球在水下的总体积可以得到

小球最终的阻力等于 = lerp(空气阻力,水体阻力,(小球当前的没入水中体积 / 小球在水下的总体积))

所以浮力部分我们直接分三部分计算,然后加起来即可。

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注