如果我給不同的密度/質量,它們仍然以相同的速度下降。我知道在沒有空氣阻力的地方,質量不會影響下降速度。Box2D有重力影響不同的質量
但是接下來,我如何邏輯地製造出一個氣球和一塊磚,以不同的速度墜落?我能想到的最接近的方式是使用setGravityScale來設置這一切..
如果我給不同的密度/質量,它們仍然以相同的速度下降。我知道在沒有空氣阻力的地方,質量不會影響下降速度。Box2D有重力影響不同的質量
但是接下來,我如何邏輯地製造出一個氣球和一塊磚,以不同的速度墜落?我能想到的最接近的方式是使用setGravityScale來設置這一切..
一個選項是禁用重力並自己應用您想要的每個幀的加速度。這就是我在比賽中所走的路線。 Box2d的內置重力對於快速模擬是可行的,但它不是非常可定製的。
一旦禁用重力,您必須決定應用於對象的加速公式。有幾種不同的流體阻力模型(查看維基百科),因此您必須嘗試並選擇看起來最好的模型。
在box2d中模擬空氣減速效果的最佳方法是使用「阻尼」。
見:http://www.box2d.org/manual.html
「阻尼用於減少機構的世界速度阻尼比摩擦不同,因爲摩擦僅發生接觸阻尼不是摩擦的替代品,這兩個作用,應同時使用。 「。 「
」阻尼參數應該在0到無限之間,0表示沒有阻尼,而無窮遠表示完全阻尼。通常情況下,您將使用0到0.1之間的阻尼值。我通常不使用線性阻尼,因爲它使得車身看起來輕飄「。
bodyDef.linearDamping = 0.0f;
bodyDef.angularDamping = 0.01f;