Skip to content
Snippets Groups Projects
Commit 559f0be1 authored by Jesse Kaukonen's avatar Jesse Kaukonen
Browse files

- Editing subsamples so that they cannot cause workunits smaller than 100 samples

- Changing setting copying so that they are updated before saving the file, and are correct if edited without going back to Blender render panel
parent d89c8c8d
No related branches found
No related tags found
No related merge requests found
...@@ -21,7 +21,7 @@ DEV = False ...@@ -21,7 +21,7 @@ DEV = False
bl_info = { bl_info = {
"name": "Renderfarm.fi", "name": "Renderfarm.fi",
"author": "Nathan Letwory <nathan@letworyinteractive.com>, Jesse Kaukonen <jesse.kaukonen@gmail.com>", "author": "Nathan Letwory <nathan@letworyinteractive.com>, Jesse Kaukonen <jesse.kaukonen@gmail.com>",
"version": (17,), "version": (18,),
"blender": (2, 6, 2), "blender": (2, 6, 2),
"location": "Render > Engine > Renderfarm.fi", "location": "Render > Engine > Renderfarm.fi",
"description": "Send .blend as session to http://www.renderfarm.fi to render", "description": "Send .blend as session to http://www.renderfarm.fi to render",
...@@ -241,13 +241,13 @@ def changeSettings(): ...@@ -241,13 +241,13 @@ def changeSettings():
sce = bpy.context.scene sce = bpy.context.scene
rd = sce.render rd = sce.render
ore = sce.ore_render ore = sce.ore_render
# Necessary settings for BURP # Necessary settings for BURP
ore.resox = rd.resolution_x rd.resolution_x = ore.resox
ore.resoy = rd.resolution_y rd.resolution_y = ore.resoy
ore.start = sce.frame_start sce.frame_start = ore.start
ore.end = sce.frame_end sce.frame_end = ore.end
ore.fps = rd.fps rd.fps = ore.fps
bpy.file_format_warning = False bpy.file_format_warning = False
bpy.simulationWarning = False bpy.simulationWarning = False
...@@ -272,7 +272,13 @@ def changeSettings(): ...@@ -272,7 +272,13 @@ def changeSettings():
ore.file_format = 'PNG_FORMAT' ore.file_format = 'PNG_FORMAT'
if (ore.engine == 'cycles'): if (ore.engine == 'cycles'):
ore.samples = bpy.context.scene.cycles.samples bpy.context.scene.cycles.samples = ore.samples
if (ore.subsamples <= 0):
ore.subsamples = 1
if (ore.samples / ore.subsamples < 100.0):
ore.subsamples = float(ore.samples) / 100.0
# Multipart support doesn' work if SSS is used # Multipart support doesn' work if SSS is used
if ((rd.use_sss == True and hasSSSMaterial()) and ore.parts > 1): if ((rd.use_sss == True and hasSSSMaterial()) and ore.parts > 1):
...@@ -295,13 +301,7 @@ def prepareScene(): ...@@ -295,13 +301,7 @@ def prepareScene():
ore = sce.ore_render ore = sce.ore_render
changeSettings() changeSettings()
ore.resox = rd.resolution_x
ore.resoy = rd.resolution_y
ore.fps = rd.fps
ore.start = sce.frame_start
ore.end = sce.frame_end
print("Packing external textures...") print("Packing external textures...")
try: try:
bpy.ops.file.pack_all() bpy.ops.file.pack_all()
...@@ -349,11 +349,19 @@ class OpSwitchRenderfarm(bpy.types.Operator): ...@@ -349,11 +349,19 @@ class OpSwitchRenderfarm(bpy.types.Operator):
bl_idname = "ore.switch_to_renderfarm_render" bl_idname = "ore.switch_to_renderfarm_render"
def execute(self, context): def execute(self, context):
changeSettings() ore = bpy.context.scene.ore_render
if (bpy.context.scene.render.engine == 'CYCLES'): rd = bpy.context.scene.render
bpy.context.scene.ore_render.engine = 'cycles'
ore.resox = rd.resolution_x
ore.resoy = rd.resolution_y
ore.fps = rd.fps
ore.start = bpy.context.scene.frame_start
ore.end = bpy.context.scene.frame_end
if (rd.engine == 'CYCLES'):
ore.samples = bpy.context.scene.cycles.samples
ore.engine = 'cycles'
else: else:
bpy.context.scene.ore_render.engine = 'blender' ore.engine = 'blender'
bpy.context.scene.render.engine = 'RENDERFARMFI_RENDER' bpy.context.scene.render.engine = 'RENDERFARMFI_RENDER'
return {'FINISHED'} return {'FINISHED'}
...@@ -370,7 +378,8 @@ class OpSwitchBlenderRender(bpy.types.Operator): ...@@ -370,7 +378,8 @@ class OpSwitchBlenderRender(bpy.types.Operator):
bpy.context.scene.frame_start = ore.start bpy.context.scene.frame_start = ore.start
bpy.context.scene.frame_end = ore.end bpy.context.scene.frame_end = ore.end
if (bpy.context.scene.ore_render.engine == 'cycles'): if (bpy.context.scene.ore_render.engine == 'cycles'):
bpy.context.scene.render.engine = 'CYCLES' rd.engine = 'CYCLES'
bpy.context.scene.cycles.samples = ore.samples
else: else:
bpy.context.scene.render.engine = 'BLENDER_RENDER' bpy.context.scene.render.engine = 'BLENDER_RENDER'
return {'FINISHED'} return {'FINISHED'}
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment