Titania X3D Editor

Bring Colours to Your Life.

Titania v4.6.10

Bring Colours to Your Life.

X3D Reference



Contact nodes are produced as output events when two collidable objects or spaces make contact.

The Contact node belongs to the RigidBodyPhysics component and its container field is children. It is available since X3D version 3.2 or later.



SFNode [in, out] metadata NULL [X3DMetadataObject]

Metadata are not part of the X3D world and not interpreted by the X3D browser, but they can be accessed via the ECMAScript interface.

SFVec3f [in, out] position 0 0 0 (-∞,∞)

Position (x, y, z in meters) of exact location of collision.

SFVec3f [in, out] contactNormal 0 1 0 (-∞,∞)

ContactNormal is unit vector describing normal between two colliding bodies.

SFFloat [in, out] depth (-∞,∞)

Depth indicates how deep the current intersection is along normal vector.

MFString [in, out] appliedParameters "BOUNCE"

Default global parameters for collision outputs of rigid body physics system. Contact node can override parent CollisionCollection node. Selectable values for array: "BOUNCE" "USER_FRICTION" "FRICTION_COEFFICIENT-2" "ERROR_REDUCTION" "CONSTANT_FORCE" "SPEED-1" "SPEED-2" "SLIP-1" "SLIP-2".


BOUNCE: bounce value is used; USER_FRICTION: apply user-supplied value; FRICTION_COEFFICIENT-2: apply frictionCoefficients values; ERROR_REDUCTION: apply softnessErrorCorrection value; CONSTANT_FORCE: apply softnessConstantForceMix value; SPEED-1: apply first component of surfaceSpeed array; SPEED-2: apply second component of surfaceSpeed array; SLIP-1: apply first component of slipFactors array; SLIP-2: apply second component of slipFactors array.

SFFloat [in, out] bounce [0,1]

Bounce indicates bounciness (0 = no bounce at all, 1 = maximum bounce).

SFFloat [in, out] minBounceSpeed

MinBounceSpeed m/s needed to bounce.

SFVec3f [in, out] frictionDirection 0 1 0 (-∞,∞)

FrictionDirection controls friction vector.


Value of (0 0 0) indicates no friction.

SFVec2f [in, out] frictionCoefficients 0 0 [0,∞)

FrictionCoefficients used for computing surface drag.

SFVec2f [in, out] surfaceSpeed 0 0 (-∞,∞)

SurfaceSpeed defines speed vectors for computing surface drag, if contact surfaces move independently of bodies.

SFVec2f [in, out] slipCoefficients 0 0 (-∞,∞)

SlipCoefficients used for computing surface drag.

SFFloat [in, out] softnessConstantForceMix 0.0001 [0,1]

SoftnessConstantForceMix value applies a constant force value to make colliding surfaces appear to be somewhat soft.

SFFloat [in, out] softnessErrorCorrection 0.8 [0,1]

SoftnessErrorCorrection indicates fraction of collision error fixed in a set of evaluations (0 = no error correction, 1 = all errors corrected in single step).

SFNode [in, out] geometry1 NULL [X3DNBodyCollidableNode]

Input/Output field geometry1.

SFNode [in, out] geometry2 NULL [X3DNBodyCollidableNode]

Input/Output field geometry2.

SFNode [in, out] body1 NULL [RigidBody]

Input/Output field body1.

SFNode [in, out] body2 NULL [RigidBody]

Input/Output field body2.



  • Each Contact node contains two RigidBody (containerField='body1,body2') and two CollidableShape or CollidableOffset nodes (containerField='geometry1,geometry2').


  • Contact nodes are transient and can only occur at run time, not in saved X3D files.

Browser Compatibility

Titania X_ITE
yes yes

External Links

Cookies and other Technologies

By clicking »Accept« or continuing to use the site, you agree to the use of CREATE3000 and third-party cookies and other similar technologies to enhance your browsing experience, analyze and measure your engagement with our content, and provide more relevant ads on CREATE3000 websites and others. Learn more about cookies. You can withdraw your consent at any time.

create3000.de is going to be shut down next year, but we have a new clean and slick web site for you, go to new X_ITE web site, consider updating your X_ITE URL's, or go to new Titania web site or continue reading.