forked from bartvdbraak/blender
Fix/workaround #31987: sample as lamp for environment textures not working
with multi GPU when resolution > 128.
This commit is contained in:
parent
8fa211dd81
commit
b1f1ee5138
@ -67,6 +67,8 @@ static void dump_background_pixels(Device *device, DeviceScene *dscene, int res,
|
|||||||
main_task.shader_x = 0;
|
main_task.shader_x = 0;
|
||||||
main_task.shader_w = width*height;
|
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;
|
list<DeviceTask> split_tasks;
|
||||||
main_task.split_max_size(split_tasks, 128*128);
|
main_task.split_max_size(split_tasks, 128*128);
|
||||||
|
|
||||||
@ -74,6 +76,10 @@ static void dump_background_pixels(Device *device, DeviceScene *dscene, int res,
|
|||||||
device->task_add(task);
|
device->task_add(task);
|
||||||
device->task_wait();
|
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_copy_from(d_output, 0, 1, d_output.size(), sizeof(float4));
|
||||||
device->mem_free(d_input);
|
device->mem_free(d_input);
|
||||||
|
Loading…
Reference in New Issue
Block a user