Header menu logo PhysicsSandbox

QueryBuilders Module

Convenience wrappers for physics query operations (raycast, sweep cast, overlap).

Functions and values

Function or value Description

overlapSphere session radius position

Full Usage: overlapSphere session radius position

Parameters:
    session : Session - Active session.
    radius : float - Sphere radius.
    position : float * float * float - Test position (x, y, z).

Returns: string list List of overlapping body IDs.

Tests for overlapping bodies at a position using a sphere shape.

session : Session

Active session.

radius : float

Sphere radius.

position : float * float * float

Test position (x, y, z).

Returns: string list

List of overlapping body IDs.

raycast session origin direction maxDistance

Full Usage: raycast session origin direction maxDistance

Parameters:
    session : Session - Active session.
    origin : float * float * float - Ray origin (x, y, z).
    direction : float * float * float - Ray direction (x, y, z).
    maxDistance : float - Maximum ray distance. Default: 1000.

Returns: (string * (float * float * float) * (float * float * float) * float) list List of (bodyId, position, normal, distance) tuples for each hit.

Casts a ray and returns hit results.

session : Session

Active session.

origin : float * float * float

Ray origin (x, y, z).

direction : float * float * float

Ray direction (x, y, z).

maxDistance : float

Maximum ray distance. Default: 1000.

Returns: (string * (float * float * float) * (float * float * float) * float) list

List of (bodyId, position, normal, distance) tuples for each hit.

raycastAll session origin direction maxDistance

Full Usage: raycastAll session origin direction maxDistance

Parameters:
    session : Session
    origin : float * float * float
    direction : float * float * float
    maxDistance : float

Returns: (string * (float * float * float) * (float * float * float) * float) list

Casts a ray and returns all hits along the ray.

session : Session
origin : float * float * float
direction : float * float * float
maxDistance : float
Returns: (string * (float * float * float) * (float * float * float) * float) list

sweepSphere session radius startPosition direction maxDistance

Full Usage: sweepSphere session radius startPosition direction maxDistance

Parameters:
    session : Session - Active session.
    radius : float - Sphere radius.
    startPosition : float * float * float - Start position (x, y, z).
    direction : float * float * float - Sweep direction (x, y, z).
    maxDistance : float - Maximum sweep distance.

Returns: (string * (float * float * float) * (float * float * float) * float) option Some (bodyId, position, normal, distance) if hit, None otherwise.

Performs a sphere sweep cast.

session : Session

Active session.

radius : float

Sphere radius.

startPosition : float * float * float

Start position (x, y, z).

direction : float * float * float

Sweep direction (x, y, z).

maxDistance : float

Maximum sweep distance.

Returns: (string * (float * float * float) * (float * float * float) * float) option

Some (bodyId, position, normal, distance) if hit, None otherwise.

Type something to start searching.