[Durian-svn] [2983] Quality controls added.

brecht institute at blender.org
Thu May 6 15:43:41 CEST 2010


Revision: 2983
          https://blenderinstitute.dyndns.org/durian-svn/?do=log&project=durian&path=/&rev=2983
Author:   brecht
Date:     2010-05-06 15:43:41 +0200 (Thu, 06 May 2010)
Log Message:
-----------
Quality controls added.

Modified Paths:
--------------
    frm/master_ui.py
    frm/new_blender_setup.py
    frm/new_master.py
    frm/new_node_update_frames.sh

Modified: frm/master_ui.py
===================================================================
--- frm/master_ui.py	2010-05-06 13:42:32 UTC (rev 2982)
+++ frm/master_ui.py	2010-05-06 13:43:41 UTC (rev 2983)
@@ -50,7 +50,7 @@
 
 class Job:
     priority_types = ('Low', 'Medium', 'High', 'Critical')
-    quality_types = ('Final 2K',)
+    quality_types = ('Final 4K', 'Final 2K', 'Final 1K', 'Final 0.5k', 'Preview 1K', 'NoShading 1K', 'Simplified 1K')
     status_types = ('Disabled', 'In Progress', 'Done!')
 
     def __init__(self, id, revision, quality):

Modified: frm/new_blender_setup.py
===================================================================
--- frm/new_blender_setup.py	2010-05-06 13:42:32 UTC (rev 2982)
+++ frm/new_blender_setup.py	2010-05-06 13:43:41 UTC (rev 2983)
@@ -4,6 +4,9 @@
 import os
 import sys
 
+render_frame = int(sys.argv[-3])
+quality = sys.argv[-2] + " " + sys.argv[-1]
+
 def get_ip():
 
     import socket
@@ -45,18 +48,15 @@
 for scene in bpy.data.scenes:
     rd = scene.render
 
-    # file stuff...
-    override = False # (rd.file_format != 'PNG')
-
+    # file output
     rd.file_format = 'OPEN_EXR'
     rd.exr_half = True
-    rd.output_path = "/home/brecht/Desktop/frames/%s/%s_######" % (fname, fname)
+    rd.output_path = "/shared/software/durian_farm/frames/%s/%s_######" % (fname, fname)
     rd.use_file_extension = True
-
     rd.use_placeholder = False
     rd.use_overwrite = False
 
-
+    # stamp
     rd.render_stamp = False
     rd.stamp_note = True
     rd.stamp_render_time = True
@@ -65,19 +65,6 @@
     rd.stamp_foreground = 1.0, 1.0, 1.0, 1.0
     rd.stamp_background = 0.0, 0.0, 0.0, 0.75
 
-    if override:
-        continue
-
-    # render settings...
-    rd.resolution_percentage = 100
-    rd.resolution_x = 2048
-    rd.resolution_y = 872
-
-    rd.use_border = False
-#    rd.color_management = False
-#    rd.alpha_mode = 'SKY'
-    rd.color_mode = 'RGB'
-
     # performance/memory
     rd.free_image_textures = True
     rd.save_buffers = True
@@ -87,30 +74,53 @@
     if rd.parts_x < 32: rd.parts_x = 32
     if rd.parts_y < 16: rd.parts_y = 16
 
-    if bpy.app.debug:
+    # resolution
+    rd.resolution_percentage = 100
+    rd.resolution_x = 2048
+    rd.resolution_y = 872
+    rd.use_border = False
+    rd.color_mode = 'RGB'
+
+    # quality
+    if quality == "Preview 1K":
         rd.resolution_percentage = 50
-        # rd.simplify_child_particles = 0.0
-        #rd.simplify_shadow_samples = 0
-        #rd.simplify_subdivision = 0
+
+        rd.use_simplify = True
+        rd.simplify_subdivision = 0
+        rd.simplify_child_particles = 1.0
         rd.simplify_triangulate = True
+        rd.simplify_shadow_samples = 1
+        rd.simplify_ao_sss = 0.2
+        if scene.world:
+            scene.world.lighting.use_cache = False
+            scene.world.lighting.samples = 1
+    elif quality == "NoShading 1K":
+        rd.resolution_percentage = 50
+
+        rd.use_textures = False
+        rd.use_raytracing = False
+        rd.use_sss = False
+        rd.use_shadows = False
+    elif quality == "Simplified 1K":
+        rd.resolution_percentage = 50
+
+        rd.use_textures = False
+        rd.use_raytracing = False
+        rd.use_sss = False
+        rd.use_shadows = False
+
         rd.use_simplify = True
-        
-        #rd.use_textures = False
-        #rd.use_raytracing = False
-        #rd.use_sss = False
-        #rd.use_shadows = False
-        
-        # rd.file_format = 'PNG'
+        rd.simplify_subdivision = 0
+        rd.simplify_child_particles = 0.1
+        rd.simplify_triangulate = True
+    elif quality == "Final 4K":
+        # is this resolution right?
+        rd.resolution_percentage = 200
+    elif quality == "Final 1K":
+        rd.resolution_percentage = 50
+    elif quality == "Final 0.5K":
+        rd.resolution_percentage = 25
 
-    # special ben check
-    '''
-    if ip.endswith(".12"):
-        if "nautilus" in os.popen("ps -A").read():
-            rd.threads_mode = 'FIXED'
-            rd.threads = 12
-    '''
-
-    render_frame = int(sys.argv[-1])
     scene.frame_start = render_frame
     scene.frame_end = render_frame
 

Modified: frm/new_master.py
===================================================================
--- frm/new_master.py	2010-05-06 13:42:32 UTC (rev 2982)
+++ frm/new_master.py	2010-05-06 13:43:41 UTC (rev 2983)
@@ -233,7 +233,7 @@
     # print("render jobs")
     touch_busy(ip)
     FARM_DIR_LOCAL = "/media/data/durian_farm_svn"
-    remote_command(ip, os.path.join(FARM_DIR, "new_node_update_frames.sh") + " " + os.path.join(FARM_DIR_LOCAL, job.id) + " " + str(frame))
+    remote_command(ip, os.path.join(FARM_DIR, "new_node_update_frames.sh") + " " + os.path.join(FARM_DIR_LOCAL, job.id) + " " + str(frame) + " \"" + job.quality + "\"")
 
 def stage_in():
 

Modified: frm/new_node_update_frames.sh
===================================================================
--- frm/new_node_update_frames.sh	2010-05-06 13:42:32 UTC (rev 2982)
+++ frm/new_node_update_frames.sh	2010-05-06 13:43:41 UTC (rev 2983)
@@ -17,11 +17,12 @@
 
 BLEND=$1
 FRAME=$2
+QUALITY=$3
 
 # get info on the file we're rendering
-echo "Rendering "$BLEND":"$FRAME > $BUSY
+echo "Rendering "${BLEND/\/media\/data\/durian_farm_svn\//}":"$FRAME > $BUSY
 
 # -a doesnt work. TODO, find out why, render with operator until then.
-$FARM_DIR/new_node_command.sh nice -n 19 $PREFIX_SRC/blender_farm.sh -b -noaudio $BLEND -P $FARM_DIR/new_blender_setup.py -- $FRAME
+$FARM_DIR/new_node_command.sh nice -n 19 $PREFIX_SRC/blender_farm.sh -b -noaudio $BLEND -P $FARM_DIR/new_blender_setup.py -- $FRAME $QUALITY
 
 rm $BUSY



More information about the Durian-svn mailing list