@woosh/meep-engine
Version:
Pure JavaScript game engine. Fully featured and production ready.
33 lines (27 loc) • 1.25 kB
TypeScript
import {BVH} from "../../../../core/bvh2/bvh3/BVH";
import {SurfacePoint3} from "../../../../core/geom/3d/SurfacePoint3";
import {System} from "../../../ecs/System";
import Engine from "../../../Engine";
import {ShadedGeometry} from "./ShadedGeometry.js";
export class ShadedGeometrySystem extends System<ShadedGeometry> {
constructor(engine: Engine)
readonly bvh: BVH
raycastNearest(
contact: SurfacePoint3,
origin_x: number, origin_y: number, origin_z: number,
direction_x: number, direction_y: number, direction_z: number,
filter_function?: (entity: number, mesh: ShadedGeometry) => boolean,
filter_function_context?: any
): { entity: number, mesh: ShadedGeometry } | undefined
raycast(
origin_x: number, origin_y: number, origin_z: number,
direction_x: number, direction_y: number, direction_z: number,
filter_function?: (entity: number, mesh: ShadedGeometry) => boolean,
filter_function_context?: any
): { entity: number, mesh: ShadedGeometry, contact: SurfacePoint3 }[]
queryOverlapFrustum(
result: ArrayLike<number>,
result_offset: number,
planes: ArrayLike<number>
): number
}