## Suzannes focus_target = set_scene_objects() ## Camera bpy.ops.object.camera_add(view_align=False, location=[0.0, -12.0, 2.0]) camera = bpy.context.object utils.add_track_to_constraint(camera, focus_target) set_camera_params(camera, focus_target) ## Lights utils.build_environmental_light(world, hdri_path) ## Composition utils.build_scene_composition(scene) # Animation Setting utils.set_animation(scene, fps=24, frame_start=1, frame_end=40) # Render Setting utils.set_cycles_renderer(scene, resolution_percentage, output_file_path, camera, num_samples, use_denoising=True, use_motion_blur=True) # Render bpy.ops.render.render(animation=True)
output_file_path = str(sys.argv[sys.argv.index('--') + 2]) # "./" resolution_percentage = int(sys.argv[sys.argv.index('--') + 3]) # 100 num_samples = int(sys.argv[sys.argv.index('--') + 4]) # 128 # Parameters hdri_path = "./assets/HDRIs/green_point_park_2k.hdr" # Scene Building scene = bpy.data.scenes["Scene"] world = scene.world ## Reset utils.clean_objects() # Animation Setting utils.set_animation(scene, fps=24, frame_start=1, frame_end=40) # frame_end will be overriden later ## Scene focus_target_object = build_scene(scene, input_bvh_path) ## Camera camera_object = utils.create_camera(location=(0.0, -10.0, 1.0)) utils.add_copy_location_constraint(copy_to_object=camera_object, copy_from_object=focus_target_object, use_x=True, use_y=False, use_z=False) utils.add_track_to_constraint(camera_object, focus_target_object) utils.set_camera_params(camera_object.data, focus_target_object)
bpy.ops.object.empty_add(location=(0.0, 0, 0.0)) focus_target = bpy.context.object bpy.ops.object.select_all(action='DESELECT') default_camera_object.select_set(True) focus_target.select_set(True) bpy.ops.object.parent_set() focus_target.rotation_mode = 'XYZ' focus_target.rotation_euler = (0, 0, 0) focus_target.keyframe_insert(data_path='rotation_euler', frame=1) focus_target.rotation_euler = (0, 0, math.pi * 2) focus_target.keyframe_insert(data_path='rotation_euler', frame=120) for k in focus_target.animation_data.action.fcurves.find( 'rotation_euler', index=2).keyframe_points: k.interpolation = 'LINEAR' num_samples = 32 utils.set_animation(default_scene, fps=60, frame_start=1, frame_end=120) utils.set_cycles_renderer(default_scene, resolution_percentage, output_file_path, default_camera_object, num_samples, use_denoising=True) # Rendering bpy.ops.render.render(animation=True, write_still=True)