diff options
-rw-r--r-- | intern/cycles/blender/addon/properties.py | 14 | ||||
-rw-r--r-- | intern/cycles/blender/addon/ui.py | 2 |
2 files changed, 11 insertions, 5 deletions
diff --git a/intern/cycles/blender/addon/properties.py b/intern/cycles/blender/addon/properties.py index 27c9b922042..a7dff1f79f3 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 f28fa0d52ba..f435af178b5 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") |