Version: 5.5 (switch to 5.6b)
LanguageEnglish
  • C#
  • JS

Script language

Select your preferred scripting language. All code snippets will be displayed in this language.

BuoyancyEffector2D.density

Suggest a change

Success!

Thank you for helping us improve the quality of Unity Documentation. Although we cannot accept all submissions, we do read each suggested change from our users and will make updates where applicable.

Close

Submission failed

For some reason your suggested change could not be submitted. Please <a>try again</a> in a few minutes. And thank you for taking the time to help us improve the quality of Unity Documentation.

Close

Cancel

Switch to Manual
public var density: float;
public float density;

Description

The density of the fluid used to calculate the buoyancy forces.

Buoyancy forces are calculated by comparing the density of the effector to the Collider2D.density of the Collider2D. If the collider is less dense than the effector then the collider will float i.e. become more buoyant. If the collider is more dense than the effector then the collider will sink i.e. become less buoyant. If the collider is equally dense as the effector then there is no buoyancy forces applied and the collider will neither float or sink.

Note that the Collider2D.density can only be set when Rigidbody2D.useAutoMass is true. This provides the ability to fine-tune the collider density versus the effector density. If this is not required then Rigidbody2D.useAutoMass can be set to false in which case the Collider2D.density is fixed at 1 therefore an effector density more than this will cause the collider to float whereas an effector density less than this will cause the collider to sink.