diff options
author | Brecht Van Lommel <brechtvanlommel@pandora.be> | 2012-10-01 22:31:32 +0400 |
---|---|---|
committer | Brecht Van Lommel <brechtvanlommel@pandora.be> | 2012-10-01 22:31:32 +0400 |
commit | b1f1ee5138a1398fb5a824732a9ec9d74b3113e1 (patch) | |
tree | bd128b7471d7bbd84a3ddd36d928c2d63a02e9cc | |
parent | 8fa211dd81a6767cef8913dd05189ec8ad3a12a5 (diff) |
Fix/workaround #31987: sample as lamp for environment textures not working
with multi GPU when resolution > 128.
-rw-r--r-- | intern/cycles/render/light.cpp | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/intern/cycles/render/light.cpp b/intern/cycles/render/light.cpp index 6445c04257f..5c1737bd60a 100644 --- a/intern/cycles/render/light.cpp +++ b/intern/cycles/render/light.cpp @@ -67,13 +67,19 @@ static void dump_background_pixels(Device *device, DeviceScene *dscene, int res, main_task.shader_x = 0; main_task.shader_w = width*height; + /* disabled splitting for now, there's an issue with multi-GPU mem_copy_from */ +#if 0 list<DeviceTask> split_tasks; - main_task.split_max_size(split_tasks, 128*128); + main_task.split_max_size(split_tasks, 128*128); foreach(DeviceTask& task, split_tasks) { device->task_add(task); device->task_wait(); } +#else + device->task_add(main_task); + device->task_wait(); +#endif device->mem_copy_from(d_output, 0, 1, d_output.size(), sizeof(float4)); device->mem_free(d_input); |