Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'intern/cycles/blender/addon/properties.py')
-rw-r--r--intern/cycles/blender/addon/properties.py15
1 files changed, 13 insertions, 2 deletions
diff --git a/intern/cycles/blender/addon/properties.py b/intern/cycles/blender/addon/properties.py
index 7b16ef1d543..2e149527066 100644
--- a/intern/cycles/blender/addon/properties.py
+++ b/intern/cycles/blender/addon/properties.py
@@ -1351,8 +1351,9 @@ class CyclesPreferences(bpy.types.AddonPreferences):
cuda_devices = []
opencl_devices = []
+ cpu_devices = []
for device in device_list:
- if not device[1] in {'CUDA', 'OPENCL'}:
+ if not device[1] in {'CUDA', 'OPENCL', 'CPU'}:
continue
entry = None
@@ -1361,18 +1362,28 @@ class CyclesPreferences(bpy.types.AddonPreferences):
if dev.id == device[2] and dev.type == device[1]:
entry = dev
break
- # Create new entry if no existing one was found
if not entry:
+ # Create new entry if no existing one was found
entry = self.devices.add()
entry.id = device[2]
entry.name = device[0]
entry.type = device[1]
+ entry.use = entry.type != 'CPU'
+ elif entry.name != device[0]:
+ # Update name in case it changed
+ entry.name = device[0]
# Sort entries into lists
if entry.type == 'CUDA':
cuda_devices.append(entry)
elif entry.type == 'OPENCL':
opencl_devices.append(entry)
+ else:
+ cpu_devices.append(entry)
+
+ cuda_devices.extend(cpu_devices)
+ opencl_devices.extend(cpu_devices)
+
return cuda_devices, opencl_devices