Fix T73954: Cycles viewport render from camera not respecting aspect ratio

This commit is contained in:
Brecht Van Lommel 2020-02-18 10:10:22 +01:00
parent f35f7bd97a
commit 79f99becaf
Notes: blender-bot 2023-02-13 23:39:48 +01:00
Referenced by issue #73954, 'Render region' doesn't account for different aspect ratio
1 changed files with 7 additions and 3 deletions

View File

@ -725,22 +725,26 @@ static void blender_camera_view_subset(BL::RenderEngine &b_engine,
BoundBox2D cam, view;
float view_aspect, cam_aspect, sensor_size;
/* get viewport viewplane */
/* Get viewport viewplane. */
BlenderCamera view_bcam;
blender_camera_init(&view_bcam, b_render);
blender_camera_from_view(&view_bcam, b_engine, b_scene, b_v3d, b_rv3d, width, height, true);
blender_camera_viewplane(&view_bcam, width, height, &view, &view_aspect, &sensor_size);
/* get camera viewplane */
/* Get camera viewplane. */
BlenderCamera cam_bcam;
blender_camera_init(&cam_bcam, b_render);
blender_camera_from_object(&cam_bcam, b_engine, b_ob, true);
/* Camera border is affect by aspect, viewport is not. */
cam_bcam.pixelaspect.x = b_render.pixel_aspect_x();
cam_bcam.pixelaspect.y = b_render.pixel_aspect_y();
blender_camera_viewplane(
&cam_bcam, cam_bcam.full_width, cam_bcam.full_height, &cam, &cam_aspect, &sensor_size);
/* return */
/* Return */
*view_box = view * (1.0f / view_aspect);
*cam_box = cam * (1.0f / cam_aspect);
}