| 123456789101112131415161718192021222324252627282930313233343536373839 |
- #pragma once
- #include "CmPrerequisites.h"
- #include "CmIndexBuffer.h"
- namespace CamelotFramework
- {
- /** Summary class collecting together index data source information. */
- class CM_EXPORT IndexData
- {
- public:
- IndexData();
- ~IndexData();
- /// pointer to the HardwareIndexBuffer to use, must be specified if useIndexes = true
- IndexBufferPtr indexBuffer;
- /// index in the buffer to start from for this operation
- UINT32 indexStart;
- /// The number of indexes to use from the buffer
- UINT32 indexCount;
- /** Re-order the indexes in this index data structure to be more
- vertex cache friendly; that is to re-use the same vertices as close
- together as possible.
- @remarks
- Can only be used for index data which consists of triangle lists.
- It would in fact be pointless to use it on triangle strips or fans
- in any case.
- */
- void optimiseVertexCacheTriList(void);
- protected:
- /// Protected copy constructor, to prevent misuse
- IndexData(const IndexData& rhs); /* do nothing, should not use */
- /// Protected operator=, to prevent misuse
- IndexData& operator=(const IndexData& rhs); /* do not use */
- };
- }
|