ts-raycasting
v0.0.14
Published
Raycasting in typescript
Downloads
105
Maintainers
Readme
TS RayCasting

Overview
TS RayCasting is tiny and fast raycast library written in Typescript.
API

castRay(map, x, y, intersection, rayRot)
castRay(map: number[][], x: number, y: number, intersection: testintersection, rayRot: number): IRayWill cast ray from position in map, which is two-dimensional world of numbers, where every number means a specific wall. To check if ray already hit a wall, there's intersection callback. If testfunction returns false, then it'll stop casting ray further and it means that wall was hit.
castRays(map, x, y, rot, intersection, config)
castRays(map: number[][], x: number, y: number, rot: number, intersection: testintersection, config: IRayConf = defaultConfig): IRay[]Will cast several rays from position in map, which is two-dimensional world of numbers, where every number means a specific wall. rot is direction of camera or caster. To check if ray already hit a wall, there's intersection callback. If testfunction returns false, then it'll stop casting ray further and it means that wall was hit.
intersection(row, column, dist, index)
type testintersection = (row: number, column: number, dist: number, index: number) => boolean;It's same callback in both castRay and castRays function, where is put a logic of hitting a wall. If testFunctions returns false, it'll stop casting ray further (specific ray, not all rays in castRays function).
Devs
npm run buildbuild library, everything will be indist/foldernpm run build:webbuild minified raycast library for browsernpm run build:nodebuild library with all declaration filesnpm run build:examplebuild examplesnpm run lintlint all .ts files
