Table of Contents

Class GravitasDiagnosticSink

Namespace
Gravitas.Diagnostics
Assembly
Gravitas.dll

Context-owned deterministic diagnostics buffer for physics events and debug draw commands.

public sealed class GravitasDiagnosticSink
Inheritance
GravitasDiagnosticSink
Inherited Members

Properties

DrawCommandCount

Gets the number of captured debug draw commands.

public int DrawCommandCount { get; }

Property Value

int

DrawCommands

Gets captured engine-agnostic draw commands for this context.

public ReadOnlySpan<GravitasDebugDrawCommand> DrawCommands { get; }

Property Value

ReadOnlySpan<GravitasDebugDrawCommand>

Enabled

Gets whether this sink records events and draw commands.

public bool Enabled { get; }

Property Value

bool

EventCount

Gets the number of captured diagnostic events.

public int EventCount { get; }

Property Value

int

Events

Gets captured diagnostic events for this context.

public ReadOnlySpan<GravitasDiagnosticEvent> Events { get; }

Property Value

ReadOnlySpan<GravitasDiagnosticEvent>

Methods

CaptureCollider(LSCollider, GravitasDiagnosticColor)

Emits an engine-agnostic draw command for the supplied collider shape.

public void CaptureCollider(LSCollider collider, GravitasDiagnosticColor color)

Parameters

collider LSCollider
color GravitasDiagnosticColor

CaptureJoint(Joint2D, GravitasDiagnosticColor)

Emits engine-agnostic draw commands for a pure 2D joint's anchors and active planar axis.

public void CaptureJoint(Joint2D joint, GravitasDiagnosticColor color)

Parameters

joint Joint2D
color GravitasDiagnosticColor

CaptureJoint(Joint3D, GravitasDiagnosticColor)

Emits engine-agnostic draw commands for a 3D joint's anchors and active angular axes.

public void CaptureJoint(Joint3D joint, GravitasDiagnosticColor color)

Parameters

joint Joint3D
color GravitasDiagnosticColor

CaptureLine(Vector3d, Vector3d, GravitasDiagnosticColor)

Emits an engine-agnostic line draw command.

public void CaptureLine(Vector3d start, Vector3d end, GravitasDiagnosticColor color)

Parameters

start Vector3d
end Vector3d
color GravitasDiagnosticColor

CaptureMixedCollider(LSCollider2D, GravitasDiagnosticColor)

Emits engine-agnostic draw commands for the finite 2D slab used by mixed 2D/3D collision.

public void CaptureMixedCollider(LSCollider2D collider, GravitasDiagnosticColor color)

Parameters

collider LSCollider2D
color GravitasDiagnosticColor

CapturePoint(Vector3d, Fixed64, GravitasDiagnosticColor)

Emits an engine-agnostic point draw command.

public void CapturePoint(Vector3d point, Fixed64 radius, GravitasDiagnosticColor color)

Parameters

point Vector3d
radius Fixed64
color GravitasDiagnosticColor

CaptureRay(Vector3d, Vector3d, Fixed64, GravitasDiagnosticColor)

Emits an engine-agnostic ray draw command from an origin, direction, and length.

public void CaptureRay(Vector3d origin, Vector3d direction, Fixed64 length, GravitasDiagnosticColor color)

Parameters

origin Vector3d
direction Vector3d
length Fixed64
color GravitasDiagnosticColor

Clear()

Clears captured data while retaining allocated buffer capacity.

public void Clear()

Disable()

Disables diagnostics and clears captured data.

public void Disable()

DispatchDrawCommandsTo(GravitasDebugDrawCommandVisitor)

Dispatches captured draw commands in buffer order to a typed debug draw visitor.

public void DispatchDrawCommandsTo(GravitasDebugDrawCommandVisitor visitor)

Parameters

visitor GravitasDebugDrawCommandVisitor

DispatchEventsTo(GravitasDiagnosticEventVisitor)

Dispatches captured events in buffer order to a typed diagnostic visitor.

public void DispatchEventsTo(GravitasDiagnosticEventVisitor visitor)

Parameters

visitor GravitasDiagnosticEventVisitor

Enable(int, int)

Enables diagnostics and optionally reserves buffer capacity for hot-path capture.

public void Enable(int eventCapacity = 128, int drawCommandCapacity = 128)

Parameters

eventCapacity int
drawCommandCapacity int