drawn.area = calc_drawn_area(s, layer);
drawn.scale_x = layer->viewport.scale[0] /
- (float)layer->sampler_views[0]->texture->width0;
+ (float)layer->sampler_views[0]->texture->width0 *
+ (layer->src.br.x - layer->src.tl.x);
drawn.scale_y = layer->viewport.scale[1] /
((float)layer->sampler_views[0]->texture->height0 *
- (s->interlaced ? 2.0 : 1.0));
+ (s->interlaced ? 2.0 : 1.0) *
+ (layer->src.br.y - layer->src.tl.y));
drawn.translate_x = (int)layer->viewport.translate[0];
drawn.translate_y = (int)layer->viewport.translate[1];