Blender Git Loki
Git Commits -> Revision a754e35
Revision a754e35 by Brecht Van Lommel (master) September 30, 2021, 18:48 (GMT) |
Cycles: refactor API for GPU display * Split GPUDisplay into two classes. PathTraceDisplay to implement the Cycles side, and DisplayDriver to implement the host application side. The DisplayDriver is now a fully abstract base class, embedded in the PathTraceDisplay. * Move copy_pixels_to_texture implementation out of the host side into the Cycles side, since it can be implemented in terms of the texture buffer mapping. * Move definition of DeviceGraphicsInteropDestination into display driver header, so that we do not need to expose private device headers in the public API. * Add more detailed comments about how the DisplayDriver should be implemented. The "driver" terminology might not be obvious, but is also used in other renderers. Differential Revision: https://developer.blender.org/D12626 |
Commit Details:
Full Hash: a754e35198d852ea34e2b82cd2b126538e6f5a3b
Parent Commit: ac58205
Lines Changed: +1716, -1625
5 Added Paths:
/intern/cycles/blender/blender_display_driver.cpp (+754, -0) (View)
/intern/cycles/blender/blender_display_driver.h (+210, -0) (View)
/intern/cycles/integrator/path_trace_display.cpp (+268, -0) (View)
/intern/cycles/integrator/path_trace_display.h (+201, -0) (View)
/intern/cycles/render/display_driver.h (+131, -0) (View)
/intern/cycles/blender/blender_display_driver.h (+210, -0) (View)
/intern/cycles/integrator/path_trace_display.cpp (+268, -0) (View)
/intern/cycles/integrator/path_trace_display.h (+201, -0) (View)
/intern/cycles/render/display_driver.h (+131, -0) (View)
4 Deleted Paths:
/intern/cycles/blender/blender_gpu_display.cpp (+0, -791)
/intern/cycles/blender/blender_gpu_display.h (+0, -215)
/intern/cycles/render/gpu_display.cpp (+0, -227)
/intern/cycles/render/gpu_display.h (+0, -247)
/intern/cycles/blender/blender_gpu_display.h (+0, -215)
/intern/cycles/render/gpu_display.cpp (+0, -227)
/intern/cycles/render/gpu_display.h (+0, -247)
21 Modified Paths:
/intern/cycles/blender/blender_session.cpp (+8, -7) (Diff)
/intern/cycles/blender/blender_session.h (+3, -3) (Diff)
/intern/cycles/blender/CMakeLists.txt (+2, -2) (Diff)
/intern/cycles/device/cuda/graphics_interop.cpp (+8, -7) (Diff)
/intern/cycles/device/cuda/graphics_interop.h (+1, -1) (Diff)
/intern/cycles/device/device_graphics_interop.h (+3, -16) (Diff)
/intern/cycles/device/hip/graphics_interop.cpp (+17, -5) (Diff)
/intern/cycles/device/hip/graphics_interop.h (+4, -1) (Diff)
/intern/cycles/integrator/CMakeLists.txt (+2, -0) (Diff)
/intern/cycles/integrator/path_trace.cpp (+26, -21) (Diff)
/intern/cycles/integrator/path_trace.h (+8, -7) (Diff)
/intern/cycles/integrator/path_trace_work.cpp (+4, -4) (Diff)
/intern/cycles/integrator/path_trace_work.h (+5, -7) (Diff)
/intern/cycles/integrator/path_trace_work_cpu.cpp (+10, -10) (Diff)
/intern/cycles/integrator/path_trace_work_cpu.h (+4, -4) (Diff)
/intern/cycles/integrator/path_trace_work_gpu.cpp (+27, -29) (Diff)
/intern/cycles/integrator/path_trace_work_gpu.h (+12, -12) (Diff)
/intern/cycles/integrator/render_scheduler.h (+1, -1) (Diff)
/intern/cycles/render/CMakeLists.txt (+1, -2) (Diff)
/intern/cycles/render/session.cpp (+4, -4) (Diff)
/intern/cycles/render/session.h (+2, -2) (Diff)
/intern/cycles/blender/blender_session.h (+3, -3) (Diff)
/intern/cycles/blender/CMakeLists.txt (+2, -2) (Diff)
/intern/cycles/device/cuda/graphics_interop.cpp (+8, -7) (Diff)
/intern/cycles/device/cuda/graphics_interop.h (+1, -1) (Diff)
/intern/cycles/device/device_graphics_interop.h (+3, -16) (Diff)
/intern/cycles/device/hip/graphics_interop.cpp (+17, -5) (Diff)
/intern/cycles/device/hip/graphics_interop.h (+4, -1) (Diff)
/intern/cycles/integrator/CMakeLists.txt (+2, -0) (Diff)
/intern/cycles/integrator/path_trace.cpp (+26, -21) (Diff)
/intern/cycles/integrator/path_trace.h (+8, -7) (Diff)
/intern/cycles/integrator/path_trace_work.cpp (+4, -4) (Diff)
/intern/cycles/integrator/path_trace_work.h (+5, -7) (Diff)
/intern/cycles/integrator/path_trace_work_cpu.cpp (+10, -10) (Diff)
/intern/cycles/integrator/path_trace_work_cpu.h (+4, -4) (Diff)
/intern/cycles/integrator/path_trace_work_gpu.cpp (+27, -29) (Diff)
/intern/cycles/integrator/path_trace_work_gpu.h (+12, -12) (Diff)
/intern/cycles/integrator/render_scheduler.h (+1, -1) (Diff)
/intern/cycles/render/CMakeLists.txt (+1, -2) (Diff)
/intern/cycles/render/session.cpp (+4, -4) (Diff)
/intern/cycles/render/session.h (+2, -2) (Diff)