PxHeightFieldDesc Class Reference

Descriptor class for PxHeightField. More...

#include <PxHeightFieldDesc.h>

Collaboration diagram for PxHeightFieldDesc:

Public Member Functions

PX_INLINE PxHeightFieldDesc ()
 Constructor sets to default. More...
 
PX_INLINE void setToDefault ()
 (re)sets the structure to the default. More...
 
PX_INLINE bool isValid () const
 Returns true if the descriptor is valid. More...
 

Public Attributes

PxU32 nbRows
 Number of sample rows in the height field samples array. More...
 
PxU32 nbColumns
 Number of sample columns in the height field samples array. More...
 
PxHeightFieldFormat::Enum format
 Format of the sample data. More...
 
PxStridedData samples
 The samples array. More...
 
PxReal convexEdgeThreshold
 
PxHeightFieldFlags flags
 Flags bits, combined from values of the enum PxHeightFieldFlag. More...
 

Detailed Description

Descriptor class for PxHeightField.

Note
The heightfield data is *copied* when a PxHeightField object is created from this descriptor. After the call the user may discard the height data.
See also
PxHeightField PxHeightFieldGeometry PxShape PxPhysics.createHeightField() PxCooking.createHeightField()

Member Data Documentation

◆ convexEdgeThreshold

PxReal PxHeightFieldDesc::convexEdgeThreshold

This threshold is used by the collision detection to determine if a height field edge is convex and can generate contact points. Usually the convexity of an edge is determined from the angle (or cosine of the angle) between the normals of the faces sharing that edge. The height field allows a more efficient approach by comparing height values of neighboring vertices. This parameter offsets the comparison. Smaller changes than 0.5 will not alter the set of convex edges. The rule of thumb is that larger values will result in fewer edge contacts.

This parameter is ignored in contact generation with sphere and capsule primitives.

Range: [0, PX_MAX_F32)
Default: 0

◆ flags

PxHeightFieldFlags PxHeightFieldDesc::flags

Flags bits, combined from values of the enum PxHeightFieldFlag.

Default: 0

See also
PxHeightFieldFlag PxHeightFieldFlags

◆ format

PxHeightFieldFormat::Enum PxHeightFieldDesc::format

Format of the sample data.

Currently the only supported format is PxHeightFieldFormat::eS16_TM:

Default: PxHeightFieldFormat::eS16_TM

See also
PxHeightFormat PxHeightFieldDesc.samples

◆ nbColumns

PxU32 PxHeightFieldDesc::nbColumns

Number of sample columns in the height field samples array.

Note
Local space Z-axis corresponds to columns.

Range: >1
Default: 0

◆ nbRows

PxU32 PxHeightFieldDesc::nbRows

Number of sample rows in the height field samples array.

Note
Local space X-axis corresponds to rows.

Range: >1
Default: 0

◆ samples

PxStridedData PxHeightFieldDesc::samples

The samples array.

It is copied to the SDK's storage at creation time.

There are nbRows * nbColumn samples in the array, which define nbRows * nbColumn vertices and cells, of which (nbRows - 1) * (nbColumns - 1) cells are actually used.

The array index of sample(row, column) = row * nbColumns + column. The byte offset of sample(row, column) = sampleStride * (row * nbColumns + column). The sample data follows at the offset and spans the number of bytes defined by the format. Then there are zero or more unused bytes depending on sampleStride before the next sample.

Default: NULL

See also
PxHeightFormat

The documentation for this class was generated from the following file: