Preview
from anatools.lib.node import Node
import anatools.lib.context as ctx
from PIL import Image, ImageFile
class Render(Node):
def exec(self):
ana_scene = self.inputs["Scene"][0]
# cut the resolution in half
if ctx.preview:
bpy.context.scene.cycles.samples = 10
bpy.context.scene.render.resolution_x = int(bpy.context.scene.render.resolution_x / 2)
bpy.context.scene.render.resolution_y = int(bpy.context.scene.render.resolution_y / 2)
# render the image
bpy.ops.render.render(write_still=True, scene=ana_scene.blender_scene.name)
# generate preview image
if ctx.preview:
filename = f'{ctx.interp_num:010}-{ana_scene.blender_scene.frame_current}-{ana_scene.sensor_name}.png'
image_file = os.path.join(ctx.output, "images", filename)
image = Image.open(image_file)
image.save( os.path.join(ctx.output,"preview.png") )
else:
ana_scene.write_ana_annotations()
ana_scene.write_ana_metadata()
return {}Last updated

