overlapSphere method

  1. @override
List<SimOverlapHit> overlapSphere(
  1. Vector3 center,
  2. double radius, {
  3. int layerMask = 0xFFFFFFFF,
  4. bool includeFixed = true,
  5. bool includeKinematic = true,
  6. bool includeDynamic = true,
  7. bool includeTriggers = false,
})
override

Implementation

@override
List<SimOverlapHit> overlapSphere(
  Vector3 center,
  double radius, {
  int layerMask = 0xFFFFFFFF,
  bool includeFixed = true,
  bool includeKinematic = true,
  bool includeDynamic = true,
  bool includeTriggers = false,
}) {
  final out = <SimOverlapHit>[];
  _colliders.forEach((handle, collider) {
    if (!_passesFilters(
      collider,
      layerMask: layerMask,
      includeFixed: includeFixed,
      includeKinematic: includeKinematic,
      includeTriggers: includeTriggers,
    )) {
      return;
    }
    final aabb = shapeWorldAabb(collider.shape, _colliderWorldPose(collider));
    if (!sphereOverlapsAabb(center, radius, aabb)) return;
    out.add(SimOverlapHit(colliderHandle: handle));
  });
  return out;
}