UNPKG

@woosh/meep-engine

Version:

Pure JavaScript game engine. Fully featured and production ready.

78 lines 2.96 kB
export class GeometrySpatialQueryAccelerator { constructor(cache_size?: number); /** * @private * @type {Cache<THREE.BufferGeometry, BinaryUint32BVH>} */ private cache; /** * * @param {number} value in bytes */ set cache_size(arg: number); /** * * @return {number} in bytes */ get cache_size(): number; /** * * @param {THREE.BufferGeometry} geometry * @param {Plane[]} planes * @returns {boolean} true means some overlap exists, false otherwise */ queryContainmentViaClippingPlanes(geometry: THREE.BufferGeometry, planes: Plane[]): boolean; /** * * @param {SurfacePoint3} destination * @param {THREE.BufferGeometry} geometry * @param {number[]|ArrayLike<number>|Float32Array} ray 6 component vector, [origin_x, origin_y, origin_z, direction_x, direction_y, direction_z] * @return {boolean} */ queryRaycastNearest_array(destination: SurfacePoint3, geometry: THREE.BufferGeometry, ray: number[] | ArrayLike<number> | Float32Array): boolean; /** * * @param {SurfacePoint3} destination * @param {THREE.BufferGeometry} geometry * @param {number} ray_origin_x * @param {number} ray_origin_y * @param {number} ray_origin_z * @param {number} ray_direction_x * @param {number} ray_direction_y * @param {number} ray_direction_z * @return {boolean} */ queryRaycastNearest_primitive(destination: SurfacePoint3, geometry: THREE.BufferGeometry, ray_origin_x: number, ray_origin_y: number, ray_origin_z: number, ray_direction_x: number, ray_direction_y: number, ray_direction_z: number): boolean; /** * Get the nearest ray intersection * @param {SurfacePoint3} destination * @param {THREE.BufferGeometry} geometry * @param {Vector3} ray_origin * @param {Vector3} ray_direction * @returns {boolean} true if hit detected, false otherwise */ queryRaycastNearest(destination: SurfacePoint3, geometry: THREE.BufferGeometry, ray_origin: Vector3, ray_direction: Vector3): boolean; /** * Destroys cache for a given geometry, useful for when geometry changes and cache needs to be invalidated * @param {THREE.BufferGeometry} geometry * @returns {boolean} */ cache_remove_geometry(geometry: THREE.BufferGeometry): boolean; /** * NOTE: do not modify the BVH * @param {THREE.BufferGeometry} geometry * @returns {BinaryUint32BVH} */ acquire_bvh(geometry: THREE.BufferGeometry): BinaryUint32BVH; /** * @private * @param {THREE.BufferGeometry} geometry * @returns {BinaryUint32BVH} */ private __build_bvh; } export namespace GeometrySpatialQueryAccelerator { let INSTANCE: GeometrySpatialQueryAccelerator; } import { BinaryUint32BVH } from "../../../../../core/bvh2/binary/2/BinaryUint32BVH.js"; //# sourceMappingURL=GeometrySpatialQueryAccelerator.d.ts.map