// ---------------------------------------------------------------------------- void vertex_buffer_insert_indices ( vertex_buffer_t *self, size_t index, GLuint *indices, size_t count ) { assert( self ); self->dirty = 1; vector_insert_data( self->indices, index, indices, count ); }
// ---------------------------------------------------------------------------- void vertex_buffer_insert_indices ( vertex_buffer_t *self, const size_t index, const GLuint *indices, const size_t count ) { assert( self ); assert( self->indices ); assert( index < self->indices->size+1 ); self->state |= DIRTY; vector_insert_data( self->indices, index, indices, count ); }
// ---------------------------------------------------------------------------- void vertex_buffer_insert_vertices ( vertex_buffer_t *self, size_t index, void *vertices, size_t count ) { size_t i; assert( self ); assert( self->vertices ); assert( index < self->vertices->size+1 ); self->dirty = 1; for( i=0; i<self->indices->size-index; ++i ) { if( *(GLuint *)(vector_get( self->indices, i )) > index ) { *(GLuint *)(vector_get( self->indices, i )) += index; } } vector_insert_data( self->vertices, index, vertices, count ); }
// ---------------------------------------------------------------------------- void vertex_buffer_insert_vertices( vertex_buffer_t *self, const size_t index, const void *vertices, const size_t vcount ) { size_t i; assert( self ); assert( self->vertices ); assert( index < self->vertices->size+1 ); self->state |= DIRTY; for( i=0; i<self->indices->size; ++i ) { if( *(GLuint *)(vector_get( self->indices, i )) > index ) { *(GLuint *)(vector_get( self->indices, i )) += index; } } vector_insert_data( self->vertices, index, vertices, vcount ); }