Table of Contents

Struct Contact<TManifold>

Namespace
Stride.BepuPhysics.Definitions.Contacts
Assembly
Stride.BepuPhysics.dll

An individual contact

public ref struct Contact<TManifold> where TManifold : unmanaged, IContactManifold<TManifold>

Type Parameters

TManifold
Inherited Members

Fields

ContactGroup

The group this contact is a part of

public ContactGroup<TManifold> ContactGroup

Field Value

ContactGroup<TManifold>

Contacts

The contact info pair this contact is a part of

public readonly Contacts<TManifold> Contacts

Field Value

Contacts<TManifold>

Index

The index used when reading into this group's manifold to retrieve this contact

public readonly int Index

Field Value

int

Properties

Depth

How far the two collidables intersect

public float Depth { get; }

Property Value

float

FeatureId

Gets the feature id associated with this contact

public int FeatureId { get; }

Property Value

int

Normal

The normal on Other's surface. Points from Other towards EventSource's surface

public Vector3 Normal { get; }

Property Value

Vector3

OtherChildIndex

When Other has a CompoundCollider, this is the index of the collider in that collection which EventSource collided with.

public int OtherChildIndex { get; }

Property Value

int

Point

The position at which the contact occured

public Vector3 Point { get; }

Property Value

Vector3

Remarks

This may not be accurate if they separated within this tick, or when you removed either of them from the simulation within this scope

SourceChildIndex

When EventSource has a CompoundCollider, this is the index of the collider in that collection which Other collided with.

public int SourceChildIndex { get; }

Property Value

int