[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [28575] branches/render25: Render Branch: svn merge https://svn.blender.org/svnroot/bf-blender/trunk/blender -r28522 :28574

Campbell Barton ideasman42 at gmail.com
Tue May 4 17:14:17 CEST 2010


Revision: 28575
          http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=28575
Author:   campbellbarton
Date:     2010-05-04 17:14:17 +0200 (Tue, 04 May 2010)

Log Message:
-----------
Render Branch: svn merge https://svn.blender.org/svnroot/bf-blender/trunk/blender -r28522:28574
note: rna_lamp.c changes didnt make it in.

Modified Paths:
--------------
    branches/render25/intern/ghost/intern/GHOST_DropTargetWin32.cpp
    branches/render25/intern/ghost/intern/GHOST_WindowCocoa.mm
    branches/render25/release/datafiles/blenderbuttons
    branches/render25/release/scripts/io/netrender/__init__.py
    branches/render25/release/scripts/io/netrender/model.py
    branches/render25/release/scripts/io/netrender/operators.py
    branches/render25/release/scripts/io/netrender/slave.py
    branches/render25/release/scripts/io/netrender/ui.py
    branches/render25/release/scripts/io/netrender/utils.py
    branches/render25/release/scripts/modules/rna_info.py
    branches/render25/release/scripts/op/console_python.py
    branches/render25/release/scripts/op/image.py
    branches/render25/release/scripts/op/sequencer.py
    branches/render25/release/scripts/op/vertexpaint_dirt.py
    branches/render25/release/scripts/ui/properties_data_mesh.py
    branches/render25/release/scripts/ui/properties_material.py
    branches/render25/release/scripts/ui/properties_particle.py
    branches/render25/release/scripts/ui/properties_physics_common.py
    branches/render25/release/scripts/ui/properties_render.py
    branches/render25/release/scripts/ui/properties_texture.py
    branches/render25/release/scripts/ui/space_image.py
    branches/render25/release/scripts/ui/space_info.py
    branches/render25/release/scripts/ui/space_outliner.py
    branches/render25/release/scripts/ui/space_sequencer.py
    branches/render25/release/scripts/ui/space_time.py
    branches/render25/release/scripts/ui/space_userpref_keymap.py
    branches/render25/release/scripts/ui/space_view3d.py
    branches/render25/source/blender/blenkernel/intern/group.c
    branches/render25/source/blender/blenkernel/intern/ipo.c
    branches/render25/source/blender/blenkernel/intern/pointcache.c
    branches/render25/source/blender/blenkernel/intern/sequencer.c
    branches/render25/source/blender/blenkernel/intern/writeffmpeg.c
    branches/render25/source/blender/blenloader/intern/readfile.c
    branches/render25/source/blender/editors/animation/anim_draw.c
    branches/render25/source/blender/editors/datafiles/blenderbuttons.c
    branches/render25/source/blender/editors/include/UI_icons.h
    branches/render25/source/blender/editors/object/object_constraint.c
    branches/render25/source/blender/editors/object/object_edit.c
    branches/render25/source/blender/editors/object/object_intern.h
    branches/render25/source/blender/editors/object/object_modifier.c
    branches/render25/source/blender/editors/object/object_ops.c
    branches/render25/source/blender/editors/space_logic/logic_ops.c
    branches/render25/source/blender/editors/space_logic/logic_window.c
    branches/render25/source/blender/editors/space_node/node_draw.c
    branches/render25/source/blender/makesdna/DNA_controller_types.h
    branches/render25/source/blender/makesdna/DNA_sensor_types.h
    branches/render25/source/blender/makesrna/RNA_enum_types.h
    branches/render25/source/blender/makesrna/intern/rna_actuator.c
    branches/render25/source/blender/makesrna/intern/rna_animation.c
    branches/render25/source/blender/makesrna/intern/rna_animviz.c
    branches/render25/source/blender/makesrna/intern/rna_armature.c
    branches/render25/source/blender/makesrna/intern/rna_boid.c
    branches/render25/source/blender/makesrna/intern/rna_color.c
    branches/render25/source/blender/makesrna/intern/rna_controller.c
    branches/render25/source/blender/makesrna/intern/rna_curve.c
    branches/render25/source/blender/makesrna/intern/rna_fluidsim.c
    branches/render25/source/blender/makesrna/intern/rna_main.c
    branches/render25/source/blender/makesrna/intern/rna_material.c
    branches/render25/source/blender/makesrna/intern/rna_mesh.c
    branches/render25/source/blender/makesrna/intern/rna_meta.c
    branches/render25/source/blender/makesrna/intern/rna_modifier.c
    branches/render25/source/blender/makesrna/intern/rna_object.c
    branches/render25/source/blender/makesrna/intern/rna_object_force.c
    branches/render25/source/blender/makesrna/intern/rna_particle.c
    branches/render25/source/blender/makesrna/intern/rna_pose.c
    branches/render25/source/blender/makesrna/intern/rna_property.c
    branches/render25/source/blender/makesrna/intern/rna_rna.c
    branches/render25/source/blender/makesrna/intern/rna_scene.c
    branches/render25/source/blender/makesrna/intern/rna_sculpt_paint.c
    branches/render25/source/blender/makesrna/intern/rna_sensor.c
    branches/render25/source/blender/makesrna/intern/rna_sequencer.c
    branches/render25/source/blender/makesrna/intern/rna_smoke.c
    branches/render25/source/blender/makesrna/intern/rna_space.c
    branches/render25/source/blender/makesrna/intern/rna_texture.c
    branches/render25/source/blender/makesrna/intern/rna_userdef.c
    branches/render25/source/blender/python/doc/sphinx_doc_gen.py
    branches/render25/source/blender/python/doc/sphinx_doc_gen.sh
    branches/render25/source/blender/python/intern/bpy_rna.c
    branches/render25/source/blender/windowmanager/intern/wm_operators.c

Modified: branches/render25/intern/ghost/intern/GHOST_DropTargetWin32.cpp
===================================================================
--- branches/render25/intern/ghost/intern/GHOST_DropTargetWin32.cpp	2010-05-04 15:04:28 UTC (rev 28574)
+++ branches/render25/intern/ghost/intern/GHOST_DropTargetWin32.cpp	2010-05-04 15:14:17 UTC (rev 28575)
@@ -110,8 +110,8 @@
  */
 HRESULT __stdcall GHOST_DropTargetWin32::DragEnter(IDataObject * pDataObject, DWORD grfKeyState, POINTL pt, DWORD * pdwEffect)
 {
-	// we don't know yet if we accept the drop.
-	m_window->setAcceptDragOperation(false);
+	// we accept all drop by default
+	m_window->setAcceptDragOperation(true);
 	*pdwEffect = DROPEFFECT_NONE;
 	
 	m_draggedObjectType = getGhostType(pDataObject);

Modified: branches/render25/intern/ghost/intern/GHOST_WindowCocoa.mm
===================================================================
--- branches/render25/intern/ghost/intern/GHOST_WindowCocoa.mm	2010-05-04 15:04:28 UTC (rev 28574)
+++ branches/render25/intern/ghost/intern/GHOST_WindowCocoa.mm	2010-05-04 15:14:17 UTC (rev 28575)
@@ -167,7 +167,7 @@
 	else if ([[draggingPBoard types] containsObject:NSStringPboardType]) m_draggedObjectType = GHOST_kDragnDropTypeString;
 	else return NSDragOperationNone;
 	
-	associatedWindow->setAcceptDragOperation(FALSE); //Drag operation needs to be accepted explicitly by the event manager
+	associatedWindow->setAcceptDragOperation(TRUE); //Drag operation is accepted by default
 	systemCocoa->handleDraggingEvent(GHOST_kEventDraggingEntered, m_draggedObjectType, associatedWindow, mouseLocation.x, mouseLocation.y, nil);
 	return NSDragOperationCopy;
 }

Modified: branches/render25/release/datafiles/blenderbuttons
===================================================================
(Binary files differ)

Modified: branches/render25/release/scripts/io/netrender/__init__.py
===================================================================
--- branches/render25/release/scripts/io/netrender/__init__.py	2010-05-04 15:04:28 UTC (rev 28574)
+++ branches/render25/release/scripts/io/netrender/__init__.py	2010-05-04 15:14:17 UTC (rev 28575)
@@ -27,6 +27,7 @@
 from netrender import utils
 from netrender import balancing
 from netrender import ui
+from netrender import repath
 
 jobs = []
 slaves = []

Modified: branches/render25/release/scripts/io/netrender/model.py
===================================================================
--- branches/render25/release/scripts/io/netrender/model.py	2010-05-04 15:04:28 UTC (rev 28574)
+++ branches/render25/release/scripts/io/netrender/model.py	2010-05-04 15:14:17 UTC (rev 28575)
@@ -105,6 +105,7 @@
 class RenderFile:
     def __init__(self, filepath = "", index = 0, start = -1, end = -1, signature=0):
         self.filepath = filepath
+        self.original_path = filepath
         self.signature = signature
         self.index = index
         self.start = start
@@ -113,6 +114,7 @@
     def serialize(self):
         return 	{
                     "filepath": self.filepath,
+                    "original_path": self.original_path,
                     "index": self.index,
                     "start": self.start,
                     "end": self.end,
@@ -125,6 +127,7 @@
             return None
 
         rfile = RenderFile(data["filepath"], data["index"], data["start"], data["end"], data["signature"])
+        rfile.original_path = data["original_path"]
 
         return rfile
 

Modified: branches/render25/release/scripts/io/netrender/operators.py
===================================================================
--- branches/render25/release/scripts/io/netrender/operators.py	2010-05-04 15:04:28 UTC (rev 28574)
+++ branches/render25/release/scripts/io/netrender/operators.py	2010-05-04 15:14:17 UTC (rev 28575)
@@ -159,6 +159,36 @@
         return self.execute(context)
 
 @rnaType
+class RENDER_OT_netclientsendframe(bpy.types.Operator):
+    '''Send Render Job with current frame to the Network'''
+    bl_idname = "render.netclientsendframe"
+    bl_label = "Send current frame job"
+
+    def poll(self, context):
+        return True
+
+    def execute(self, context):
+        scene = context.scene
+        netsettings = scene.network_render
+
+        try:
+            conn = clientConnection(netsettings.server_address, netsettings.server_port, self.report)
+
+            if conn:
+                # Sending file
+                scene.network_render.job_id = client.clientSendJob(conn, scene, False)
+                conn.close()
+                self.report('INFO', "Job sent to master")
+        except Exception as err:
+            self.report('ERROR', str(err))
+
+
+        return {'FINISHED'}
+
+    def invoke(self, context, event):
+        return self.execute(context)
+
+ at rnaType
 class RENDER_OT_netclientstatus(bpy.types.Operator):
     '''Refresh the status of the current jobs'''
     bl_idname = "render.netclientstatus"

Modified: branches/render25/release/scripts/io/netrender/slave.py
===================================================================
--- branches/render25/release/scripts/io/netrender/slave.py	2010-05-04 15:04:28 UTC (rev 28574)
+++ branches/render25/release/scripts/io/netrender/slave.py	2010-05-04 15:14:17 UTC (rev 28575)
@@ -22,6 +22,7 @@
 
 from netrender.utils import *
 import netrender.model
+import netrender.repath
 
 BLENDER_PATH = sys.argv[0]
 
@@ -75,9 +76,10 @@
         
         if not found:
             print("Found file %s at %s but signature mismatch!" % (rfile.filepath, job_full_path))
+            job_full_path = prefixPath(JOB_PREFIX, rfile.filepath, main_path, force = True)
 
     if not found:
-        temp_path = JOB_PREFIX + "slave.temp.blend"
+        temp_path = JOB_PREFIX + "slave.temp"
         conn.request("GET", fileURL(job_id, rfile.index), headers={"slave-id":slave_id})
         response = conn.getresponse()
 
@@ -94,6 +96,8 @@
         f.close()
 
         os.renames(temp_path, job_full_path)
+        
+    rfile.filepath = job_full_path
 
     return job_full_path
 
@@ -138,12 +142,15 @@
                     job_full_path = testFile(conn, job.id, slave_id, job.files[0], JOB_PREFIX)
                     print("Fullpath", job_full_path)
                     print("File:", main_file, "and %i other files" % (len(job.files) - 1,))
-                    engine.update_stats("", "Render File "+ main_file+ " for job "+ job.id)
 
                     for rfile in job.files[1:]:
+                        testFile(conn, job.id, slave_id, rfile, JOB_PREFIX, main_path)
                         print("\t", rfile.filepath)
-                        testFile(conn, job.id, slave_id, rfile, JOB_PREFIX, main_path)
+                        
+                    netrender.repath.update(job)
 
+                    engine.update_stats("", "Render File "+ main_file+ " for job "+ job.id)
+
                 # announce log to master
                 logfile = netrender.model.LogFile(job.id, slave_id, [frame.number for frame in job.frames])
                 conn.request("POST", "/log", bytes(repr(logfile.serialize()), encoding='utf8'))
@@ -198,6 +205,9 @@
                         if testCancel(conn, job.id, first_frame):
                             cancelled = True
 
+                if job.type == netrender.model.JOB_BLENDER:
+                    netrender.repath.reset(job)
+
                 # read leftovers if needed
                 stdout += process.stdout.read()
 

Modified: branches/render25/release/scripts/io/netrender/ui.py
===================================================================
--- branches/render25/release/scripts/io/netrender/ui.py	2010-05-04 15:04:28 UTC (rev 28574)
+++ branches/render25/release/scripts/io/netrender/ui.py	2010-05-04 15:14:17 UTC (rev 28575)
@@ -187,6 +187,7 @@
         if netsettings.server_address != "[default]":
             layout.operator("render.netclientanim", icon='RENDER_ANIMATION')
             layout.operator("render.netclientsend", icon='FILE_BLEND')
+            layout.operator("render.netclientsendframe", icon='RENDER_STILL')
             if netsettings.job_id:
                 row = layout.row()
                 row.operator("render.render", text="Get Image", icon='RENDER_STILL')

Modified: branches/render25/release/scripts/io/netrender/utils.py
===================================================================
--- branches/render25/release/scripts/io/netrender/utils.py	2010-05-04 15:04:28 UTC (rev 28574)
+++ branches/render25/release/scripts/io/netrender/utils.py	2010-05-04 15:14:17 UTC (rev 28575)
@@ -28,7 +28,7 @@
 except:
   bpy = None
 
-VERSION = bytes("0.8", encoding='utf8')
+VERSION = bytes("0.9", encoding='utf8')
 
 # Jobs status
 JOB_WAITING = 0 # before all data has been entered
@@ -166,18 +166,21 @@
     return m.hexdigest()
     
 
-def prefixPath(prefix_directory, file_path, prefix_path):
+def prefixPath(prefix_directory, file_path, prefix_path, force = False):
     if os.path.isabs(file_path):
         # if an absolute path, make sure path exists, if it doesn't, use relative local path
         full_path = file_path
-        if not os.path.exists(full_path):
+        if force or not os.path.exists(full_path):
             p, n = os.path.split(full_path)
 
             if prefix_path and p.startswith(prefix_path):
-                directory = prefix_directory + p[len(prefix_path):]
-                full_path = directory + os.sep + n
-                if not os.path.exists(directory):
-                    os.mkdir(directory)
+                if len(prefix_path) < len(p):
+                    directory = prefix_directory + p[len(prefix_path)+1:] + os.sep # +1 to remove separator
+                    if not os.path.exists(directory):
+                        os.mkdir(directory)
+                else:
+                    directory = prefix_directory
+                full_path = directory + n
             else:
                 full_path = prefix_directory + n
     else:

Modified: branches/render25/release/scripts/modules/rna_info.py
===================================================================
--- branches/render25/release/scripts/modules/rna_info.py	2010-05-04 15:04:28 UTC (rev 28574)
+++ branches/render25/release/scripts/modules/rna_info.py	2010-05-04 15:14:17 UTC (rev 28575)
@@ -200,41 +200,41 @@
 
         if self.type == "enum":
             self.enum_items[:] = rna_prop.items.keys()
-
+            
+            
         if self.array_length:

@@ Diff output truncated at 10240 characters. @@




More information about the Bf-blender-cvs mailing list