From 283794f4b6f3a3d802f393382f2c5710527ab6a4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Candice=20Bent=C3=A9jac?= Date: Thu, 14 Dec 2023 18:57:34 +0100 Subject: [PATCH] [nodes] Blender: Rescale rendered images based on their pixel aspect ratio --- meshroom/nodes/blender/scripts/preview.py | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/meshroom/nodes/blender/scripts/preview.py b/meshroom/nodes/blender/scripts/preview.py index fdb2dc09d64..3bf1259df3d 100644 --- a/meshroom/nodes/blender/scripts/preview.py +++ b/meshroom/nodes/blender/scripts/preview.py @@ -396,6 +396,13 @@ def main(): setupRender(view, intrinsic, pose, args.output) bpy.ops.render.render(write_still=True) + # if the pixel aspect ratio is not 1, reload and rescale the rendered image + if bpy.context.scene.render.pixel_aspect_x != 1.0: + final_img = bpy.data.images.load(bpy.context.scene.render.filepath) + final_img.scale(int(bpy.context.scene.render.resolution_x * bpy.context.scene.render.pixel_aspect_x), bpy.context.scene.render.resolution_y) + final_img.save() + bpy.data.images.remove(final_img) + # clear memory if img: bpy.data.images.remove(img)