@recast-navigation/wasm 0.0.7 → 0.1.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -4,6 +4,10 @@ declare module Recast {
4
4
  function destroy(obj: any): void;
5
5
  function _malloc(size: number): number;
6
6
  function _free(ptr: number): void;
7
+ function wrapPointer<C extends new (...args: any) => any>(ptr: number, Class: C): InstanceType<C>;
8
+ function getPointer(obj: unknown): number;
9
+ function castObject<C extends new (...args: any) => any>(object: unknown, Class: C): InstanceType<C>;
10
+ function compare(object1: unknown, object2: unknown): boolean;
7
11
  const HEAP8: Int8Array;
8
12
  const HEAP16: Int16Array;
9
13
  const HEAP32: Int32Array;
@@ -32,12 +36,12 @@ declare module Recast {
32
36
  get_ch(): number;
33
37
  set_ch(ch: number): void;
34
38
  ch: number;
35
- get_bmin(): ReadonlyArray<number>;
39
+ get_bmin(index: number): number;
36
40
  set_bmin(bmin: ReadonlyArray<number>): void;
37
- bmin: ReadonlyArray<number>;
38
- get_bmax(): ReadonlyArray<number>;
41
+ bmin: number;
42
+ get_bmax(index: number): number;
39
43
  set_bmax(bmax: ReadonlyArray<number>): void;
40
- bmax: ReadonlyArray<number>;
44
+ bmax: number;
41
45
  get_walkableSlopeAngle(): number;
42
46
  set_walkableSlopeAngle(walkableSlopeAngle: number): void;
43
47
  walkableSlopeAngle: number;
@@ -72,85 +76,265 @@ declare module Recast {
72
76
  set_detailSampleMaxError(detailSampleMaxError: number): void;
73
77
  detailSampleMaxError: number;
74
78
  }
75
- class Vec3 {
79
+ class dtMeshHeader {
80
+ get_magic(): number;
81
+ set_magic(magic: number): void;
82
+ magic: number;
83
+ get_version(): number;
84
+ set_version(version: number): void;
85
+ version: number;
76
86
  get_x(): number;
77
87
  set_x(x: number): void;
78
88
  x: number;
79
89
  get_y(): number;
80
90
  set_y(y: number): void;
81
91
  y: number;
82
- get_z(): number;
83
- set_z(z: number): void;
84
- z: number;
85
- constructor();
86
- constructor(x: number, y: number, z: number);
92
+ get_layer(): number;
93
+ set_layer(layer: number): void;
94
+ layer: number;
95
+ get_userId(): number;
96
+ set_userId(userId: number): void;
97
+ userId: number;
98
+ get_polyCount(): number;
99
+ set_polyCount(polyCount: number): void;
100
+ polyCount: number;
101
+ get_vertCount(): number;
102
+ set_vertCount(vertCount: number): void;
103
+ vertCount: number;
104
+ get_maxLinkCount(): number;
105
+ set_maxLinkCount(maxLinkCount: number): void;
106
+ maxLinkCount: number;
107
+ get_detailMeshCount(): number;
108
+ set_detailMeshCount(detailMeshCount: number): void;
109
+ detailMeshCount: number;
110
+ get_detailVertCount(): number;
111
+ set_detailVertCount(detailVertCount: number): void;
112
+ detailVertCount: number;
113
+ get_detailTriCount(): number;
114
+ set_detailTriCount(detailTriCount: number): void;
115
+ detailTriCount: number;
116
+ get_bvNodeCount(): number;
117
+ set_bvNodeCount(bvNodeCount: number): void;
118
+ bvNodeCount: number;
119
+ get_offMeshConCount(): number;
120
+ set_offMeshConCount(offMeshConCount: number): void;
121
+ offMeshConCount: number;
122
+ get_offMeshBase(): number;
123
+ set_offMeshBase(offMeshBase: number): void;
124
+ offMeshBase: number;
125
+ get_walkableHeight(): number;
126
+ set_walkableHeight(walkableHeight: number): void;
127
+ walkableHeight: number;
128
+ get_walkableRadius(): number;
129
+ set_walkableRadius(walkableRadius: number): void;
130
+ walkableRadius: number;
131
+ get_walkableClimb(): number;
132
+ set_walkableClimb(walkableClimb: number): void;
133
+ walkableClimb: number;
134
+ get_bmin(index: number): number;
135
+ set_bmin(bmin: ReadonlyArray<number>): void;
136
+ bmin: number;
137
+ get_bmax(index: number): number;
138
+ set_bmax(bmax: ReadonlyArray<number>): void;
139
+ bmax: number;
140
+ get_bvQuantFactor(): number;
141
+ set_bvQuantFactor(bvQuantFactor: number): void;
142
+ bvQuantFactor: number;
87
143
  }
88
- class Triangle {
89
- constructor();
90
- getPoint(n: number): Vec3;
144
+ class dtPoly {
145
+ get_firstLink(): number;
146
+ set_firstLink(firstLink: number): void;
147
+ firstLink: number;
148
+ get_verts(index: number): number;
149
+ set_verts(verts: ReadonlyArray<number>): void;
150
+ verts: number;
151
+ get_neis(index: number): number;
152
+ set_neis(neis: ReadonlyArray<number>): void;
153
+ neis: number;
154
+ get_flags(): number;
155
+ set_flags(flags: number): void;
156
+ flags: number;
157
+ get_vertCount(): number;
158
+ set_vertCount(vertCount: number): void;
159
+ vertCount: number;
160
+ get_areaAndtype(): number;
161
+ set_areaAndtype(areaAndtype: number): void;
162
+ areaAndtype: number;
163
+ setArea(a: number): void;
164
+ setType(a: number): void;
165
+ getType(): number;
166
+ getArea(): number;
91
167
  }
92
- class DebugNavMesh {
93
- constructor();
94
- getTriangleCount(): number;
95
- getTriangle(n: number): Triangle;
168
+ class dtPolyDetail {
169
+ get_vertBase(): number;
170
+ set_vertBase(vertBase: number): void;
171
+ vertBase: number;
172
+ get_triBase(): number;
173
+ set_triBase(triBase: number): void;
174
+ triBase: number;
175
+ get_vertCount(): number;
176
+ set_vertCount(vertCount: number): void;
177
+ vertCount: number;
178
+ get_triCount(): number;
179
+ set_triCount(triCount: number): void;
180
+ triCount: number;
181
+ }
182
+ class dtLink {
183
+ get_ref(): number;
184
+ set_ref(ref: number): void;
185
+ ref: number;
186
+ get_next(): number;
187
+ set_next(next: number): void;
188
+ next: number;
189
+ get_edge(): number;
190
+ set_edge(edge: number): void;
191
+ edge: number;
192
+ get_side(): number;
193
+ set_side(side: number): void;
194
+ side: number;
195
+ get_bmin(): number;
196
+ set_bmin(bmin: number): void;
197
+ bmin: number;
198
+ get_bmax(): number;
199
+ set_bmax(bmax: number): void;
200
+ bmax: number;
201
+ }
202
+ class dtBVNode {
203
+ get_bmin(index: number): number;
204
+ set_bmin(bmin: ReadonlyArray<number>): void;
205
+ bmin: number;
206
+ get_bmax(index: number): number;
207
+ set_bmax(bmax: ReadonlyArray<number>): void;
208
+ bmax: number;
209
+ get_i(): number;
210
+ set_i(i: number): void;
211
+ i: number;
212
+ }
213
+ class dtOffMeshConnection {
214
+ get_pos(index: number): number;
215
+ set_pos(pos: ReadonlyArray<number>): void;
216
+ pos: number;
217
+ get_rad(): number;
218
+ set_rad(rad: number): void;
219
+ rad: number;
220
+ get_poly(): number;
221
+ set_poly(poly: number): void;
222
+ poly: number;
223
+ get_flags(): number;
224
+ set_flags(flags: number): void;
225
+ flags: number;
226
+ get_side(): number;
227
+ set_side(side: number): void;
228
+ side: number;
229
+ get_userId(): number;
230
+ set_userId(userId: number): void;
231
+ userId: number;
232
+ }
233
+ class dtMeshTile {
234
+ get_salt(): number;
235
+ set_salt(salt: number): void;
236
+ salt: number;
237
+ get_linksFreeList(): number;
238
+ set_linksFreeList(linksFreeList: number): void;
239
+ linksFreeList: number;
240
+ get_header(): dtMeshHeader;
241
+ set_header(header: dtMeshHeader): void;
242
+ header: dtMeshHeader;
243
+ get_polys(index: number): dtPoly;
244
+ set_polys(polys: ReadonlyArray<dtPoly>): void;
245
+ polys: dtPoly;
246
+ get_verts(index: number): number;
247
+ set_verts(verts: ReadonlyArray<number>): void;
248
+ verts: number;
249
+ get_links(index: number): dtLink;
250
+ set_links(links: ReadonlyArray<dtLink>): void;
251
+ links: dtLink;
252
+ get_detailMeshes(index: number): dtPolyDetail;
253
+ set_detailMeshes(detailMeshes: ReadonlyArray<dtPolyDetail>): void;
254
+ detailMeshes: dtPolyDetail;
255
+ get_detailVerts(index: number): number;
256
+ set_detailVerts(detailVerts: ReadonlyArray<number>): void;
257
+ detailVerts: number;
258
+ get_detailTris(index: number): number;
259
+ set_detailTris(detailTris: ReadonlyArray<number>): void;
260
+ detailTris: number;
261
+ get_bvTree(index: number): dtBVNode;
262
+ set_bvTree(bvTree: ReadonlyArray<dtBVNode>): void;
263
+ bvTree: dtBVNode;
264
+ get_offMeshCons(index: number): dtOffMeshConnection;
265
+ set_offMeshCons(offMeshCons: ReadonlyArray<dtOffMeshConnection>): void;
266
+ offMeshCons: dtOffMeshConnection;
267
+ get_data(index: number): number;
268
+ set_data(data: ReadonlyArray<number>): void;
269
+ data: number;
270
+ get_dataSize(): number;
271
+ set_dataSize(dataSize: number): void;
272
+ dataSize: number;
273
+ get_flags(): number;
274
+ set_flags(flags: number): void;
275
+ flags: number;
276
+ get_next(): dtMeshTile;
277
+ set_next(next: dtMeshTile): void;
278
+ next: dtMeshTile;
96
279
  }
97
280
  class dtNavMesh {
98
281
  }
99
282
  class dtNavMeshCreateParams {
100
- get_verts(): ReadonlyArray<number>;
283
+ constructor();
284
+ get_verts(index: number): number;
101
285
  set_verts(verts: ReadonlyArray<number>): void;
102
- readonly verts: ReadonlyArray<number>;
286
+ readonly verts: number;
103
287
  get_vertCount(): number;
104
288
  set_vertCount(vertCount: number): void;
105
289
  vertCount: number;
106
- get_polys(): ReadonlyArray<number>;
290
+ get_polys(index: number): number;
107
291
  set_polys(polys: ReadonlyArray<number>): void;
108
- readonly polys: ReadonlyArray<number>;
109
- get_polyFlags(): ReadonlyArray<number>;
292
+ readonly polys: number;
293
+ get_polyFlags(index: number): number;
110
294
  set_polyFlags(polyFlags: ReadonlyArray<number>): void;
111
- readonly polyFlags: ReadonlyArray<number>;
112
- get_polyAreas(): ReadonlyArray<number>;
295
+ readonly polyFlags: number;
296
+ get_polyAreas(index: number): number;
113
297
  set_polyAreas(polyAreas: ReadonlyArray<number>): void;
114
- readonly polyAreas: ReadonlyArray<number>;
298
+ readonly polyAreas: number;
115
299
  get_polyCount(): number;
116
300
  set_polyCount(polyCount: number): void;
117
301
  polyCount: number;
118
302
  get_nvp(): number;
119
303
  set_nvp(nvp: number): void;
120
304
  nvp: number;
121
- get_detailMeshes(): ReadonlyArray<number>;
305
+ get_detailMeshes(index: number): number;
122
306
  set_detailMeshes(detailMeshes: ReadonlyArray<number>): void;
123
- readonly detailMeshes: ReadonlyArray<number>;
124
- get_detailVerts(): ReadonlyArray<number>;
307
+ readonly detailMeshes: number;
308
+ get_detailVerts(index: number): number;
125
309
  set_detailVerts(detailVerts: ReadonlyArray<number>): void;
126
- readonly detailVerts: ReadonlyArray<number>;
310
+ readonly detailVerts: number;
127
311
  get_detailVertsCount(): number;
128
312
  set_detailVertsCount(detailVertsCount: number): void;
129
313
  detailVertsCount: number;
130
- get_detailTris(): ReadonlyArray<number>;
314
+ get_detailTris(index: number): number;
131
315
  set_detailTris(detailTris: ReadonlyArray<number>): void;
132
- readonly detailTris: ReadonlyArray<number>;
316
+ readonly detailTris: number;
133
317
  get_detailTriCount(): number;
134
318
  set_detailTriCount(detailTriCount: number): void;
135
319
  detailTriCount: number;
136
- get_offMeshConVerts(): ReadonlyArray<number>;
320
+ get_offMeshConVerts(index: number): number;
137
321
  set_offMeshConVerts(offMeshConVerts: ReadonlyArray<number>): void;
138
- readonly offMeshConVerts: ReadonlyArray<number>;
139
- get_offMeshConRad(): ReadonlyArray<number>;
322
+ readonly offMeshConVerts: number;
323
+ get_offMeshConRad(index: number): number;
140
324
  set_offMeshConRad(offMeshConRad: ReadonlyArray<number>): void;
141
- readonly offMeshConRad: ReadonlyArray<number>;
142
- get_offMeshConFlags(): ReadonlyArray<number>;
325
+ readonly offMeshConRad: number;
326
+ get_offMeshConFlags(index: number): number;
143
327
  set_offMeshConFlags(offMeshConFlags: ReadonlyArray<number>): void;
144
- readonly offMeshConFlags: ReadonlyArray<number>;
145
- get_offMeshConAreas(): ReadonlyArray<number>;
328
+ readonly offMeshConFlags: number;
329
+ get_offMeshConAreas(index: number): number;
146
330
  set_offMeshConAreas(offMeshConAreas: ReadonlyArray<number>): void;
147
- readonly offMeshConAreas: ReadonlyArray<number>;
148
- get_offMeshConDir(): ReadonlyArray<number>;
331
+ readonly offMeshConAreas: number;
332
+ get_offMeshConDir(index: number): number;
149
333
  set_offMeshConDir(offMeshConDir: ReadonlyArray<number>): void;
150
- readonly offMeshConDir: ReadonlyArray<number>;
151
- get_offMeshConUserID(): ReadonlyArray<number>;
334
+ readonly offMeshConDir: number;
335
+ get_offMeshConUserID(index: number): number;
152
336
  set_offMeshConUserID(offMeshConUserID: ReadonlyArray<number>): void;
153
- readonly offMeshConUserID: ReadonlyArray<number>;
337
+ readonly offMeshConUserID: number;
154
338
  get_offMeshConCount(): number;
155
339
  set_offMeshConCount(offMeshConCount: number): void;
156
340
  offMeshConCount: number;
@@ -166,12 +350,12 @@ declare module Recast {
166
350
  get_tileLayer(): number;
167
351
  set_tileLayer(tileLayer: number): void;
168
352
  tileLayer: number;
169
- get_bmin(): ReadonlyArray<number>;
353
+ get_bmin(index: number): number;
170
354
  set_bmin(bmin: ReadonlyArray<number>): void;
171
- bmin: ReadonlyArray<number>;
172
- get_bmax(): ReadonlyArray<number>;
355
+ bmin: number;
356
+ get_bmax(index: number): number;
173
357
  set_bmax(bmax: ReadonlyArray<number>): void;
174
- bmax: ReadonlyArray<number>;
358
+ bmax: number;
175
359
  get_walkableHeight(): number;
176
360
  set_walkableHeight(walkableHeight: number): void;
177
361
  walkableHeight: number;
@@ -191,53 +375,15 @@ declare module Recast {
191
375
  set_buildBvTree(buildBvTree: boolean): void;
192
376
  buildBvTree: boolean;
193
377
  }
194
- class NavMeshCreateParams {
195
- constructor();
196
- getParams(): dtNavMeshCreateParams;
197
- setVerts(verts: ReadonlyArray<number>): void;
198
- setVertCount(vertCount: number): void;
199
- setPolys(polys: ReadonlyArray<number>): void;
200
- setPolyFlags(polyFlags: ReadonlyArray<number>): void;
201
- setPolyAreas(polyAreas: ReadonlyArray<number>): void;
202
- setPolyCount(polyCount: number): void;
203
- setNvp(nvp: number): void;
204
- setDetailMeshes(detailMeshes: ReadonlyArray<number>): void;
205
- setDetailVerts(detailVerts: ReadonlyArray<number>): void;
206
- setDetailVertsCount(detailVertsCount: number): void;
207
- setDetailTris(detailTris: ReadonlyArray<number>): void;
208
- setDetailTriCount(detailTriCount: number): void;
209
- setOffMeshConVerts(offMeshConVerts: ReadonlyArray<number>): void;
210
- setOffMeshConRad(offMeshConRad: ReadonlyArray<number>): void;
211
- setOffMeshConFlags(offMeshConFlags: ReadonlyArray<number>): void;
212
- setOffMeshConAreas(offMeshConAreas: ReadonlyArray<number>): void;
213
- setOffMeshConDir(offMeshConDir: ReadonlyArray<number>): void;
214
- setOffMeshConUserID(offMeshConUserID: ReadonlyArray<number>): void;
215
- setOffMeshConCount(offMeshConCount: number): void;
216
- setUserId(userId: number): void;
217
- setTileX(tileX: number): void;
218
- setTileY(tileY: number): void;
219
- setTileLayer(tileLayer: number): void;
220
- setBmin(bmin: ReadonlyArray<number>): void;
221
- setBmax(bmax: ReadonlyArray<number>): void;
222
- setWalkableHeight(walkableHeight: number): void;
223
- setWalkableRadius(walkableRadius: number): void;
224
- setWalkableClimb(walkableClimb: number): void;
225
- setCs(cs: number): void;
226
- setCh(ch: number): void;
227
- setBuildBvTree(buildBvTree: boolean): void;
228
- }
229
- class NavPath {
230
- getPointCount(): number;
231
- getPoint(n: number): Vec3;
232
- }
233
378
  class dtObstacleRef {
234
379
  }
235
380
  class dtCompressedTileRef {
236
381
  }
237
382
  class dtNavMeshParams {
238
- get_orig(): ReadonlyArray<number>;
383
+ constructor();
384
+ get_orig(index: number): number;
239
385
  set_orig(orig: ReadonlyArray<number>): void;
240
- orig: ReadonlyArray<number>;
386
+ orig: number;
241
387
  get_tileWidth(): number;
242
388
  set_tileWidth(tileWidth: number): void;
243
389
  tileWidth: number;
@@ -291,16 +437,16 @@ declare module Recast {
291
437
  get_success(): boolean;
292
438
  set_success(success: boolean): void;
293
439
  success: boolean;
294
- get_navMeshData(): ReadonlyArray<number>;
440
+ get_navMeshData(index: number): number;
295
441
  set_navMeshData(navMeshData: ReadonlyArray<number>): void;
296
- navMeshData: ReadonlyArray<number>;
442
+ navMeshData: number;
297
443
  get_navMeshDataSize(): number;
298
444
  set_navMeshDataSize(navMeshDataSize: number): void;
299
445
  navMeshDataSize: number;
300
446
  }
301
447
  class NavMeshBuilder {
302
448
  constructor();
303
- createNavMeshData(params: NavMeshCreateParams): CreateNavMeshDataResult;
449
+ createNavMeshData(params: dtNavMeshCreateParams): CreateNavMeshDataResult;
304
450
  }
305
451
  class NavMeshGeneratorResult {
306
452
  get_success(): boolean;
@@ -311,7 +457,7 @@ declare module Recast {
311
457
  }
312
458
  class NavMeshGenerator {
313
459
  constructor();
314
- generate(positions: ReadonlyArray<number>, positionCount: number, indices: ReadonlyArray<number>, indexCount: number, config: rcConfig): NavMeshGeneratorResult;
460
+ generate(positions: ReadonlyArray<number>, positionCount: number, indices: ReadonlyArray<number>, indexCount: number, config: rcConfig, expectedLayersPerTile: number, maxLayers: number): NavMeshGeneratorResult;
315
461
  }
316
462
  class NavMeshImporterResult {
317
463
  getNavMesh(): NavMesh;
@@ -335,6 +481,28 @@ declare module Recast {
335
481
  exportNavMesh(navMesh: NavMesh, tileCache: TileCache): NavMeshExport;
336
482
  freeNavMeshExport(navMeshExport: NavMeshExport): void;
337
483
  }
484
+ class Vec3 {
485
+ get_x(): number;
486
+ set_x(x: number): void;
487
+ x: number;
488
+ get_y(): number;
489
+ set_y(y: number): void;
490
+ y: number;
491
+ get_z(): number;
492
+ set_z(z: number): void;
493
+ z: number;
494
+ constructor();
495
+ constructor(x: number, y: number, z: number);
496
+ }
497
+ class Triangle {
498
+ constructor();
499
+ getPoint(n: number): Vec3;
500
+ }
501
+ class DebugNavMesh {
502
+ constructor();
503
+ getTriangleCount(): number;
504
+ getTriangle(n: number): Triangle;
505
+ }
338
506
  class NavMeshAddTileResult {
339
507
  get_status(): number;
340
508
  set_status(status: number): void;
@@ -343,14 +511,116 @@ declare module Recast {
343
511
  set_tileRef(tileRef: number): void;
344
512
  tileRef: number;
345
513
  }
514
+ class NavMeshRemoveTileResult {
515
+ get_status(): number;
516
+ set_status(status: number): void;
517
+ status: number;
518
+ get_data(index: number): number;
519
+ set_data(data: ReadonlyArray<number>): void;
520
+ data: number;
521
+ get_dataSize(): number;
522
+ set_dataSize(dataSize: number): void;
523
+ dataSize: number;
524
+ }
525
+ class NavMeshCalcTileLocResult {
526
+ get_tileX(): number;
527
+ set_tileX(tileX: number): void;
528
+ tileX: number;
529
+ get_tileY(): number;
530
+ set_tileY(tileY: number): void;
531
+ tileY: number;
532
+ }
533
+ class NavMeshGetTilesAtResult {
534
+ get_tiles(index: number): dtMeshTile;
535
+ set_tiles(tiles: ReadonlyArray<dtMeshTile>): void;
536
+ readonly tiles: dtMeshTile;
537
+ get_tileCount(): number;
538
+ set_tileCount(tileCount: number): void;
539
+ tileCount: number;
540
+ }
541
+ class NavMeshGetTileAndPolyByRefResult {
542
+ get_status(): number;
543
+ set_status(status: number): void;
544
+ status: number;
545
+ get_tile(): dtMeshTile;
546
+ set_tile(tile: dtMeshTile): void;
547
+ tile: dtMeshTile;
548
+ get_poly(): dtPoly;
549
+ set_poly(poly: dtPoly): void;
550
+ poly: dtPoly;
551
+ }
552
+ class NavMeshGetOffMeshConnectionPolyEndPointsResult {
553
+ get_status(): number;
554
+ set_status(status: number): void;
555
+ status: number;
556
+ get_startPos(index: number): number;
557
+ set_startPos(startPos: ReadonlyArray<number>): void;
558
+ startPos: number;
559
+ get_endPos(index: number): number;
560
+ set_endPos(endPos: ReadonlyArray<number>): void;
561
+ endPos: number;
562
+ }
563
+ class NavMeshGetPolyFlagsResult {
564
+ get_status(): number;
565
+ set_status(status: number): void;
566
+ status: number;
567
+ get_flags(): number;
568
+ set_flags(flags: number): void;
569
+ flags: number;
570
+ }
571
+ class NavMeshGetPolyAreaResult {
572
+ get_status(): number;
573
+ set_status(status: number): void;
574
+ status: number;
575
+ get_area(): number;
576
+ set_area(area: number): void;
577
+ area: number;
578
+ }
579
+ class NavMeshStoreTileStateResult {
580
+ get_status(): number;
581
+ set_status(status: number): void;
582
+ status: number;
583
+ get_data(index: number): number;
584
+ set_data(data: ReadonlyArray<number>): void;
585
+ data: number;
586
+ get_dataSize(): number;
587
+ set_dataSize(dataSize: number): void;
588
+ dataSize: number;
589
+ }
346
590
  class NavMesh {
347
591
  constructor();
348
592
  initSolo(data: ReadonlyArray<number>, dataSize: number, flags: number): boolean;
349
593
  initTiled(params: dtNavMeshParams): boolean;
350
594
  addTile(data: ReadonlyArray<number>, dataSize: number, flags: number, lastRef: number): NavMeshAddTileResult;
351
- destroy(): void;
595
+ removeTile(ref: number): NavMeshRemoveTileResult;
352
596
  getDebugNavMesh(): DebugNavMesh;
353
597
  getNavMesh(): dtNavMesh;
598
+ calcTileLoc(pos: ReadonlyArray<number>): NavMeshCalcTileLocResult;
599
+ getTileAt(x: number, y: number, layer: number): dtMeshTile;
600
+ getTilesAt(x: number, y: number, maxTiles: number): NavMeshGetTilesAtResult;
601
+ getTileRefAt(x: number, y: number, layer: number): number;
602
+ getTileRef(tile: dtMeshTile): number;
603
+ getTileByRef(ref: number): dtMeshTile;
604
+ getMaxTiles(): number;
605
+ getTile(i: number): dtMeshTile;
606
+ getTileAndPolyByRef(ref: number): NavMeshGetTileAndPolyByRefResult;
607
+ getTileAndPolyByRefUnsafe(ref: number): NavMeshGetTileAndPolyByRefResult;
608
+ isValidPolyRef(ref: number): boolean;
609
+ getPolyRefBase(tile: dtMeshTile): number;
610
+ getOffMeshConnectionPolyEndPoints(prevRef: number, polyRef: number): NavMeshGetOffMeshConnectionPolyEndPointsResult;
611
+ getOffMeshConnectionByRef(ref: number): dtOffMeshConnection;
612
+ setPolyFlags(ref: number, flags: number): number;
613
+ getPolyFlags(ref: number): NavMeshGetPolyFlagsResult;
614
+ setPolyArea(ref: number, area: number): number;
615
+ getPolyArea(ref: number): NavMeshGetPolyAreaResult;
616
+ getTileStateSize(tile: dtMeshTile): number;
617
+ storeTileState(tile: dtMeshTile, maxDataSize: number): NavMeshStoreTileStateResult;
618
+ restoreTileState(tile: dtMeshTile, data: ReadonlyArray<number>, maxDataSize: number): number;
619
+ destroy(): void;
620
+ }
621
+ class NavPath {
622
+ getPointCount(): number;
623
+ getPoint(n: number): Vec3;
354
624
  }
355
625
  class NavMeshQuery {
356
626
  constructor(navMesh: NavMesh, maxNodes: number);
@@ -363,9 +633,9 @@ declare module Recast {
363
633
  getDefaultQueryExtent(): Vec3;
364
634
  }
365
635
  class dtTileCacheParams {
366
- get_orig(): ReadonlyArray<number>;
636
+ get_orig(index: number): number;
367
637
  set_orig(orig: ReadonlyArray<number>): void;
368
- orig: ReadonlyArray<number>;
638
+ orig: number;
369
639
  get_cs(): number;
370
640
  set_cs(cs: number): void;
371
641
  cs: number;
@@ -447,4 +717,47 @@ declare module Recast {
447
717
  getDefaultQueryExtent(): Vec3;
448
718
  getCorners(idx: number): NavPath;
449
719
  }
720
+ class DtStatus {
721
+ constructor();
722
+ get_FAILURE(): number;
723
+ set_FAILURE(FAILURE: number): void;
724
+ FAILURE: number;
725
+ get_SUCCESS(): number;
726
+ set_SUCCESS(SUCCESS: number): void;
727
+ SUCCESS: number;
728
+ get_IN_PROGRESS(): number;
729
+ set_IN_PROGRESS(IN_PROGRESS: number): void;
730
+ IN_PROGRESS: number;
731
+ get_STATUS_DETAIL_MASK(): number;
732
+ set_STATUS_DETAIL_MASK(STATUS_DETAIL_MASK: number): void;
733
+ STATUS_DETAIL_MASK: number;
734
+ get_WRONG_MAGIC(): number;
735
+ set_WRONG_MAGIC(WRONG_MAGIC: number): void;
736
+ WRONG_MAGIC: number;
737
+ get_WRONG_VERSION(): number;
738
+ set_WRONG_VERSION(WRONG_VERSION: number): void;
739
+ WRONG_VERSION: number;
740
+ get_OUT_OF_MEMORY(): number;
741
+ set_OUT_OF_MEMORY(OUT_OF_MEMORY: number): void;
742
+ OUT_OF_MEMORY: number;
743
+ get_INVALID_PARAM(): number;
744
+ set_INVALID_PARAM(INVALID_PARAM: number): void;
745
+ INVALID_PARAM: number;
746
+ get_BUFFER_TOO_SMALL(): number;
747
+ set_BUFFER_TOO_SMALL(BUFFER_TOO_SMALL: number): void;
748
+ BUFFER_TOO_SMALL: number;
749
+ get_OUT_OF_NODES(): number;
750
+ set_OUT_OF_NODES(OUT_OF_NODES: number): void;
751
+ OUT_OF_NODES: number;
752
+ get_PARTIAL_RESULT(): number;
753
+ set_PARTIAL_RESULT(PARTIAL_RESULT: number): void;
754
+ PARTIAL_RESULT: number;
755
+ get_ALREADY_OCCUPIED(): number;
756
+ set_ALREADY_OCCUPIED(ALREADY_OCCUPIED: number): void;
757
+ ALREADY_OCCUPIED: number;
758
+ statusSucceed(status: number): boolean;
759
+ statusFailed(status: number): boolean;
760
+ statusInProgress(status: number): boolean;
761
+ statusDetail(status: number, detail: number): boolean;
762
+ }
450
763
  }