Unigine.PhysicalWater Class
Inherits: | Physical |
A PhysicalWater class is used to simulate water interaction effects.
The water will affect only objects, to which a cloth body or a rigid body are assigned.
If the rigid body is used, a shape should be also assigned.
See Also
- An article on Physical Water
- A set of samples located in the data/samples/physicals folder:
- water_00
- water_01
PhysicalWater Class
Members
static PhysicalWater(vec3 size)
Constructor. Creates a physical water node of the specified size.Arguments
- vec3 size - Water box size in units.
PhysicalWater cast(Node node)
Casts a PhysicalWater out of the Node instance.Arguments
- Node node - Node instance.
Return value
PhysicalWater instance.PhysicalWater cast(Physical base)
Casts a PhysicalWater out of the Physical instance.Arguments
- Physical base - Physical instance.
Return value
PhysicalWater instance.void setAngularDamping(float damping)
Sets a value indicating how much the angular velocity of the objects decreases when they get into the physical water.Arguments
- float damping - Angular damping value. If a negative value is provided, 0 will be used instead.
float getAngularDamping()
Returns the current value indicating how much the angular velocity of the objects decreases when they get into the physical water.Return value
The angular damping value.Body getContactBody(int num)
Returns the body of the object by the given contact with physical water.Arguments
- int num - Contact number.
Return value
Body of the object.float getContactDepth(int num)
Returns the depth of the object submergence by the given contact.Arguments
- int num - Contact number.
Return value
Depth of object submergence in units.vec3 getContactForce(int num)
Returns the force in the point of a given contact.Arguments
- int num - Contact number.
Return value
Force value.Vec3 getContactPoint(int num)
Returns the coordinates of the contact point.Arguments
- int num - Contact number.
Return value
Contact point coordinates.vec3 getContactVelocity(int num)
Returns the relative velocity between the object and the physical water.Arguments
- int num - Contact number.
Return value
Relative velocity in units per second.void setDensity(float density)
Sets a density of the water that determines objects buoyancy.Arguments
- float density - Density value. If a negative value is provided, 0 will be used instead.
float getDensity()
Returns the current density of the physical water that determines objects buoyancy.Return value
The density value.void setLinearDamping(float damping)
Sets a value indicating how much the linear velocity of the objects decreases when they get into the physical water.Arguments
- float damping - Linear damping value. If a negative value is provided, 0 will be used instead.
float getLinearDamping()
Returns the current value indicating how much the linear velocity of the objects decreases when they get into the physical water.Return value
The linear damping value.int getNumContacts()
Returns the number of contacts between the physical water and the objects.Return value
Number of contacts.void setSize(vec3 size)
Sets a size of the physical water node.Arguments
- vec3 size - Water box size in units.
vec3 getSize()
Returns the current size of the physical water node.Return value
The size of the water box in units.void setVelocity(vec3 velocity)
Sets a velocity of the flow in physical water.Arguments
- vec3 velocity - Velocity in units per second.
vec3 getVelocity()
Returns the current velocity of the flow in physical water.Return value
The velocity in units per second.int type()
Returns the type of the node.Return value
Physical type identifier.Last update: 2018-08-10
Help improve this article
Was this article helpful?
(or select a word/phrase and press Ctrl+Enter)