forked from bartvdbraak/blender
a754e35198
* 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
79 lines
1.7 KiB
CMake
79 lines
1.7 KiB
CMake
# Copyright 2011-2021 Blender Foundation
|
|
#
|
|
# Licensed under the Apache License, Version 2.0 (the "License");
|
|
# you may not use this file except in compliance with the License.
|
|
# You may obtain a copy of the License at
|
|
#
|
|
# http://www.apache.org/licenses/LICENSE-2.0
|
|
#
|
|
# Unless required by applicable law or agreed to in writing, software
|
|
# distributed under the License is distributed on an "AS IS" BASIS,
|
|
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
# See the License for the specific language governing permissions and
|
|
# limitations under the License.
|
|
|
|
set(INC
|
|
..
|
|
)
|
|
|
|
set(SRC
|
|
adaptive_sampling.cpp
|
|
denoiser.cpp
|
|
denoiser_device.cpp
|
|
denoiser_oidn.cpp
|
|
denoiser_optix.cpp
|
|
path_trace.cpp
|
|
tile.cpp
|
|
pass_accessor.cpp
|
|
pass_accessor_cpu.cpp
|
|
pass_accessor_gpu.cpp
|
|
path_trace_display.cpp
|
|
path_trace_work.cpp
|
|
path_trace_work_cpu.cpp
|
|
path_trace_work_gpu.cpp
|
|
render_scheduler.cpp
|
|
shader_eval.cpp
|
|
work_balancer.cpp
|
|
work_tile_scheduler.cpp
|
|
)
|
|
|
|
set(SRC_HEADERS
|
|
adaptive_sampling.h
|
|
denoiser.h
|
|
denoiser_device.h
|
|
denoiser_oidn.h
|
|
denoiser_optix.h
|
|
path_trace.h
|
|
tile.h
|
|
pass_accessor.h
|
|
pass_accessor_cpu.h
|
|
pass_accessor_gpu.h
|
|
path_trace_display.h
|
|
path_trace_work.h
|
|
path_trace_work_cpu.h
|
|
path_trace_work_gpu.h
|
|
render_scheduler.h
|
|
shader_eval.h
|
|
work_balancer.h
|
|
work_tile_scheduler.h
|
|
)
|
|
|
|
set(LIB
|
|
# NOTE: Is required for RenderBuffers access. Might consider moving files around a bit to
|
|
# avoid such cyclic dependency.
|
|
cycles_render
|
|
|
|
cycles_util
|
|
)
|
|
|
|
if(WITH_OPENIMAGEDENOISE)
|
|
list(APPEND LIB
|
|
${OPENIMAGEDENOISE_LIBRARIES}
|
|
)
|
|
endif()
|
|
|
|
include_directories(${INC})
|
|
include_directories(SYSTEM ${INC_SYS})
|
|
|
|
cycles_add_library(cycles_integrator "${LIB}" ${SRC} ${SRC_HEADERS})
|