- float const subtitle_x1 = x_pixels_to_gl(inter_position.x + text->position.x);
- float const subtitle_x2 = x_pixels_to_gl(inter_position.x + text->position.x + text->image->size().width);
- float const subtitle_y1 = y_pixels_to_gl(inter_position.y + text->position.y + text->image->size().height);
- float const subtitle_y2 = y_pixels_to_gl(inter_position.y + text->position.y);
-
- float vertices[] = {
- // positions // texture coords
- subtitle_x2, subtitle_y1, 0.0f, 1.0f, 0.0f, // subtitle texture top right (index 4)
- subtitle_x2, subtitle_y2, 0.0f, 1.0f, 1.0f, // subtitle texture bottom right (index 5)
- subtitle_x1, subtitle_y2, 0.0f, 0.0f, 1.0f, // subtitle texture bottom left (index 6)
- subtitle_x1, subtitle_y1, 0.0f, 0.0f, 0.0f, // subtitle texture top left (index 7)
- };
-
- glBufferSubData (GL_ARRAY_BUFFER, 4 * 5 * sizeof(float), sizeof(vertices), vertices);
+ const auto subtitle = Rectangle(canvas_size, inter_position.x + x_offset + text->position.x, inter_position.y + y_offset + text->position.y, text->image->size());
+ glBufferSubData (GL_ARRAY_BUFFER, 4 * 5 * sizeof(float), subtitle.size(), subtitle.vertices());