| /*!**************************************************************************** |
| |
| @file PVRTGeometry.h |
| @copyright Copyright (c) Imagination Technologies Limited. |
| @brief Code to affect triangle mesh geometry. |
| |
| ******************************************************************************/ |
| #ifndef _PVRTGEOMETRY_H_ |
| #define _PVRTGEOMETRY_H_ |
| |
| |
| /**************************************************************************** |
| ** Defines |
| ****************************************************************************/ |
| #define PVRTGEOMETRY_IDX unsigned int |
| |
| #define PVRTGEOMETRY_SORT_VERTEXCACHE (0x01 /* Sort triangles for optimal vertex cache usage */) |
| #define PVRTGEOMETRY_SORT_IGNOREVERTS (0x02 /* Do not sort vertices for optimal memory cache usage */) |
| |
| /**************************************************************************** |
| ** Functions |
| ****************************************************************************/ |
| |
| /*!*************************************************************************** |
| @brief Triangle sorter |
| @param[in,out] pVtxData Pointer to array of vertices |
| @param[in,out] pwIdx Pointer to array of indices |
| @param[in] nStride Size of a vertex (in bytes) |
| @param[in] nVertNum Number of vertices. Length of pVtxData array |
| @param[in] nTriNum Number of triangles. Length of pwIdx array is 3* this |
| @param[in] nBufferVtxLimit Number of vertices that can be stored in a buffer |
| @param[in] nBufferTriLimit Number of triangles that can be stored in a buffer |
| @param[in] dwFlags PVRTGEOMETRY_SORT_* flags |
| *****************************************************************************/ |
| void PVRTGeometrySort( |
| void * const pVtxData, |
| PVRTGEOMETRY_IDX * const pwIdx, |
| const int nStride, |
| const int nVertNum, |
| const int nTriNum, |
| const int nBufferVtxLimit, |
| const int nBufferTriLimit, |
| const unsigned int dwFlags); |
| |
| |
| #endif /* _PVRTGEOMETRY_H_ */ |
| |
| /***************************************************************************** |
| End of file (PVRTGeometry.h) |
| *****************************************************************************/ |
| |