[Bf-blender-cvs] [6040984] master: Fix T50001: auto tile size addon broken after Cycles GPU device changes.

Brecht Van Lommel noreply at git.blender.org
Thu Nov 17 02:28:15 CET 2016


Commit: 60409841a4b9308575b108933f5e4c0d96e64f7e
Author: Brecht Van Lommel
Date:   Thu Nov 17 02:16:21 2016 +0100
Branches: master
https://developer.blender.org/rB60409841a4b9308575b108933f5e4c0d96e64f7e

Fix T50001: auto tile size addon broken after Cycles GPU device changes.

Adds a get_num_gpu_devices() utility function for the addon to use.

===================================================================

M	intern/cycles/blender/addon/properties.py
M	intern/cycles/blender/addon/ui.py

===================================================================

diff --git a/intern/cycles/blender/addon/properties.py b/intern/cycles/blender/addon/properties.py
index 27c9b92..a7dff1f 100644
--- a/intern/cycles/blender/addon/properties.py
+++ b/intern/cycles/blender/addon/properties.py
@@ -1199,15 +1199,21 @@ class CyclesPreferences(bpy.types.AddonPreferences):
         return cuda_devices, opencl_devices
 
 
-    def has_active_device(self):
+    def get_num_gpu_devices(self):
         import _cycles
         device_list = _cycles.available_devices()
+        num = 0
         for device in device_list:
             if device[1] != self.compute_device_type:
                 continue
-            if any(dev.use and dev.id == device[2] for dev in self.devices):
-                return True
-        return False
+            for dev in self.devices:
+                if dev.use and dev.id == device[2]:
+                    num += 1
+        return num
+
+
+    def has_active_device(self):
+        return self.get_num_gpu_devices() > 0
 
 
     def draw_impl(self, layout, context):
diff --git a/intern/cycles/blender/addon/ui.py b/intern/cycles/blender/addon/ui.py
index f28fa0d..f435af1 100644
--- a/intern/cycles/blender/addon/ui.py
+++ b/intern/cycles/blender/addon/ui.py
@@ -1620,7 +1620,7 @@ def draw_device(self, context):
         sub = row.split(align=True)
         sub.active = show_device_selection(context)
         sub.prop(cscene, "device", text="")
-        row.operator("wm.addon_userpref_show", text="Preferences", icon='PREFERENCES').module = __package__
+        row.operator("wm.addon_userpref_show", text="", icon='PREFERENCES').module = __package__
 
         if engine.with_osl() and use_cpu(context):
             layout.prop(cscene, "shading_system")




More information about the Bf-blender-cvs mailing list