gsk_gl_driver_add_texture_slices (GskGLDriver *self,
GdkTexture *texture,
gboolean ensure_mipmap,
- guint min_cols,
- guint min_rows,
GskGLTextureSlice **out_slices,
guint *out_n_slices)
{
- int max_texture_size;
+ int max_slice_size;
GskGLTextureSlice *slices;
GskGLTexture *t;
guint n_slices;
g_assert (out_slices != NULL);
g_assert (out_n_slices != NULL);
- max_texture_size = self->command_queue->max_texture_size / 2;
+ max_slice_size = self->command_queue->max_texture_size / 2;
tex_width = texture->width;
tex_height = texture->height;
- cols = MAX ((texture->width / max_texture_size) + 1, min_cols);
- rows = MAX ((texture->height / max_texture_size) + 1, min_rows);
+ cols = (texture->width / max_slice_size) + 1;
+ rows = (texture->height / max_slice_size) + 1;
n_slices = cols * rows;
void gsk_gl_driver_add_texture_slices (GskGLDriver *self,
GdkTexture *texture,
gboolean ensure_mipmap,
- guint min_cols,
- guint min_rows,
GskGLTextureSlice **out_slices,
guint *out_n_slices);
GskGLProgram * gsk_gl_driver_lookup_shader (GskGLDriver *self,
gsk_gl_driver_slice_texture (GskGLDriver *self,
GdkTexture *texture,
gboolean ensure_mipmap,
- guint min_cols,
- guint min_rows,
GskGLTextureSlice **out_slices,
guint *out_n_slices)
{
t = gdk_texture_get_render_data (texture, self);
if (t && t->slices &&
- (t->has_mipmap || !ensure_mipmap) &&
- min_cols == 0 && min_rows == 0)
+ (t->has_mipmap || !ensure_mipmap))
{
*out_slices = t->slices;
*out_n_slices = t->n_slices;
return;
}
- gsk_gl_driver_add_texture_slices (self, texture, ensure_mipmap, min_cols, min_rows, out_slices, out_n_slices);
+ gsk_gl_driver_add_texture_slices (self, texture, ensure_mipmap, out_slices, out_n_slices);
}
G_END_DECLS
GskGLTextureSlice *slices = NULL;
guint n_slices = 0;
- gsk_gl_driver_slice_texture (job->driver, texture, use_mipmaps, 0, 0, &slices, &n_slices);
+ gsk_gl_driver_slice_texture (job->driver, texture, use_mipmaps, &slices, &n_slices);
g_assert (slices != NULL);
g_assert (n_slices > 0);
GskGLTextureSlice *slices = NULL;
guint n_slices = 0;
- gsk_gl_driver_slice_texture (job->driver, texture, filter == GSK_SCALING_FILTER_TRILINEAR, 0, 0, &slices, &n_slices);
+ gsk_gl_driver_slice_texture (job->driver, texture, filter == GSK_SCALING_FILTER_TRILINEAR, &slices, &n_slices);
gsk_gl_render_job_begin_draw (job, CHOOSE_PROGRAM (job, blit));