Fix: Operator, app template and benchmarking script errors after media type
Always set the media type before the file format. Ref #142955 Pull Request: https://projects.blender.org/blender/blender/pulls/143433
This commit is contained in:
committed by
Brecht Van Lommel
parent
fa2062ee96
commit
eb8dc8f535
@@ -2222,15 +2222,19 @@ class NWSaveViewer(bpy.types.Operator, ExportHelper):
|
||||
'.tiff': 'TIFF',
|
||||
'.tif': 'TIFF'}
|
||||
basename, ext = path.splitext(fp)
|
||||
old_render_format = context.scene.render.image_settings.file_format
|
||||
image_settings = context.scene.render.image_settings
|
||||
old_media_type = image_settings.media_type
|
||||
old_file_format = image_settings.file_format
|
||||
old_tree_type = context.space_data.tree_type
|
||||
context.scene.render.image_settings.file_format = formats[self.filename_ext]
|
||||
image_settings.media_type = 'IMAGE'
|
||||
image_settings.file_format = formats[self.filename_ext]
|
||||
context.area.type = "IMAGE_EDITOR"
|
||||
context.area.spaces[0].image = bpy.data.images['Viewer Node']
|
||||
context.area.spaces[0].image.save_render(fp)
|
||||
context.area.type = "NODE_EDITOR"
|
||||
context.space_data.tree_type = old_tree_type
|
||||
context.scene.render.image_settings.file_format = old_render_format
|
||||
image_settings.media_type = old_media_type
|
||||
image_settings.file_format = old_file_format
|
||||
return {'FINISHED'}
|
||||
|
||||
|
||||
|
||||
@@ -112,6 +112,7 @@ def do_previews(do_objects, do_collections, do_scenes, do_data_intern):
|
||||
scene.render.film_transparent = True
|
||||
# TODO: define Cycles world?
|
||||
|
||||
scene.render.image_settings.media_type = 'IMAGE'
|
||||
scene.render.image_settings.file_format = 'PNG'
|
||||
scene.render.image_settings.color_depth = '8'
|
||||
scene.render.image_settings.color_mode = 'RGBA'
|
||||
|
||||
@@ -25,6 +25,7 @@ def update_factory_startup_ffmpeg_preset():
|
||||
|
||||
for scene in bpy.data.scenes:
|
||||
render = scene.render
|
||||
render.image_settings.media_type = 'VIDEO'
|
||||
render.image_settings.file_format = 'FFMPEG'
|
||||
|
||||
if preset_filepath:
|
||||
|
||||
@@ -56,6 +56,7 @@ def render(shading_system):
|
||||
set_shading_system(scene, shading_system)
|
||||
scene.render.filepath = "%s/test_renders/%s_%s" % (test_dir, filename, shading_system)
|
||||
|
||||
scene.render.image_settings.media_type = 'IMAGE'
|
||||
scene.render.image_settings.file_format = 'PNG'
|
||||
scene.render.use_file_extension = True
|
||||
|
||||
|
||||
@@ -24,6 +24,7 @@ def _run(args):
|
||||
scene = bpy.context.scene
|
||||
scene.render.engine = 'CYCLES'
|
||||
scene.render.filepath = args['render_filepath']
|
||||
scene.render.image_settings.media_type = 'IMAGE'
|
||||
scene.render.image_settings.file_format = 'PNG'
|
||||
scene.cycles.device = 'CPU' if device_type == 'CPU' else 'GPU'
|
||||
|
||||
|
||||
@@ -73,6 +73,7 @@ class ImBufTest(AbstractImBufTest):
|
||||
def _save_exr(self, img, out_exr_path):
|
||||
scene = bpy.data.scenes[0]
|
||||
image_settings = scene.render.image_settings
|
||||
image_settings.media_type = 'IMAGE'
|
||||
image_settings.file_format = "OPEN_EXR"
|
||||
image_settings.color_mode = "RGBA"
|
||||
image_settings.color_depth = "32"
|
||||
|
||||
@@ -33,6 +33,7 @@ def render_gl(context, filepath, shade):
|
||||
scene = context.scene
|
||||
render = scene.render
|
||||
render.filepath = filepath
|
||||
render.image_settings.media_type = 'IMAGE'
|
||||
render.image_settings.file_format = 'PNG'
|
||||
render.image_settings.color_mode = 'RGB'
|
||||
render.use_file_extension = True
|
||||
|
||||
@@ -953,6 +953,7 @@ def render_output(scene, bounds, filepath):
|
||||
scene.collection.objects.link(camera)
|
||||
|
||||
render = scene.render
|
||||
render.image_settings.media_type = 'IMAGE'
|
||||
render.image_settings.file_format = 'JPEG'
|
||||
render.image_settings.color_depth = '8'
|
||||
render.image_settings.color_mode = 'RGB'
|
||||
|
||||
Reference in New Issue
Block a user