diff --git a/RecastDebugDraw_8h_source.html b/RecastDebugDraw_8h_source.html
index 8d889556..8c53da0c 100644
--- a/RecastDebugDraw_8h_source.html
+++ b/RecastDebugDraw_8h_source.html
@@ -147,13 +147,13 @@ $(document).ready(function(){initNavTree('RecastDebugDraw_8h_source.html',''); i
void duDebugDrawHeightfieldLayers(duDebugDraw *dd, const struct rcHeightfieldLayerSet &lset)
Definition: RecastDebugDraw.cpp:424
void duDebugDrawContours(struct duDebugDraw *dd, const struct rcContourSet &cset, const float alpha=1.0f)
Abstract debug draw interface.
Definition: DebugDraw.h:35
-A compact, static heightfield representing unobstructed space.
Definition: Recast.h:352
-Represents a group of related contours.
Definition: Recast.h:431
-Represents a set of heightfield layers.
Definition: Recast.h:404
-Represents a heightfield layer within a layer set.
Definition: Recast.h:382
+A compact, static heightfield representing unobstructed space.
Definition: Recast.h:354
+Represents a group of related contours.
Definition: Recast.h:433
+Represents a set of heightfield layers.
Definition: Recast.h:406
+Represents a heightfield layer within a layer set.
Definition: Recast.h:384
A dynamic heightfield representing obstructed space.
Definition: Recast.h:313
-Contains triangle meshes that represent detailed height data associated with the polygons in its asso...
Definition: Recast.h:485
-Represents a polygon mesh suitable for use in building a navigation mesh.
Definition: Recast.h:455
+Contains triangle meshes that represent detailed height data associated with the polygons in its asso...
Definition: Recast.h:487
+Represents a polygon mesh suitable for use in building a navigation mesh.
Definition: Recast.h:457
diff --git a/RecastDump_8h_source.html b/RecastDump_8h_source.html
index 8b44411b..b133002e 100644
--- a/RecastDump_8h_source.html
+++ b/RecastDump_8h_source.html
@@ -145,10 +145,10 @@ $(document).ready(function(){initNavTree('RecastDump_8h_source.html',''); initRe
virtual bool write(const void *ptr, const size_t size)=0
virtual bool read(void *ptr, const size_t size)=0
virtual ~duFileIO()
Definition: RecastDump.cpp:27
-A compact, static heightfield representing unobstructed space.
Definition: Recast.h:352
-Represents a group of related contours.
Definition: Recast.h:431
-Contains triangle meshes that represent detailed height data associated with the polygons in its asso...
Definition: Recast.h:485
-Represents a polygon mesh suitable for use in building a navigation mesh.
Definition: Recast.h:455
+A compact, static heightfield representing unobstructed space.
Definition: Recast.h:354
+Represents a group of related contours.
Definition: Recast.h:433
+Contains triangle meshes that represent detailed height data associated with the polygons in its asso...
Definition: Recast.h:487
+Represents a polygon mesh suitable for use in building a navigation mesh.
Definition: Recast.h:457
diff --git a/RecastFilter_8cpp.html b/RecastFilter_8cpp.html
index d5478acc..4c2d0605 100644
--- a/RecastFilter_8cpp.html
+++ b/RecastFilter_8cpp.html
@@ -98,13 +98,13 @@ $(document).ready(function(){initNavTree('RecastFilter_8cpp.html',''); initResiz
|
| void | rcFilterLowHangingWalkableObstacles (rcContext *context, const int walkableClimb, rcHeightfield &heightfield) |
-| | Marks non-walkable spans as walkable if their maximum is within walkableClimb of a walkable neighbor. More...
|
+| | Marks non-walkable spans as walkable if their maximum is within walkableClimb of the span below them. More...
|
| |
| void | rcFilterLedgeSpans (rcContext *context, const int walkableHeight, const int walkableClimb, rcHeightfield &heightfield) |
| | Marks spans that are ledges as not-walkable. More...
|
| |
| void | rcFilterWalkableLowHeightSpans (rcContext *context, const int walkableHeight, rcHeightfield &heightfield) |
-| | Marks walkable spans as not walkable if the clearance above the span is less than the specified height. More...
|
+| | Marks walkable spans as not walkable if the clearance above the span is less than the specified walkableHeight. More...
|
| |
diff --git a/Recast_8h.html b/Recast_8h.html
index 36841f71..1b931b8a 100644
--- a/Recast_8h.html
+++ b/Recast_8h.html
@@ -342,13 +342,13 @@ Functions
| | Rasterizes a triangle list into the specified heightfield. More...
|
| |
| void | rcFilterLowHangingWalkableObstacles (rcContext *context, int walkableClimb, rcHeightfield &heightfield) |
-| | Marks non-walkable spans as walkable if their maximum is within walkableClimb of a walkable neighbor. More...
|
+| | Marks non-walkable spans as walkable if their maximum is within walkableClimb of the span below them. More...
|
| |
| void | rcFilterLedgeSpans (rcContext *context, int walkableHeight, int walkableClimb, rcHeightfield &heightfield) |
| | Marks spans that are ledges as not-walkable. More...
|
| |
| void | rcFilterWalkableLowHeightSpans (rcContext *context, int walkableHeight, rcHeightfield &heightfield) |
-| | Marks walkable spans as not walkable if the clearance above the span is less than the specified height. More...
|
+| | Marks walkable spans as not walkable if the clearance above the span is less than the specified walkableHeight. More...
|
| |
| int | rcGetHeightFieldSpanCount (rcContext *context, const rcHeightfield &heightfield) |
| | Returns the number of spans contained in the specified heightfield. More...
|
@@ -551,11 +551,11 @@ Variables
| RC_TIMER_FILTER_BORDER | The time to filter ledge spans. (See: rcFilterLedgeSpans)
|
-| RC_TIMER_FILTER_WALKABLE | The time to filter low height spans. (See: rcFilterWalkableLowHeightSpans)
+ |
| RC_TIMER_FILTER_WALKABLE | The time to filter low height spans. (See: rcFilterWalkableLowHeightSpans)
|
| RC_TIMER_MEDIAN_AREA | The time to apply the median filter. (See: rcMedianFilterWalkableArea)
|
-| RC_TIMER_FILTER_LOW_OBSTACLES | The time to filter low obstacles. (See: rcFilterLowHangingWalkableObstacles)
+ |
| RC_TIMER_FILTER_LOW_OBSTACLES | The time to filter low obstacles. (See: rcFilterLowHangingWalkableObstacles)
|
| RC_TIMER_BUILD_POLYMESH | The time to build the polygon mesh. (See: rcBuildPolyMesh)
|
diff --git a/Recast_8h_source.html b/Recast_8h_source.html
index 2f4c692a..982afc84 100644
--- a/Recast_8h_source.html
+++ b/Recast_8h_source.html
@@ -281,449 +281,451 @@ $(document).ready(function(){initNavTree('Recast_8h_source.html',''); initResiza
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 650 template<
class T>
inline void rcSwap(T& a, T& b) { T t = a; a = b; b = t; }
-
- 656 template<
class T>
inline T
rcMin(T a, T b) {
return a < b ? a : b; }
-
- 662 template<
class T>
inline T
rcMax(T a, T b) {
return a > b ? a : b; }
-
- 667 template<
class T>
inline T
rcAbs(T a) {
return a < 0 ? -a : a; }
-
- 672 template<
class T>
inline T
rcSqr(T a) {
return a * a; }
-
- 679 template<
class T>
inline T
rcClamp(T value, T minInclusive, T maxInclusive)
-
- 681 return value < minInclusive ? minInclusive: (value > maxInclusive ? maxInclusive : value);
-
-
-
-
-
- 697 inline void rcVcross(
float* dest,
const float* v1,
const float* v2)
-
- 699 dest[0] = v1[1]*v2[2] - v1[2]*v2[1];
- 700 dest[1] = v1[2]*v2[0] - v1[0]*v2[2];
- 701 dest[2] = v1[0]*v2[1] - v1[1]*v2[0];
-
-
- 708 inline float rcVdot(
const float* v1,
const float* v2)
-
- 710 return v1[0]*v2[0] + v1[1]*v2[1] + v1[2]*v2[2];
-
-
- 718 inline void rcVmad(
float* dest,
const float* v1,
const float* v2,
const float s)
-
- 720 dest[0] = v1[0]+v2[0]*s;
- 721 dest[1] = v1[1]+v2[1]*s;
- 722 dest[2] = v1[2]+v2[2]*s;
-
-
- 729 inline void rcVadd(
float* dest,
const float* v1,
const float* v2)
-
- 731 dest[0] = v1[0]+v2[0];
- 732 dest[1] = v1[1]+v2[1];
- 733 dest[2] = v1[2]+v2[2];
-
-
- 740 inline void rcVsub(
float* dest,
const float* v1,
const float* v2)
-
- 742 dest[0] = v1[0]-v2[0];
- 743 dest[1] = v1[1]-v2[1];
- 744 dest[2] = v1[2]-v2[2];
-
-
- 750 inline void rcVmin(
float* mn,
const float* v)
-
- 752 mn[0] =
rcMin(mn[0], v[0]);
- 753 mn[1] =
rcMin(mn[1], v[1]);
- 754 mn[2] =
rcMin(mn[2], v[2]);
-
-
- 760 inline void rcVmax(
float* mx,
const float* v)
-
- 762 mx[0] =
rcMax(mx[0], v[0]);
- 763 mx[1] =
rcMax(mx[1], v[1]);
- 764 mx[2] =
rcMax(mx[2], v[2]);
-
-
- 770 inline void rcVcopy(
float* dest,
const float* v)
-
-
-
-
-
-
- 781 inline float rcVdist(
const float* v1,
const float* v2)
-
- 783 float dx = v2[0] - v1[0];
- 784 float dy = v2[1] - v1[1];
- 785 float dz = v2[2] - v1[2];
- 786 return rcSqrt(dx*dx + dy*dy + dz*dz);
-
-
-
-
- 795 float dx = v2[0] - v1[0];
- 796 float dy = v2[1] - v1[1];
- 797 float dz = v2[2] - v1[2];
- 798 return dx*dx + dy*dy + dz*dz;
-
-
-
-
-
-
-
-
-
-
-
- 822 void rcCalcBounds(
const float* verts,
int numVerts,
float* minBounds,
float* maxBounds);
-
- 831 void rcCalcGridSize(
const float* minBounds,
const float* maxBounds,
float cellSize,
int* sizeX,
int* sizeZ);
-
-
- 849 const float* minBounds,
const float* maxBounds,
- 850 float cellSize,
float cellHeight);
-
-
- 872 const int* tris,
int numTris,
unsigned char* triAreaIDs);
-
-
- 893 const int* tris,
int numTris,
unsigned char* triAreaIDs);
-
-
-
- 915 unsigned short spanMin,
unsigned short spanMax,
- 916 unsigned char areaID,
int flagMergeThreshold);
-
-
- 936 const float* v0,
const float* v1,
const float* v2,
- 937 unsigned char areaID,
rcHeightfield& heightfield,
int flagMergeThreshold = 1);
-
-
- 956 const float* verts,
int numVerts,
- 957 const int* tris,
const unsigned char* triAreaIDs,
int numTris,
-
-
-
- 977 const float* verts,
int numVerts,
- 978 const unsigned short* tris,
const unsigned char* triAreaIDs,
int numTris,
-
-
-
- 998 const float* verts,
const unsigned char* triAreaIDs,
int numTris,
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 652 template<
class T>
inline void rcSwap(T& a, T& b) { T t = a; a = b; b = t; }
+
+ 658 template<
class T>
inline T
rcMin(T a, T b) {
return a < b ? a : b; }
+
+ 664 template<
class T>
inline T
rcMax(T a, T b) {
return a > b ? a : b; }
+
+ 669 template<
class T>
inline T
rcAbs(T a) {
return a < 0 ? -a : a; }
+
+ 674 template<
class T>
inline T
rcSqr(T a) {
return a * a; }
+
+ 681 template<
class T>
inline T
rcClamp(T value, T minInclusive, T maxInclusive)
+
+ 683 return value < minInclusive ? minInclusive: (value > maxInclusive ? maxInclusive : value);
+
+
+
+
+
+ 699 inline void rcVcross(
float* dest,
const float* v1,
const float* v2)
+
+ 701 dest[0] = v1[1]*v2[2] - v1[2]*v2[1];
+ 702 dest[1] = v1[2]*v2[0] - v1[0]*v2[2];
+ 703 dest[2] = v1[0]*v2[1] - v1[1]*v2[0];
+
+
+ 710 inline float rcVdot(
const float* v1,
const float* v2)
+
+ 712 return v1[0]*v2[0] + v1[1]*v2[1] + v1[2]*v2[2];
+
+
+ 720 inline void rcVmad(
float* dest,
const float* v1,
const float* v2,
const float s)
+
+ 722 dest[0] = v1[0]+v2[0]*s;
+ 723 dest[1] = v1[1]+v2[1]*s;
+ 724 dest[2] = v1[2]+v2[2]*s;
+
+
+ 731 inline void rcVadd(
float* dest,
const float* v1,
const float* v2)
+
+ 733 dest[0] = v1[0]+v2[0];
+ 734 dest[1] = v1[1]+v2[1];
+ 735 dest[2] = v1[2]+v2[2];
+
+
+ 742 inline void rcVsub(
float* dest,
const float* v1,
const float* v2)
+
+ 744 dest[0] = v1[0]-v2[0];
+ 745 dest[1] = v1[1]-v2[1];
+ 746 dest[2] = v1[2]-v2[2];
+
+
+ 752 inline void rcVmin(
float* mn,
const float* v)
+
+ 754 mn[0] =
rcMin(mn[0], v[0]);
+ 755 mn[1] =
rcMin(mn[1], v[1]);
+ 756 mn[2] =
rcMin(mn[2], v[2]);
+
+
+ 762 inline void rcVmax(
float* mx,
const float* v)
+
+ 764 mx[0] =
rcMax(mx[0], v[0]);
+ 765 mx[1] =
rcMax(mx[1], v[1]);
+ 766 mx[2] =
rcMax(mx[2], v[2]);
+
+
+ 772 inline void rcVcopy(
float* dest,
const float* v)
+
+
+
+
+
+
+ 783 inline float rcVdist(
const float* v1,
const float* v2)
+
+ 785 float dx = v2[0] - v1[0];
+ 786 float dy = v2[1] - v1[1];
+ 787 float dz = v2[2] - v1[2];
+ 788 return rcSqrt(dx*dx + dy*dy + dz*dz);
+
+
+
+
+ 797 float dx = v2[0] - v1[0];
+ 798 float dy = v2[1] - v1[1];
+ 799 float dz = v2[2] - v1[2];
+ 800 return dx*dx + dy*dy + dz*dz;
+
+
+
+
+
+
+
+
+
+
+
+ 824 void rcCalcBounds(
const float* verts,
int numVerts,
float* minBounds,
float* maxBounds);
+
+ 833 void rcCalcGridSize(
const float* minBounds,
const float* maxBounds,
float cellSize,
int* sizeX,
int* sizeZ);
+
+
+ 851 const float* minBounds,
const float* maxBounds,
+ 852 float cellSize,
float cellHeight);
+
+
+ 874 const int* tris,
int numTris,
unsigned char* triAreaIDs);
+
+
+ 895 const int* tris,
int numTris,
unsigned char* triAreaIDs);
+
+
+
+ 917 unsigned short spanMin,
unsigned short spanMax,
+ 918 unsigned char areaID,
int flagMergeThreshold);
+
+
+ 938 const float* v0,
const float* v1,
const float* v2,
+ 939 unsigned char areaID,
rcHeightfield& heightfield,
int flagMergeThreshold = 1);
+
+
+ 958 const float* verts,
int numVerts,
+ 959 const int* tris,
const unsigned char* triAreaIDs,
int numTris,
+
+
+
+ 979 const float* verts,
int numVerts,
+ 980 const unsigned short* tris,
const unsigned char* triAreaIDs,
int numTris,
+
+
+
+ 1000 const float* verts,
const unsigned char* triAreaIDs,
int numTris,
+
+
-
-
-
-
-
-
-
-
-
-
-
-
- 1127 void rcMarkBoxArea(
rcContext* context,
const float* boxMinBounds,
const float* boxMaxBounds,
unsigned char areaId,
-
-
-
- 1148 float minY,
float maxY,
unsigned char areaId,
-
-
- 1164 int rcOffsetPoly(
const float* verts,
int numVerts,
float offset,
float* outVerts,
int maxOutVerts);
-
-
-
-
-
-
-
-
-
-
-
- 1224 int borderSize,
int minRegionArea,
int mergeRegionArea);
-
-
-
- 1232 const unsigned int shift = (
unsigned int)direction * 6;
- 1233 const unsigned int con = span.
con;
- 1234 span.
con = (con & ~(0x3f << shift)) | (((
unsigned int)neighborIndex & 0x3f) << shift);
-
-
-
-
- 1243 const unsigned int shift = (
unsigned int)direction * 6;
- 1244 return (span.
con >> shift) & 0x3f;
-
-
-
-
- 1252 static const int offset[4] = { -1, 0, 1, 0, };
- 1253 return offset[direction & 0x03];
-
-
-
-
-
- 1262 static const int offset[4] = { 0, 1, 0, -1 };
- 1263 return offset[direction & 0x03];
-
-
-
-
- 1272 static const int dirs[5] = { 3, 0, -1, 2, 1 };
- 1273 return dirs[((offsetZ + 1) << 1) + offsetX];
-
-
-
-
- 1292 int borderSize,
int walkableHeight,
-
-
-
- 1307 float maxError,
int maxEdgeLen,
-
-
-
-
-
-
-
- 1340 float sampleDist,
float sampleMaxError,
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+ 1129 void rcMarkBoxArea(
rcContext* context,
const float* boxMinBounds,
const float* boxMaxBounds,
unsigned char areaId,
+
+
+
+ 1150 float minY,
float maxY,
unsigned char areaId,
+
+
+ 1166 int rcOffsetPoly(
const float* verts,
int numVerts,
float offset,
float* outVerts,
int maxOutVerts);
+
+
+
+
+
+
+
+
+
+
+
+ 1226 int borderSize,
int minRegionArea,
int mergeRegionArea);
+
+
+
+ 1234 const unsigned int shift = (
unsigned int)direction * 6;
+ 1235 const unsigned int con = span.
con;
+ 1236 span.
con = (con & ~(0x3f << shift)) | (((
unsigned int)neighborIndex & 0x3f) << shift);
+
+
+
+
+ 1245 const unsigned int shift = (
unsigned int)direction * 6;
+ 1246 return (span.
con >> shift) & 0x3f;
+
+
+
+
+ 1254 static const int offset[4] = { -1, 0, 1, 0, };
+ 1255 return offset[direction & 0x03];
+
+
+
+
+
+ 1264 static const int offset[4] = { 0, 1, 0, -1 };
+ 1265 return offset[direction & 0x03];
+
+
+
+
+ 1274 static const int dirs[5] = { 3, 0, -1, 2, 1 };
+ 1275 return dirs[((offsetZ + 1) << 1) + offsetX];
+
+
+
+
+ 1294 int borderSize,
int walkableHeight,
+
+
+
+ 1309 float maxError,
int maxEdgeLen,
+
+
+
+
+
+
+
+ 1342 float sampleDist,
float sampleMaxError,
+
+
+
+
+
-
+
-
-
-
-float rcVdot(const float *v1, const float *v2)
Derives the dot product of two vectors.
Definition: Recast.h:708
+
+
+
+
+float rcVdot(const float *v1, const float *v2)
Derives the dot product of two vectors.
Definition: Recast.h:710
rcTimerLabel
Recast performance timer categories.
Definition: Recast.h:40
@ RC_TIMER_BUILD_REGIONS_FILTER
The time to filter out small regions. (See: rcBuildRegions, rcBuildRegionsMonotone)
Definition: Recast.h:90
@ RC_TIMER_BUILD_POLYMESHDETAIL
The time to build the polygon mesh detail. (See: rcBuildPolyMeshDetail)
Definition: Recast.h:94
@@ -754,44 +756,44 @@ $(document).ready(function(){initNavTree('Recast_8h_source.html',''); initResiza
@ RC_TIMER_BUILD_REGIONS
The total time to build the regions. (See: rcBuildRegions, rcBuildRegionsMonotone)
Definition: Recast.h:82
@ RC_TIMER_FILTER_LOW_OBSTACLES
The time to filter low obstacles. (See: rcFilterLowHangingWalkableObstacles)
Definition: Recast.h:62
@ RC_TIMER_MEDIAN_AREA
The time to apply the median filter. (See: rcMedianFilterWalkableArea)
Definition: Recast.h:60
-float rcVdist(const float *v1, const float *v2)
Returns the distance between two points.
Definition: Recast.h:781
-void rcVmad(float *dest, const float *v1, const float *v2, const float s)
Performs a scaled vector addition.
Definition: Recast.h:718
+float rcVdist(const float *v1, const float *v2)
Returns the distance between two points.
Definition: Recast.h:783
+void rcVmad(float *dest, const float *v1, const float *v2, const float s)
Performs a scaled vector addition.
Definition: Recast.h:720
float rcSqrt(float x)
Returns the square root of the value.
Definition: Recast.cpp:53
static const int RC_SPAN_MAX_HEIGHT
Defines the maximum value for rcSpan::smin and rcSpan::smax.
Definition: Recast.h:286
-void rcSwap(T &a, T &b)
Swaps the values of the two parameters.
Definition: Recast.h:650
-void rcVcross(float *dest, const float *v1, const float *v2)
Derives the cross product of two vectors.
Definition: Recast.h:697
-void rcVmax(float *mx, const float *v)
Selects the maximum value of each element from the specified vectors.
Definition: Recast.h:760
-static const unsigned char RC_NULL_AREA
Represents the null area.
Definition: Recast.h:633
+void rcSwap(T &a, T &b)
Swaps the values of the two parameters.
Definition: Recast.h:652
+void rcVcross(float *dest, const float *v1, const float *v2)
Derives the cross product of two vectors.
Definition: Recast.h:699
+void rcVmax(float *mx, const float *v)
Selects the maximum value of each element from the specified vectors.
Definition: Recast.h:762
+static const unsigned char RC_NULL_AREA
Represents the null area.
Definition: Recast.h:635
static const int RC_SPANS_PER_POOL
The number of spans allocated per span spool.
Definition: Recast.h:290
-static const int RC_AREA_BORDER
Area border flag.
Definition: Recast.h:609
-static const unsigned char RC_WALKABLE_AREA
The default area id used to indicate a walkable polygon.
Definition: Recast.h:638
+static const int RC_AREA_BORDER
Area border flag.
Definition: Recast.h:611
+static const unsigned char RC_WALKABLE_AREA
The default area id used to indicate a walkable polygon.
Definition: Recast.h:640
void rcIgnoreUnused(const T &)
Used to ignore unused function parameters and silence any compiler warnings.
Definition: Recast.h:26
-void rcVsub(float *dest, const float *v1, const float *v2)
Performs a vector subtraction.
Definition: Recast.h:740
-rcBuildContoursFlags
Contour build flags.
Definition: Recast.h:614
-@ RC_CONTOUR_TESS_WALL_EDGES
Tessellate solid (impassable) edges during contour simplification.
Definition: Recast.h:615
-@ RC_CONTOUR_TESS_AREA_EDGES
Tessellate edges between areas during contour simplification.
Definition: Recast.h:616
-static const int RC_NOT_CONNECTED
The value returned by rcGetCon if the specified direction is not connected to another span.
Definition: Recast.h:642
-static const unsigned short RC_MESH_NULL_IDX
An value which indicates an invalid index within a mesh.
Definition: Recast.h:628
+void rcVsub(float *dest, const float *v1, const float *v2)
Performs a vector subtraction.
Definition: Recast.h:742
+rcBuildContoursFlags
Contour build flags.
Definition: Recast.h:616
+@ RC_CONTOUR_TESS_WALL_EDGES
Tessellate solid (impassable) edges during contour simplification.
Definition: Recast.h:617
+@ RC_CONTOUR_TESS_AREA_EDGES
Tessellate edges between areas during contour simplification.
Definition: Recast.h:618
+static const int RC_NOT_CONNECTED
The value returned by rcGetCon if the specified direction is not connected to another span.
Definition: Recast.h:644
+static const unsigned short RC_MESH_NULL_IDX
An value which indicates an invalid index within a mesh.
Definition: Recast.h:630
static const int RC_SPAN_HEIGHT_BITS
Defines the number of bits allocated to rcSpan::smin and rcSpan::smax.
Definition: Recast.h:284
rcLogCategory
Recast log categories.
Definition: Recast.h:31
@ RC_LOG_WARNING
A warning log entry.
Definition: Recast.h:33
@ RC_LOG_PROGRESS
A progress log entry.
Definition: Recast.h:32
@ RC_LOG_ERROR
An error log entry.
Definition: Recast.h:34
-static const int RC_CONTOUR_REG_MASK
Applied to the region id field of contour vertices in order to extract the region id.
Definition: Recast.h:623
-static const int RC_BORDER_VERTEX
Border vertex flag.
Definition: Recast.h:602
-T rcSqr(T a)
Returns the square of the value.
Definition: Recast.h:672
-void rcVcopy(float *dest, const float *v)
Performs a vector copy.
Definition: Recast.h:770
-float rcVdistSqr(const float *v1, const float *v2)
Returns the square of the distance between two points.
Definition: Recast.h:793
-T rcMin(T a, T b)
Returns the minimum of two values.
Definition: Recast.h:656
-void rcVmin(float *mn, const float *v)
Selects the minimum value of each element from the specified vectors.
Definition: Recast.h:750
-static const unsigned short RC_MULTIPLE_REGS
Polygon touches multiple regions.
Definition: Recast.h:593
-void rcVadd(float *dest, const float *v1, const float *v2)
Performs a vector addition.
Definition: Recast.h:729
-static const unsigned short RC_BORDER_REG
Heightfield border flag.
Definition: Recast.h:585
+static const int RC_CONTOUR_REG_MASK
Applied to the region id field of contour vertices in order to extract the region id.
Definition: Recast.h:625
+static const int RC_BORDER_VERTEX
Border vertex flag.
Definition: Recast.h:604
+T rcSqr(T a)
Returns the square of the value.
Definition: Recast.h:674
+void rcVcopy(float *dest, const float *v)
Performs a vector copy.
Definition: Recast.h:772
+float rcVdistSqr(const float *v1, const float *v2)
Returns the square of the distance between two points.
Definition: Recast.h:795
+T rcMin(T a, T b)
Returns the minimum of two values.
Definition: Recast.h:658
+void rcVmin(float *mn, const float *v)
Selects the minimum value of each element from the specified vectors.
Definition: Recast.h:752
+static const unsigned short RC_MULTIPLE_REGS
Polygon touches multiple regions.
Definition: Recast.h:595
+void rcVadd(float *dest, const float *v1, const float *v2)
Performs a vector addition.
Definition: Recast.h:731
+static const unsigned short RC_BORDER_REG
Heightfield border flag.
Definition: Recast.h:587
static const float RC_PI
The value of PI used by Recast.
Definition: Recast.h:23
-T rcMax(T a, T b)
Returns the maximum of two values.
Definition: Recast.h:662
-void rcVnormalize(float *v)
Normalizes the vector.
Definition: Recast.h:803
-T rcClamp(T value, T minInclusive, T maxInclusive)
Clamps the value to the specified range.
Definition: Recast.h:679
-T rcAbs(T a)
Returns the absolute value.
Definition: Recast.h:667
+T rcMax(T a, T b)
Returns the maximum of two values.
Definition: Recast.h:664
+void rcVnormalize(float *v)
Normalizes the vector.
Definition: Recast.h:805
+T rcClamp(T value, T minInclusive, T maxInclusive)
Clamps the value to the specified range.
Definition: Recast.h:681
+T rcAbs(T a)
Returns the absolute value.
Definition: Recast.h:669
Provides an interface for optional logging and performance tracking of the Recast build process.
Definition: Recast.h:115
virtual ~rcContext()
Definition: Recast.h:120
void enableLog(bool state)
Enables or disables logging.
Definition: Recast.h:124
@@ -814,8 +816,8 @@ $(document).ready(function(){initNavTree('Recast_8h_source.html',''); initResiza
A helper to first start a timer and then stop it when this helper goes out of scope.
Definition: Recast.h:197
~rcScopedTimer()
Definition: Recast.h:203
rcScopedTimer(rcContext *ctx, const rcTimerLabel label)
Constructs an instance and starts the timer.
Definition: Recast.h:202
-void rcFilterLowHangingWalkableObstacles(rcContext *context, int walkableClimb, rcHeightfield &heightfield)
Marks non-walkable spans as walkable if their maximum is within walkableClimb of a walkable neighbor.
Definition: RecastFilter.cpp:24
-void rcFilterWalkableLowHeightSpans(rcContext *context, int walkableHeight, rcHeightfield &heightfield)
Marks walkable spans as not walkable if the clearance above the span is less than the specified heigh...
Definition: RecastFilter.cpp:162
+void rcFilterLowHangingWalkableObstacles(rcContext *context, int walkableClimb, rcHeightfield &heightfield)
Marks non-walkable spans as walkable if their maximum is within walkableClimb of the span below them.
Definition: RecastFilter.cpp:29
+void rcFilterWalkableLowHeightSpans(rcContext *context, int walkableHeight, rcHeightfield &heightfield)
Marks walkable spans as not walkable if the clearance above the span is less than the specified walka...
Definition: RecastFilter.cpp:162
void rcMarkConvexPolyArea(rcContext *context, const float *verts, int numVerts, float minY, float maxY, unsigned char areaId, rcCompactHeightfield &compactHeightfield)
Applies the area id to the all spans within the specified convex polygon.
Definition: RecastArea.cpp:432
rcPolyMesh * rcAllocPolyMesh()
Allocates a polygon mesh object using the Recast allocator.
Definition: Recast.cpp:222
bool rcRasterizeTriangle(rcContext *context, const float *v0, const float *v1, const float *v2, unsigned char areaID, rcHeightfield &heightfield, int flagMergeThreshold=1)
Rasterizes a single triangle into the specified heightfield.
Definition: RecastRasterization.cpp:457
@@ -836,13 +838,13 @@ $(document).ready(function(){initNavTree('Recast_8h_source.html',''); initResiza
void rcFreeHeightfieldLayerSet(rcHeightfieldLayerSet *layerSet)
Frees the specified heightfield layer set using the Recast allocator.
Definition: Recast.cpp:165
bool rcBuildHeightfieldLayers(rcContext *ctx, const rcCompactHeightfield &chf, int borderSize, int walkableHeight, rcHeightfieldLayerSet &lset)
Builds a layer set from the specified compact heightfield.
Definition: RecastLayers.cpp:104
bool rcMergePolyMeshDetails(rcContext *ctx, rcPolyMeshDetail **meshes, const int nmeshes, rcPolyMeshDetail &mesh)
Merges multiple detail meshes into a single detail mesh.
Definition: RecastMeshDetail.cpp:1401
-int rcGetDirOffsetY(int direction)
Gets the standard height (z-axis) offset for the specified direction.
Definition: Recast.h:1260
-int rcGetDirOffsetX(int direction)
Gets the standard width (x-axis) offset for the specified direction.
Definition: Recast.h:1250
+int rcGetDirOffsetY(int direction)
Gets the standard height (z-axis) offset for the specified direction.
Definition: Recast.h:1262
+int rcGetDirOffsetX(int direction)
Gets the standard width (x-axis) offset for the specified direction.
Definition: Recast.h:1252
bool rcMedianFilterWalkableArea(rcContext *context, rcCompactHeightfield &compactHeightfield)
Applies a median filter to walkable area types (based on area id), removing noise.
Definition: RecastArea.cpp:289
bool rcBuildPolyMesh(rcContext *ctx, const rcContourSet &cset, const int nvp, rcPolyMesh &mesh)
Builds a polygon mesh from the provided contours.
Definition: RecastMesh.cpp:990
bool rcAddSpan(rcContext *context, rcHeightfield &heightfield, int x, int z, unsigned short spanMin, unsigned short spanMax, unsigned char areaID, int flagMergeThreshold)
Adds a span to the specified heightfield.
Definition: RecastRasterization.cpp:191
void rcCalcGridSize(const float *minBounds, const float *maxBounds, float cellSize, int *sizeX, int *sizeZ)
Calculates the grid size based on the bounding box and grid cell size.
Definition: Recast.cpp:300
-void rcSetCon(rcCompactSpan &span, int direction, int neighborIndex)
Sets the neighbor connection data for the specified direction.
Definition: Recast.h:1230
+void rcSetCon(rcCompactSpan &span, int direction, int neighborIndex)
Sets the neighbor connection data for the specified direction.
Definition: Recast.h:1232
void rcCalcBounds(const float *verts, int numVerts, float *minBounds, float *maxBounds)
Calculates the bounding box of an array of vertices.
Definition: Recast.cpp:287
void rcFreeCompactHeightfield(rcCompactHeightfield *compactHeightfield)
Frees the specified compact heightfield object using the Recast allocator.
Definition: Recast.cpp:127
bool rcMergePolyMeshes(rcContext *ctx, rcPolyMesh **meshes, const int nmeshes, rcPolyMesh &mesh)
Merges multiple polygon meshes into a single mesh.
Definition: RecastMesh.cpp:1309
@@ -850,44 +852,44 @@ $(document).ready(function(){initNavTree('Recast_8h_source.html',''); initResiza
int rcGetHeightFieldSpanCount(rcContext *context, const rcHeightfield &heightfield)
Returns the number of spans contained in the specified heightfield.
Definition: Recast.cpp:384
bool rcBuildRegionsMonotone(rcContext *ctx, rcCompactHeightfield &chf, int borderSize, int minRegionArea, int mergeRegionArea)
Builds region data for the heightfield using simple monotone partitioning.
Definition: RecastRegion.cpp:1357
void rcClearUnwalkableTriangles(rcContext *context, float walkableSlopeAngle, const float *verts, int numVerts, const int *tris, int numTris, unsigned char *triAreaIDs)
Sets the area id of all triangles with a slope greater than or equal to the specified value to RC_NUL...
Definition: Recast.cpp:360
-int rcGetCon(const rcCompactSpan &span, int direction)
Gets neighbor connection data for the specified direction.
Definition: Recast.h:1241
-void rcFilterLedgeSpans(rcContext *context, int walkableHeight, int walkableClimb, rcHeightfield &heightfield)
Marks spans that are ledges as not-walkable.
Definition: RecastFilter.cpp:62
+int rcGetCon(const rcCompactSpan &span, int direction)
Gets neighbor connection data for the specified direction.
Definition: Recast.h:1243
+void rcFilterLedgeSpans(rcContext *context, int walkableHeight, int walkableClimb, rcHeightfield &heightfield)
Marks spans that are ledges as not-walkable.
Definition: RecastFilter.cpp:67
bool rcRasterizeTriangles(rcContext *context, const float *verts, int numVerts, const int *tris, const unsigned char *triAreaIDs, int numTris, rcHeightfield &heightfield, int flagMergeThreshold=1)
Rasterizes an indexed triangle mesh into the specified heightfield.
Definition: RecastRasterization.cpp:477
rcHeightfieldLayerSet * rcAllocHeightfieldLayerSet()
Allocates a heightfield layer set using the Recast allocator.
Definition: Recast.cpp:160
bool rcCopyPolyMesh(rcContext *ctx, const rcPolyMesh &src, rcPolyMesh &dst)
Copies the poly mesh data from src to dst.
Definition: RecastMesh.cpp:1487
bool rcBuildContours(rcContext *ctx, const rcCompactHeightfield &chf, float maxError, int maxEdgeLen, rcContourSet &cset, int buildFlags=RC_CONTOUR_TESS_WALL_EDGES)
Builds a contour set from the region outlines in the provided compact heightfield.
Definition: RecastContour.cpp:823
void rcFreeContourSet(rcContourSet *contourSet)
Frees the specified contour set using the Recast allocator.
Definition: Recast.cpp:193
bool rcErodeWalkableArea(rcContext *context, int erosionRadius, rcCompactHeightfield &compactHeightfield)
Erodes the walkable area within the heightfield by the specified radius.
Definition: RecastArea.cpp:75
-int rcGetDirForOffset(int offsetX, int offsetZ)
Gets the direction for the specified offset.
Definition: Recast.h:1270
+int rcGetDirForOffset(int offsetX, int offsetZ)
Gets the direction for the specified offset.
Definition: Recast.h:1272
bool rcBuildRegions(rcContext *ctx, rcCompactHeightfield &chf, int borderSize, int minRegionArea, int mergeRegionArea)
Builds region data for the heightfield using watershed partitioning.
Definition: RecastRegion.cpp:1530
int rcOffsetPoly(const float *verts, int numVerts, float offset, float *outVerts, int maxOutVerts)
Expands a convex polygon along its vertex normals by the given offset amount.
Definition: RecastArea.cpp:532
-Provides information on the content of a cell column in a compact heightfield.
Definition: Recast.h:335
-unsigned int count
Number of spans in the column.
Definition: Recast.h:337
-unsigned int index
Index to the first span in the column.
Definition: Recast.h:336
-A compact, static heightfield representing unobstructed space.
Definition: Recast.h:352
-int walkableHeight
The walkable height used during the build of the field. (See: rcConfig::walkableHeight)
Definition: Recast.h:359
-rcCompactSpan * spans
Array of spans. [Size: spanCount].
Definition: Recast.h:369
-int height
The height of the heightfield. (Along the z-axis in cell units.)
Definition: Recast.h:357
+Provides information on the content of a cell column in a compact heightfield.
Definition: Recast.h:337
+unsigned int count
Number of spans in the column.
Definition: Recast.h:339
+unsigned int index
Index to the first span in the column.
Definition: Recast.h:338
+A compact, static heightfield representing unobstructed space.
Definition: Recast.h:354
+int walkableHeight
The walkable height used during the build of the field. (See: rcConfig::walkableHeight)
Definition: Recast.h:361
+rcCompactSpan * spans
Array of spans. [Size: spanCount].
Definition: Recast.h:371
+int height
The height of the heightfield. (Along the z-axis in cell units.)
Definition: Recast.h:359
rcCompactHeightfield()
Definition: Recast.cpp:132
-unsigned short maxDistance
The maximum distance value of any span within the field.
Definition: Recast.h:362
-float ch
The height of each cell. (The minimum increment along the y-axis.)
Definition: Recast.h:367
-float bmax[3]
The maximum bounds in world space. [(x, y, z)].
Definition: Recast.h:365
-int borderSize
The AABB border size used during the build of the field. (See: rcConfig::borderSize)
Definition: Recast.h:361
-unsigned short maxRegions
The maximum region id of any span within the field.
Definition: Recast.h:363
-int spanCount
The number of spans in the heightfield.
Definition: Recast.h:358
-float cs
The size of each cell. (On the xz-plane.)
Definition: Recast.h:366
-int width
The width of the heightfield. (Along the x-axis in cell units.)
Definition: Recast.h:356
-rcCompactCell * cells
Array of cells. [Size: width*height].
Definition: Recast.h:368
-unsigned char * areas
Array containing area id data. [Size: spanCount].
Definition: Recast.h:371
-int walkableClimb
The walkable climb used during the build of the field. (See: rcConfig::walkableClimb)
Definition: Recast.h:360
-float bmin[3]
The minimum bounds in world space. [(x, y, z)].
Definition: Recast.h:364
+unsigned short maxDistance
The maximum distance value of any span within the field.
Definition: Recast.h:364
+float ch
The height of each cell. (The minimum increment along the y-axis.)
Definition: Recast.h:369
+float bmax[3]
The maximum bounds in world space. [(x, y, z)].
Definition: Recast.h:367
+int borderSize
The AABB border size used during the build of the field. (See: rcConfig::borderSize)
Definition: Recast.h:363
+unsigned short maxRegions
The maximum region id of any span within the field.
Definition: Recast.h:365
+int spanCount
The number of spans in the heightfield.
Definition: Recast.h:360
+float cs
The size of each cell. (On the xz-plane.)
Definition: Recast.h:368
+int width
The width of the heightfield. (Along the x-axis in cell units.)
Definition: Recast.h:358
+rcCompactCell * cells
Array of cells. [Size: width*height].
Definition: Recast.h:370
+unsigned char * areas
Array containing area id data. [Size: spanCount].
Definition: Recast.h:373
+int walkableClimb
The walkable climb used during the build of the field. (See: rcConfig::walkableClimb)
Definition: Recast.h:362
+float bmin[3]
The minimum bounds in world space. [(x, y, z)].
Definition: Recast.h:366
~rcCompactHeightfield()
Definition: Recast.cpp:152
-unsigned short * dist
Array containing border distance data. [Size: spanCount].
Definition: Recast.h:370
-Represents a span of unobstructed space within a compact heightfield.
Definition: Recast.h:342
-unsigned short y
The lower extent of the span. (Measured from the heightfield's base.)
Definition: Recast.h:343
-unsigned int h
The height of the span. (Measured from y.)
Definition: Recast.h:346
-unsigned int con
Packed neighbor connection data.
Definition: Recast.h:345
-unsigned short reg
The id of the region the span belongs to. (Or zero if not in a region.)
Definition: Recast.h:344
+unsigned short * dist
Array containing border distance data. [Size: spanCount].
Definition: Recast.h:372
+Represents a span of unobstructed space within a compact heightfield.
Definition: Recast.h:344
+unsigned short y
The lower extent of the span. (Measured from the heightfield's base.)
Definition: Recast.h:345
+unsigned int h
The height of the span. (Measured from y.)
Definition: Recast.h:348
+unsigned int con
Packed neighbor connection data.
Definition: Recast.h:347
+unsigned short reg
The id of the region the span belongs to. (Or zero if not in a region.)
Definition: Recast.h:346
Specifies a configuration to use when performing Recast builds.
Definition: Recast.h:217
int maxVertsPerPoly
The maximum number of vertices allowed for polygons generated during the contour to polygon conversio...
Definition: Recast.h:272
int maxEdgeLen
The maximum allowed length for contour edges along the border of the mesh. [Limit: >=0] [Units: vx].
Definition: Recast.h:257
@@ -908,85 +910,85 @@ $(document).ready(function(){initNavTree('Recast_8h_source.html',''); initResiza
float cs
The xz-plane cell size to use for fields. [Limit: > 0] [Units: wu].
Definition: Recast.h:231
int minRegionArea
The minimum number of cells allowed to form isolated island areas. [Limit: >=0] [Units: vx].
Definition: Recast.h:264
float bmin[3]
The minimum bounds of the field's AABB. [(x, y, z)] [Units: wu].
Definition: Recast.h:237
-Represents a group of related contours.
Definition: Recast.h:431
+Represents a group of related contours.
Definition: Recast.h:433
rcContourSet()
Definition: Recast.cpp:198
-int height
The height of the set. (Along the z-axis in cell units.)
Definition: Recast.h:442
-float cs
The size of each cell. (On the xz-plane.)
Definition: Recast.h:439
-float bmin[3]
The minimum bounds in world space. [(x, y, z)].
Definition: Recast.h:437
-int nconts
The number of contours in the set.
Definition: Recast.h:436
+int height
The height of the set. (Along the z-axis in cell units.)
Definition: Recast.h:444
+float cs
The size of each cell. (On the xz-plane.)
Definition: Recast.h:441
+float bmin[3]
The minimum bounds in world space. [(x, y, z)].
Definition: Recast.h:439
+int nconts
The number of contours in the set.
Definition: Recast.h:438
~rcContourSet()
Definition: Recast.cpp:212
-rcContour * conts
An array of the contours in the set. [Size: nconts].
Definition: Recast.h:435
-float ch
The height of each cell. (The minimum increment along the y-axis.)
Definition: Recast.h:440
-int borderSize
The AABB border size used to generate the source data from which the contours were derived.
Definition: Recast.h:443
-float bmax[3]
The maximum bounds in world space. [(x, y, z)].
Definition: Recast.h:438
-int width
The width of the set. (Along the x-axis in cell units.)
Definition: Recast.h:441
-float maxError
The max edge error that this contour set was simplified with.
Definition: Recast.h:444
-Represents a simple, non-overlapping contour in field space.
Definition: Recast.h:419
-int nrverts
The number of vertices in the raw contour.
Definition: Recast.h:423
-unsigned char area
The area id of the contour.
Definition: Recast.h:425
-int * rverts
Raw contour vertex and connection data. [Size: 4 * nrverts].
Definition: Recast.h:422
-int * verts
Simplified contour vertex and connection data. [Size: 4 * nverts].
Definition: Recast.h:420
-unsigned short reg
The region id of the contour.
Definition: Recast.h:424
-int nverts
The number of vertices in the simplified contour.
Definition: Recast.h:421
-Represents a set of heightfield layers.
Definition: Recast.h:404
+rcContour * conts
An array of the contours in the set. [Size: nconts].
Definition: Recast.h:437
+float ch
The height of each cell. (The minimum increment along the y-axis.)
Definition: Recast.h:442
+int borderSize
The AABB border size used to generate the source data from which the contours were derived.
Definition: Recast.h:445
+float bmax[3]
The maximum bounds in world space. [(x, y, z)].
Definition: Recast.h:440
+int width
The width of the set. (Along the x-axis in cell units.)
Definition: Recast.h:443
+float maxError
The max edge error that this contour set was simplified with.
Definition: Recast.h:446
+Represents a simple, non-overlapping contour in field space.
Definition: Recast.h:421
+int nrverts
The number of vertices in the raw contour.
Definition: Recast.h:425
+unsigned char area
The area id of the contour.
Definition: Recast.h:427
+int * rverts
Raw contour vertex and connection data. [Size: 4 * nrverts].
Definition: Recast.h:424
+int * verts
Simplified contour vertex and connection data. [Size: 4 * nverts].
Definition: Recast.h:422
+unsigned short reg
The region id of the contour.
Definition: Recast.h:426
+int nverts
The number of vertices in the simplified contour.
Definition: Recast.h:423
+Represents a set of heightfield layers.
Definition: Recast.h:406
rcHeightfieldLayerSet()
Definition: Recast.cpp:170
-rcHeightfieldLayer * layers
The layers in the set. [Size: nlayers].
Definition: Recast.h:408
+rcHeightfieldLayer * layers
The layers in the set. [Size: nlayers].
Definition: Recast.h:410
~rcHeightfieldLayerSet()
Definition: Recast.cpp:176
-int nlayers
The number of layers in the set.
Definition: Recast.h:409
-Represents a heightfield layer within a layer set.
Definition: Recast.h:382
-float bmax[3]
The maximum bounds in world space. [(x, y, z)].
Definition: Recast.h:384
-unsigned char * cons
Packed neighbor connection information. [Size: Same as heights].
Definition: Recast.h:397
-float ch
The height of each cell. (The minimum increment along the y-axis.)
Definition: Recast.h:386
-int height
The height of the heightfield. (Along the z-axis in cell units.)
Definition: Recast.h:388
-int width
The width of the heightfield. (Along the x-axis in cell units.)
Definition: Recast.h:387
-int hmin
The minimum height bounds of usable data. (Along the y-axis.)
Definition: Recast.h:393
-unsigned char * areas
Area ids. [Size: Same as heights].
Definition: Recast.h:396
-int hmax
The maximum height bounds of usable data. (Along the y-axis.)
Definition: Recast.h:394
-float bmin[3]
The minimum bounds in world space. [(x, y, z)].
Definition: Recast.h:383
-int maxx
The maximum x-bounds of usable data.
Definition: Recast.h:390
-unsigned char * heights
The heightfield. [Size: width * height].
Definition: Recast.h:395
-int maxy
The maximum y-bounds of usable data. (Along the z-axis.)
Definition: Recast.h:392
-int minx
The minimum x-bounds of usable data.
Definition: Recast.h:389
-float cs
The size of each cell. (On the xz-plane.)
Definition: Recast.h:385
-int miny
The minimum y-bounds of usable data. (Along the z-axis.)
Definition: Recast.h:391
+int nlayers
The number of layers in the set.
Definition: Recast.h:411
+Represents a heightfield layer within a layer set.
Definition: Recast.h:384
+float bmax[3]
The maximum bounds in world space. [(x, y, z)].
Definition: Recast.h:386
+unsigned char * cons
Packed neighbor connection information. [Size: Same as heights].
Definition: Recast.h:399
+float ch
The height of each cell. (The minimum increment along the y-axis.)
Definition: Recast.h:388
+int height
The height of the heightfield. (Along the z-axis in cell units.)
Definition: Recast.h:390
+int width
The width of the heightfield. (Along the x-axis in cell units.)
Definition: Recast.h:389
+int hmin
The minimum height bounds of usable data. (Along the y-axis.)
Definition: Recast.h:395
+unsigned char * areas
Area ids. [Size: Same as heights].
Definition: Recast.h:398
+int hmax
The maximum height bounds of usable data. (Along the y-axis.)
Definition: Recast.h:396
+float bmin[3]
The minimum bounds in world space. [(x, y, z)].
Definition: Recast.h:385
+int maxx
The maximum x-bounds of usable data.
Definition: Recast.h:392
+unsigned char * heights
The heightfield. [Size: width * height].
Definition: Recast.h:397
+int maxy
The maximum y-bounds of usable data. (Along the z-axis.)
Definition: Recast.h:394
+int minx
The minimum x-bounds of usable data.
Definition: Recast.h:391
+float cs
The size of each cell. (On the xz-plane.)
Definition: Recast.h:387
+int miny
The minimum y-bounds of usable data. (Along the z-axis.)
Definition: Recast.h:393
A dynamic heightfield representing obstructed space.
Definition: Recast.h:313
float bmin[3]
The minimum bounds in world space. [(x, y, z)].
Definition: Recast.h:319
-rcSpan * freelist
The next free span.
Definition: Recast.h:325
+rcSpan * freelist
The next free span.
Definition: Recast.h:327
rcSpan ** spans
Heightfield of spans (width*height).
Definition: Recast.h:323
float ch
The height of each cell. (The minimum increment along the y-axis.)
Definition: Recast.h:322
float cs
The size of each cell. (On the xz-plane.)
Definition: Recast.h:321
float bmax[3]
The maximum bounds in world space. [(x, y, z)].
Definition: Recast.h:320
int height
The height of the heightfield. (Along the z-axis in cell units.)
Definition: Recast.h:318
-rcSpanPool * pools
Linked list of span pools.
Definition: Recast.h:324
+rcSpanPool * pools
Linked list of span pools.
Definition: Recast.h:326
int width
The width of the heightfield. (Along the x-axis in cell units.)
Definition: Recast.h:317
~rcHeightfield()
Definition: Recast.cpp:109
rcHeightfield()
Definition: Recast.cpp:96
-Contains triangle meshes that represent detailed height data associated with the polygons in its asso...
Definition: Recast.h:485
-unsigned char * tris
The mesh triangles. [Size: 4*ntris].
Definition: Recast.h:490
-float * verts
The mesh vertices. [Size: 3*nverts].
Definition: Recast.h:489
-unsigned int * meshes
The sub-mesh data. [Size: 4*nmeshes].
Definition: Recast.h:488
-int nverts
The number of vertices in verts.
Definition: Recast.h:492
-int ntris
The number of triangles in tris.
Definition: Recast.h:493
+Contains triangle meshes that represent detailed height data associated with the polygons in its asso...
Definition: Recast.h:487
+unsigned char * tris
The mesh triangles. [Size: 4*ntris].
Definition: Recast.h:492
+float * verts
The mesh vertices. [Size: 3*nverts].
Definition: Recast.h:491
+unsigned int * meshes
The sub-mesh data. [Size: 4*nmeshes].
Definition: Recast.h:490
+int nverts
The number of vertices in verts.
Definition: Recast.h:494
+int ntris
The number of triangles in tris.
Definition: Recast.h:495
rcPolyMeshDetail()
Definition: Recast.cpp:277
-int nmeshes
The number of sub-meshes defined by meshes.
Definition: Recast.h:491
-Represents a polygon mesh suitable for use in building a navigation mesh.
Definition: Recast.h:455
+int nmeshes
The number of sub-meshes defined by meshes.
Definition: Recast.h:493
+Represents a polygon mesh suitable for use in building a navigation mesh.
Definition: Recast.h:457
rcPolyMesh()
Definition: Recast.cpp:232
~rcPolyMesh()
Definition: Recast.cpp:251
-float cs
The size of each cell. (On the xz-plane.)
Definition: Recast.h:470
-float bmin[3]
The minimum bounds in world space. [(x, y, z)].
Definition: Recast.h:468
-unsigned short * polys
Polygon and neighbor data. [Length: maxpolys * 2 * nvp].
Definition: Recast.h:460
-unsigned short * regs
The region id assigned to each polygon. [Length: maxpolys].
Definition: Recast.h:461
-int borderSize
The AABB border size used to generate the source data from which the mesh was derived.
Definition: Recast.h:472
-unsigned char * areas
The area id assigned to each polygon. [Length: maxpolys].
Definition: Recast.h:463
-float ch
The height of each cell. (The minimum increment along the y-axis.)
Definition: Recast.h:471
-float bmax[3]
The maximum bounds in world space. [(x, y, z)].
Definition: Recast.h:469
-int nvp
The maximum number of vertices per polygon.
Definition: Recast.h:467
-float maxEdgeError
The max error of the polygon edges in the mesh.
Definition: Recast.h:473
-unsigned short * flags
The user defined flags for each polygon. [Length: maxpolys].
Definition: Recast.h:462
-int npolys
The number of polygons.
Definition: Recast.h:465
-unsigned short * verts
The mesh vertices. [Form: (x, y, z) * nverts].
Definition: Recast.h:459
-int nverts
The number of vertices.
Definition: Recast.h:464
-int maxpolys
The number of allocated polygons.
Definition: Recast.h:466
+float cs
The size of each cell. (On the xz-plane.)
Definition: Recast.h:472
+float bmin[3]
The minimum bounds in world space. [(x, y, z)].
Definition: Recast.h:470
+unsigned short * polys
Polygon and neighbor data. [Length: maxpolys * 2 * nvp].
Definition: Recast.h:462
+unsigned short * regs
The region id assigned to each polygon. [Length: maxpolys].
Definition: Recast.h:463
+int borderSize
The AABB border size used to generate the source data from which the mesh was derived.
Definition: Recast.h:474
+unsigned char * areas
The area id assigned to each polygon. [Length: maxpolys].
Definition: Recast.h:465
+float ch
The height of each cell. (The minimum increment along the y-axis.)
Definition: Recast.h:473
+float bmax[3]
The maximum bounds in world space. [(x, y, z)].
Definition: Recast.h:471
+int nvp
The maximum number of vertices per polygon.
Definition: Recast.h:469
+float maxEdgeError
The max error of the polygon edges in the mesh.
Definition: Recast.h:475
+unsigned short * flags
The user defined flags for each polygon. [Length: maxpolys].
Definition: Recast.h:464
+int npolys
The number of polygons.
Definition: Recast.h:467
+unsigned short * verts
The mesh vertices. [Form: (x, y, z) * nverts].
Definition: Recast.h:461
+int nverts
The number of vertices.
Definition: Recast.h:466
+int maxpolys
The number of allocated polygons.
Definition: Recast.h:468
A memory pool used for quick allocation of spans within a heightfield.
Definition: Recast.h:305
rcSpan items[RC_SPANS_PER_POOL]
Array of spans in the pool.
Definition: Recast.h:307
rcSpanPool * next
The next span pool.
Definition: Recast.h:306
diff --git a/Sample__Debug_8h_source.html b/Sample__Debug_8h_source.html
index 409e3fce..21b62370 100644
--- a/Sample__Debug_8h_source.html
+++ b/Sample__Debug_8h_source.html
@@ -179,9 +179,9 @@ $(document).ready(function(){initNavTree('Sample__Debug_8h_source.html',''); ini
Sample_Debug()
Definition: Sample_Debug.cpp:51
unsigned int dtPolyRef
A handle to a polygon within a navigation mesh tile.
Definition: DetourNavMesh.h:48
-A compact, static heightfield representing unobstructed space.
Definition: Recast.h:352
-Represents a group of related contours.
Definition: Recast.h:431
-Represents a polygon mesh suitable for use in building a navigation mesh.
Definition: Recast.h:455
+A compact, static heightfield representing unobstructed space.
Definition: Recast.h:354
+Represents a group of related contours.
Definition: Recast.h:433
+Represents a polygon mesh suitable for use in building a navigation mesh.
Definition: Recast.h:457
diff --git a/Sample__SoloMesh_8h_source.html b/Sample__SoloMesh_8h_source.html
index 0c56a079..5fae986c 100644
--- a/Sample__SoloMesh_8h_source.html
+++ b/Sample__SoloMesh_8h_source.html
@@ -220,12 +220,12 @@ $(document).ready(function(){initNavTree('Sample__SoloMesh_8h_source.html','');
virtual void handleMeshChanged(class InputGeom *geom)
Definition: Sample_SoloMesh.cpp:353
void cleanup()
Definition: Sample_SoloMesh.cpp:64
-A compact, static heightfield representing unobstructed space.
Definition: Recast.h:352
+A compact, static heightfield representing unobstructed space.
Definition: Recast.h:354
Specifies a configuration to use when performing Recast builds.
Definition: Recast.h:217
-Represents a group of related contours.
Definition: Recast.h:431
+Represents a group of related contours.
Definition: Recast.h:433
A dynamic heightfield representing obstructed space.
Definition: Recast.h:313
-Contains triangle meshes that represent detailed height data associated with the polygons in its asso...
Definition: Recast.h:485
-Represents a polygon mesh suitable for use in building a navigation mesh.
Definition: Recast.h:455
+Contains triangle meshes that represent detailed height data associated with the polygons in its asso...
Definition: Recast.h:487
+Represents a polygon mesh suitable for use in building a navigation mesh.
Definition: Recast.h:457
diff --git a/Sample__TileMesh_8h_source.html b/Sample__TileMesh_8h_source.html
index a2774d52..2e0a9fdd 100644
--- a/Sample__TileMesh_8h_source.html
+++ b/Sample__TileMesh_8h_source.html
@@ -269,12 +269,12 @@ $(document).ready(function(){initNavTree('Sample__TileMesh_8h_source.html','');
A navigation mesh based on tiles of convex polygons.
Definition: DetourNavMesh.h:339
Definition: InputGeom.h:35
-A compact, static heightfield representing unobstructed space.
Definition: Recast.h:352
+A compact, static heightfield representing unobstructed space.
Definition: Recast.h:354
Specifies a configuration to use when performing Recast builds.
Definition: Recast.h:217
-Represents a group of related contours.
Definition: Recast.h:431
+Represents a group of related contours.
Definition: Recast.h:433
A dynamic heightfield representing obstructed space.
Definition: Recast.h:313
-Contains triangle meshes that represent detailed height data associated with the polygons in its asso...
Definition: Recast.h:485
-Represents a polygon mesh suitable for use in building a navigation mesh.
Definition: Recast.h:455
+Contains triangle meshes that represent detailed height data associated with the polygons in its asso...
Definition: Recast.h:487
+Represents a polygon mesh suitable for use in building a navigation mesh.
Definition: Recast.h:457
diff --git a/group__recast.html b/group__recast.html
index da2c9b42..b75c2c67 100644
--- a/group__recast.html
+++ b/group__recast.html
@@ -197,13 +197,13 @@ Classes
| | Rasterizes a triangle list into the specified heightfield. More...
|
| |
| void | rcFilterLowHangingWalkableObstacles (rcContext *context, int walkableClimb, rcHeightfield &heightfield) |
-| | Marks non-walkable spans as walkable if their maximum is within walkableClimb of a walkable neighbor. More...
|
+| | Marks non-walkable spans as walkable if their maximum is within walkableClimb of the span below them. More...
|
| |
| void | rcFilterLedgeSpans (rcContext *context, int walkableHeight, int walkableClimb, rcHeightfield &heightfield) |
| | Marks spans that are ledges as not-walkable. More...
|
| |
| void | rcFilterWalkableLowHeightSpans (rcContext *context, int walkableHeight, rcHeightfield &heightfield) |
-| | Marks walkable spans as not walkable if the clearance above the span is less than the specified height. More...
|
+| | Marks walkable spans as not walkable if the clearance above the span is less than the specified walkableHeight. More...
|
| |
| int | rcGetHeightFieldSpanCount (rcContext *context, const rcHeightfield &heightfield) |
| | Returns the number of spans contained in the specified heightfield. More...
|
@@ -1507,10 +1507,10 @@ Classes
-
Marks non-walkable spans as walkable if their maximum is within walkableClimb of a walkable neighbor.
-
Allows the formation of walkable regions that will flow over low lying objects such as curbs, and up structures such as stairways.
-
Two neighboring spans are walkable if: rcAbs(currentSpan.smax - neighborSpan.smax) < walkableClimb
-
- Warning
- Will override the effect of rcFilterLedgeSpans. So if both filters are used, call rcFilterLedgeSpans after calling this filter.
+
Marks non-walkable spans as walkable if their maximum is within walkableClimb of the span below them.
+
This removes small obstacles that the agent would be able to walk over such as curbs, and also allows agents to move up structures such as stairs.
+
Obstacle spans are marked walkable if: obstacleSpan.smax - walkableSpan.smax < walkableClimb
+
- Warning
- Will override the effect of rcFilterLedgeSpans. If both filters are used, call rcFilterLedgeSpans only after applying this filter.
- See also
- rcHeightfield, rcConfig
- Parameters
-
@@ -1555,8 +1555,8 @@ Classes
-
Marks walkable spans as not walkable if the clearance above the span is less than the specified height.
-
For this filter, the clearance above the span is the distance from the span's maximum to the next higher span's minimum. (Same grid column.)
+
Marks walkable spans as not walkable if the clearance above the span is less than the specified walkableHeight.
+
For this filter, the clearance above the span is the distance from the span's maximum to the minimum of the next higher span in the same column. If there is no higher span in the column, the clearance is computed as the distance from the top of the span to the maximum heightfield height.
- See also
- rcHeightfield, rcConfig
- Parameters
-
diff --git a/structrcCompactHeightfield.html b/structrcCompactHeightfield.html
index fcc2a396..d3d42597 100644
--- a/structrcCompactHeightfield.html
+++ b/structrcCompactHeightfield.html
@@ -224,19 +224,19 @@ Direction 3 = (0, -1)
}
}
}
-static const unsigned char RC_NULL_AREA
Represents the null area.
Definition: Recast.h:633
-static const unsigned char RC_WALKABLE_AREA
The default area id used to indicate a walkable polygon.
Definition: Recast.h:638
-static const int RC_NOT_CONNECTED
The value returned by rcGetCon if the specified direction is not connected to another span.
Definition: Recast.h:642
-int rcGetDirOffsetY(int direction)
Gets the standard height (z-axis) offset for the specified direction.
Definition: Recast.h:1260
-int rcGetDirOffsetX(int direction)
Gets the standard width (x-axis) offset for the specified direction.
Definition: Recast.h:1250
-int rcGetCon(const rcCompactSpan &span, int direction)
Gets neighbor connection data for the specified direction.
Definition: Recast.h:1241
-Provides information on the content of a cell column in a compact heightfield.
Definition: Recast.h:335
-unsigned int count
Number of spans in the column.
Definition: Recast.h:337
-unsigned int index
Index to the first span in the column.
Definition: Recast.h:336
-float ch
The height of each cell. (The minimum increment along the y-axis.)
Definition: Recast.h:367
-float cs
The size of each cell. (On the xz-plane.)
Definition: Recast.h:366
-Represents a span of unobstructed space within a compact heightfield.
Definition: Recast.h:342
-unsigned short y
The lower extent of the span. (Measured from the heightfield's base.)
Definition: Recast.h:343
+static const unsigned char RC_NULL_AREA
Represents the null area.
Definition: Recast.h:635
+static const unsigned char RC_WALKABLE_AREA
The default area id used to indicate a walkable polygon.
Definition: Recast.h:640
+static const int RC_NOT_CONNECTED
The value returned by rcGetCon if the specified direction is not connected to another span.
Definition: Recast.h:644
+int rcGetDirOffsetY(int direction)
Gets the standard height (z-axis) offset for the specified direction.
Definition: Recast.h:1262
+int rcGetDirOffsetX(int direction)
Gets the standard width (x-axis) offset for the specified direction.
Definition: Recast.h:1252
+int rcGetCon(const rcCompactSpan &span, int direction)
Gets neighbor connection data for the specified direction.
Definition: Recast.h:1243
+Provides information on the content of a cell column in a compact heightfield.
Definition: Recast.h:337
+unsigned int count
Number of spans in the column.
Definition: Recast.h:339
+unsigned int index
Index to the first span in the column.
Definition: Recast.h:338
+float ch
The height of each cell. (The minimum increment along the y-axis.)
Definition: Recast.h:369
+float cs
The size of each cell. (On the xz-plane.)
Definition: Recast.h:368
+Represents a span of unobstructed space within a compact heightfield.
Definition: Recast.h:344
+unsigned short y
The lower extent of the span. (Measured from the heightfield's base.)
Definition: Recast.h:345
- See also
- rcAllocCompactHeightfield, rcFreeCompactHeightfield, rcBuildCompactHeightfield
diff --git a/structrcContour.html b/structrcContour.html
index d40869d4..e9ac8134 100644
--- a/structrcContour.html
+++ b/structrcContour.html
@@ -243,10 +243,10 @@ Public Attributes
{
}
-static const int RC_AREA_BORDER
Area border flag.
Definition: Recast.h:609
-static const int RC_CONTOUR_REG_MASK
Applied to the region id field of contour vertices in order to extract the region id.
Definition: Recast.h:623
-static const int RC_BORDER_VERTEX
Border vertex flag.
Definition: Recast.h:602
-int * verts
Simplified contour vertex and connection data. [Size: 4 * nverts].
Definition: Recast.h:420
+static const int RC_AREA_BORDER
Area border flag.
Definition: Recast.h:611
+static const int RC_CONTOUR_REG_MASK
Applied to the region id field of contour vertices in order to extract the region id.
Definition: Recast.h:625
+static const int RC_BORDER_VERTEX
Border vertex flag.
Definition: Recast.h:604
+int * verts
Simplified contour vertex and connection data. [Size: 4 * nverts].
Definition: Recast.h:422
diff --git a/structrcPolyMesh.html b/structrcPolyMesh.html
index 1993e46a..ce4cb646 100644
--- a/structrcPolyMesh.html
+++ b/structrcPolyMesh.html
@@ -196,10 +196,10 @@ Public Attributes
}
}
-static const unsigned short RC_MESH_NULL_IDX
An value which indicates an invalid index within a mesh.
Definition: Recast.h:628
-float cs
The size of each cell. (On the xz-plane.)
Definition: Recast.h:470
-float ch
The height of each cell. (The minimum increment along the y-axis.)
Definition: Recast.h:471
-int nvp
The maximum number of vertices per polygon.
Definition: Recast.h:467
+static const unsigned short RC_MESH_NULL_IDX
An value which indicates an invalid index within a mesh.
Definition: Recast.h:630
+float cs
The size of each cell. (On the xz-plane.)
Definition: Recast.h:472
+float ch
The height of each cell. (The minimum increment along the y-axis.)
Definition: Recast.h:473
+int nvp
The maximum number of vertices per polygon.
Definition: Recast.h:469
- See also
- rcAllocPolyMesh, rcFreePolyMesh, rcBuildPolyMesh
@@ -492,8 +492,8 @@ Edges 3->4 and 4->8 are border edges not shared with any other polygon.
-
float bmin[3]
The minimum bounds in world space. [(x, y, z)].
Definition: Recast.h:468
-
unsigned short * verts
The mesh vertices. [Form: (x, y, z) * nverts].
Definition: Recast.h:459
+
float bmin[3]
The minimum bounds in world space. [(x, y, z)].
Definition: Recast.h:470
+
unsigned short * verts
The mesh vertices. [Form: (x, y, z) * nverts].
Definition: Recast.h:461
diff --git a/structrcPolyMeshDetail.html b/structrcPolyMeshDetail.html
index 4569499f..98bca85e 100644
--- a/structrcPolyMeshDetail.html
+++ b/structrcPolyMeshDetail.html
@@ -192,9 +192,9 @@ Public Attributes
}
}
-unsigned char * tris
The mesh triangles. [Size: 4*ntris].
Definition: Recast.h:490
-float * verts
The mesh vertices. [Size: 3*nverts].
Definition: Recast.h:489
-int ntris
The number of triangles in tris.
Definition: Recast.h:493
+unsigned char * tris
The mesh triangles. [Size: 4*ntris].
Definition: Recast.h:492
+float * verts
The mesh vertices. [Size: 3*nverts].
Definition: Recast.h:491
+int ntris
The number of triangles in tris.
Definition: Recast.h:495