|
Public Types |
| enum | BUFFERTYPE {
DYNAMIC = 0x00000000,
STATIC = 0x00000001,
READPRIORITIZED = 0x00000002,
WRITEPRIORITIZED = 0x00000004,
NOREADWRITE = 0x00000008,
NORENDER = 0x00000010,
NORMAL = ( DYNAMIC | READPRIORITIZED | WRITEPRIORITIZED )
} |
| | Buffer type identifiers. Any combination of the flags is valid. More...
|
| enum | BUFFERUPLOADPOLICY { ONUNLOCK,
ONRENDER,
ONFLUSH
} |
| | Upload policy identifiers. More...
|
| enum | BUFFERLOCK { READ = 1,
WRITE = 2,
NOUPLOAD = 4,
FORCEUPLOAD = 8
} |
| | Lock type identifiers. More...
|
Public Member Functions |
| | PolygonBuffer (unsigned int uiType, unsigned int uiNumPolygons, const Polygon *pkData=0, bool bStripify=false) |
| virtual | ~PolygonBuffer () |
| virtual void | AllocatePolygons (unsigned int iNumPolygons, const Polygon *pkData=0, bool bStripify=false) |
| void | LoadPolygonData (const Polygon *pkPolygons, bool bStripify=false) |
| void | Stripify () |
| bool | IsStripped () const |
| void | CalculateNormals (VertexBufferPtr pkVertexBuffer=0, bool bNormalize=true) |
| void | CalculateEdges (VertexBufferPtr pkVertexBuffer=0) |
| Vector3d * | GetNormals () |
| Edge * | GetEdges () |
| PolygonStripBufferPtr & | GetStrip () |
| Polygon * | GetPolygon (unsigned int uiElement=0) |
| virtual const void * | GetRenderData () const |
| Polygon & | operator[] (unsigned int uiElement) |
| bool | Lock (unsigned int uiLockType) |
| void | Unlock () |
| virtual void | Upload () |
| bool | IsLocked () const |
| bool | IsDirty () const |
| unsigned int | GetType () const |
| unsigned int | GetNumAllocated () const |
| unsigned int | GetNumElements () const |
| void | SetNumElements (unsigned int uiNumElements) |
| void | IncRef () |
| void | DecRef () |
| int | GetRefCount () const |
Static Public Member Functions |
| std::string | GetTypeAsString (unsigned int uiType) |
| unsigned int | GetTypeFromString (std::string const &strType) |
Public Attributes |
| PolygonStripBufferPtr | m_pkStrip |
| VertexBufferPtr | m_pkVertexBuffer |
| MaterialPtr | m_pkMaterial |
Static Public Attributes |
| BUFFERUPLOADPOLICY | s_eUploadPolicy |
Protected Member Functions |
| void | ExtendStrip (unsigned int uiPolygon, unsigned int uiEdge, AdjacencyData *pkAdj, unsigned int *puiStrip, unsigned int *puiStripLen, unsigned char *pucAdded) |
| virtual bool | AcquireLock () |
| virtual void | ReleaseLock () |
Protected Attributes |
| Polygon * | m_pkBuffer |
| Polygon * | m_pkPolygons |
| Vector3d * | m_pkNormals |
| Edge * | m_pkEdges |
| unsigned int | m_uiType |
| unsigned int | m_uiLock |
| bool | m_bDirty |
| unsigned int | m_uiNumAllocated |
| unsigned int | m_uiNumCurrent |