UNPKG

@babylonjs/core

Version:

Getting started? Play directly with the Babylon.js API using our [playground](https://playground.babylonjs.com/). It also contains a lot of samples to learn how to use it.

23 lines (22 loc) 1.21 kB
import type { Nullable } from "../types.js"; import { Scene } from "../scene.js"; import { Vector3 } from "../Maths/math.vector.js"; import { Collider } from "./collider.js"; import type { AbstractMesh } from "../Meshes/abstractMesh.js"; /** @internal */ export interface ICollisionCoordinator { createCollider(): Collider; getNewPosition(position: Vector3, displacement: Vector3, collider: Collider, maximumRetry: number, excludedMesh: Nullable<AbstractMesh>, onNewPosition: (collisionIndex: number, newPosition: Vector3, collidedMesh: Nullable<AbstractMesh>) => void, collisionIndex: number): void; init(scene: Scene): void; } /** @internal */ export declare class DefaultCollisionCoordinator implements ICollisionCoordinator { private _scene; private _scaledPosition; private _scaledVelocity; private _finalPosition; getNewPosition(position: Vector3, displacement: Vector3, collider: Collider, maximumRetry: number, excludedMesh: AbstractMesh, onNewPosition: (collisionIndex: number, newPosition: Vector3, collidedMesh: Nullable<AbstractMesh>) => void, collisionIndex: number): void; createCollider(): Collider; init(scene: Scene): void; private _collideWithWorld; }