Previous: The IndexData class, Up: Hardware Index Buffers [Contents]
Updating index buffers can only be done when you lock the buffer for writing; See Locking buffers for details. Locking returns a void pointer, which must be cast to the appropriate type; with index buffers this is either an unsigned short (for 16-bit indexes) or an unsigned long (for 32-bit indexes). For example:
unsigned short* pIdx = static_cast<unsigned short*>(ibuf->lock(HardwareBuffer::HBL_DISCARD));
You can then write to the buffer using the usual pointer semantics, just remember to unlock the buffer when you’re finished!