21 bool *cancel_requested_flag)
24 return make_unique<PathTraceWorkCPU>(device, film, device_scene, cancel_requested_flag);
31 return make_unique<PathTraceWorkGPU>(device, film, device_scene, cancel_requested_flag);
37 bool *cancel_requested_flag)
40 device_scene_(device_scene),
42 effective_buffer_params_(buffers_->
params),
43 cancel_requested_flag_(cancel_requested_flag)
86 const int64_t offset_in_floats = offset_y * row_stride;
89 float *dst = render_buffers->
buffer.
data() + offset_in_floats;
91 memcpy(dst,
src, data_size);
103 const int64_t offset_in_floats = offset_y * row_stride;
105 const float *
src = render_buffers->
buffer.
data() + offset_in_floats;
106 float *dst =
buffers_->buffer.data();
108 memcpy(dst,
src, data_size);
160 pass_access_info.
type = display_pass->
type;
175 kfilm.use_approximate_shadow_catcher && !kbackground.transparent;
179 return pass_access_info;
193 destination.
offset = texture_y * display_texture_size.
x + texture_x;
194 destination.
stride = display_texture_size.
x;
typedef float(TangentPoint)[2]
_GL_VOID GLfloat value _GL_VOID_RET _GL_VOID const GLuint GLboolean *residences _GL_BOOL_RET _GL_VOID GLsizei height
_GL_VOID GLfloat value _GL_VOID_RET _GL_VOID const GLuint GLboolean *residences _GL_BOOL_RET _GL_VOID GLsizei GLfloat GLfloat GLfloat GLfloat const GLubyte *bitmap _GL_VOID_RET _GL_VOID GLenum const void *lists _GL_VOID_RET _GL_VOID const GLdouble *equation _GL_VOID_RET _GL_VOID GLdouble GLdouble blue _GL_VOID_RET _GL_VOID GLfloat GLfloat blue _GL_VOID_RET _GL_VOID GLint GLint blue _GL_VOID_RET _GL_VOID GLshort GLshort blue _GL_VOID_RET _GL_VOID GLubyte GLubyte blue _GL_VOID_RET _GL_VOID GLuint GLuint blue _GL_VOID_RET _GL_VOID GLushort GLushort blue _GL_VOID_RET _GL_VOID GLbyte GLbyte GLbyte alpha _GL_VOID_RET _GL_VOID GLdouble GLdouble GLdouble alpha _GL_VOID_RET _GL_VOID GLfloat GLfloat GLfloat alpha _GL_VOID_RET _GL_VOID GLint GLint GLint alpha _GL_VOID_RET _GL_VOID GLshort GLshort GLshort alpha _GL_VOID_RET _GL_VOID GLubyte GLubyte GLubyte alpha _GL_VOID_RET _GL_VOID GLuint GLuint GLuint alpha _GL_VOID_RET _GL_VOID GLushort GLushort GLushort alpha _GL_VOID_RET _GL_VOID GLenum mode _GL_VOID_RET _GL_VOID GLint GLsizei width
void render_buffers_host_copy_denoised(RenderBuffers *dst, const BufferParams &dst_params, const RenderBuffers *src, const BufferParams &src_params, const size_t src_offset)
NODE_DECLARE PassType type
bool use_approximate_shadow_catcher
bool use_approximate_shadow_catcher_background
bool set_render_tile_pixels(RenderBuffers *render_buffers, const Source &source)
bool get_render_tile_pixels(const RenderBuffers *render_buffers, const Destination &destination) const
int2 get_texture_size() const
void copy_from_denoised_render_buffers(const RenderBuffers *render_buffers)
RenderBuffers * get_render_buffers()
unique_ptr< RenderBuffers > buffers_
BufferParams effective_full_params_
virtual bool copy_render_buffers_from_device()=0
PassAccessor::PassAccessInfo get_display_pass_access_info(PassMode pass_mode) const
BufferParams effective_big_tile_params_
bool get_render_tile_pixels(const PassAccessor &pass_accessor, const PassAccessor::Destination &destination)
PassAccessor::Destination get_display_destination_template(const PathTraceDisplay *display) const
virtual bool copy_render_buffers_to_device()=0
bool has_multiple_works() const
void copy_to_render_buffers(RenderBuffers *render_buffers)
void set_effective_buffer_params(const BufferParams &effective_full_params, const BufferParams &effective_big_tile_params, const BufferParams &effective_buffer_params)
void copy_from_render_buffers(const RenderBuffers *render_buffers)
BufferParams effective_buffer_params_
DeviceScene * device_scene_
static unique_ptr< PathTraceWork > create(Device *device, Film *film, DeviceScene *device_scene, bool *cancel_requested_flag)
PathTraceWork(Device *device, Film *film, DeviceScene *device_scene, bool *cancel_requested_flag)
bool set_render_tile_pixels(PassAccessor &pass_accessor, const PassAccessor::Source &source)
device_vector< float > buffer
#define CCL_NAMESPACE_END
SyclQueue void void * src
ccl_gpu_kernel_postfix ccl_global float int int int int float bool int offset
ccl_gpu_kernel_postfix ccl_global float int int int int int int int pass_stride