void VertexArray::multiDrawElements(const GLenum mode, const GLenum type, const std::vector<VertexArray::MultiDrawElementsRange> & ranges) const { std::vector<GLsizei> counts = collect_member(ranges, &MultiDrawElementsRange::count); std::vector<const void*> indices = collect_type_member<const void*>(ranges, &MultiDrawElementsRange::indices); multiDrawElements(mode, counts.data(), type, indices.data(), static_cast<GLsizei>(ranges.size())); }
inline void draw(const Pack & pack) { multiDrawElements(pack.mode,pack.count, pack.type,pack.indices,pack.drawcount); }