Blender
V3.3
|
#include <buffers.h>
Public Attributes | |
NODE_DECLARE int | width = 0 |
int | height = 0 |
int | window_x = 0 |
int | window_y = 0 |
int | window_width = 0 |
int | window_height = 0 |
int | full_x = 0 |
int | full_y = 0 |
int | full_width = 0 |
int | full_height = 0 |
int | offset = -1 |
int | stride = -1 |
int | pass_stride = -1 |
vector< BufferPass > | passes |
ustring | layer |
ustring | view |
int | samples = 0 |
float | exposure = 1.0f |
bool | use_approximate_shadow_catcher = false |
bool | use_transparent_background = false |
![]() | |
ustring | name |
const NodeType * | type |
InternalNode | internal |
LeafNode | leaf |
Protected Member Functions | |
void | reset_pass_offset () |
![]() | |
template<typename T > | |
void | set_if_different (const SocketType &input, T value) |
void | set_if_different (const SocketType &input, Node *value) |
template<typename T > | |
void | set_if_different (const SocketType &input, array< T > &value) |
void | set_if_different (const SocketType &input, array< Node * > &value) |
void | dereference_all_used_nodes () |
Protected Attributes | |
int | pass_offset_ [kNumPassOffsets] |
![]() | |
const NodeOwner * | owner |
int | ref_count {0} |
SocketModifiedFlags | socket_modified |
Static Protected Attributes | |
static constexpr int | kNumPassOffsets = PASS_NUM * 2 |
Additional Inherited Members | |
![]() | |
template<typename T > | |
static T & | get_socket_value (const Node *node, const SocketType &socket) |
BufferParams::BufferParams | ( | ) |
Definition at line 116 of file buffers.cpp.
References reset_pass_offset().
|
defaultnoexcept |
|
default |
|
default |
const BufferPass * BufferParams::find_pass | ( | PassType | type, |
PassMode | mode = PassMode::NOISY |
||
) | const |
Definition at line 189 of file buffers.cpp.
References passes, and Node::type.
const BufferPass * BufferParams::find_pass | ( | string_view | name | ) | const |
Definition at line 178 of file buffers.cpp.
References Node::name, and passes.
Referenced by get_actual_display_pass(), PathTraceTile::get_pass_pixels(), and PathTraceTile::set_pass_pixels().
const BufferPass * BufferParams::get_actual_display_pass | ( | const BufferPass * | pass | ) | const |
Definition at line 206 of file buffers.cpp.
References find_pass(), BufferPass::lightgroup, BufferPass::mode, PASS_COMBINED, PASS_SHADOW_CATCHER_MATTE, and BufferPass::type.
const BufferPass * BufferParams::get_actual_display_pass | ( | PassType | type, |
PassMode | mode = PassMode::NOISY |
||
) | const |
Definition at line 200 of file buffers.cpp.
References find_pass(), and Node::type.
Referenced by PathTraceTile::get_pass_pixels().
int BufferParams::get_pass_offset | ( | PassType | type, |
PassMode | mode = PassMode::NOISY |
||
) | const |
Definition at line 168 of file buffers.cpp.
References PASS_NONE, pass_offset_, pass_type_mode_to_index(), and PASS_UNUSED.
Referenced by DenoiseTask::exec(), PassAccessor::init_kernel_film_convert(), render_buffers_host_copy_denoised(), and PathTrace::tile_buffer_write_to_disk().
bool BufferParams::modified | ( | const BufferParams & | other | ) | const |
Definition at line 228 of file buffers.cpp.
References exposure, full_height, full_width, full_x, full_y, height, layer, offset, pass_stride, passes, stride, use_approximate_shadow_catcher, use_transparent_background, view, width, window_height, window_width, window_x, and window_y.
Referenced by PathTrace::reset().
|
default |
|
default |
|
protected |
Definition at line 161 of file buffers.cpp.
References kNumPassOffsets, pass_offset_, and PASS_UNUSED.
Referenced by BufferParams(), and update_passes().
void BufferParams::update_offset_stride | ( | ) |
Definition at line 222 of file buffers.cpp.
References full_x, full_y, offset, stride, and width.
Referenced by PathTrace::device_free(), foreach_sliced_buffer_params(), Session::run_update_for_next_iteration(), scale_buffer_params(), and update_passes().
void BufferParams::update_passes | ( | ) |
Definition at line 121 of file buffers.cpp.
References pass_offset_, pass_stride, pass_to_index(), PASS_UNUSED, passes, reset_pass_offset(), and update_offset_stride().
Referenced by buffer_params_from_image_spec_atttributes(), Session::do_delayed_reset(), DenoiseTask::load(), and update_passes().
Definition at line 139 of file buffers.cpp.
References BufferPass::offset, pass_stride, PASS_UNUSED, passes, and update_passes().
float BufferParams::exposure = 1.0f |
Definition at line 100 of file buffers.h.
Referenced by Session::do_delayed_reset(), PathTraceTile::get_pass_pixels(), modified(), and PathTraceTile::set_pass_pixels().
int BufferParams::full_height = 0 |
Definition at line 87 of file buffers.h.
Referenced by DenoiseTask::load(), modified(), PathTraceDisplay::reset(), Session::run_update_for_next_iteration(), scale_buffer_params(), and session_buffer_params().
int BufferParams::full_width = 0 |
Definition at line 86 of file buffers.h.
Referenced by DenoiseTask::load(), modified(), PathTraceDisplay::reset(), Session::run_update_for_next_iteration(), scale_buffer_params(), and session_buffer_params().
int BufferParams::full_x = 0 |
Definition at line 84 of file buffers.h.
Referenced by PathTraceWorkCPU::adaptive_sampling_converge_filter_count_active(), PathTraceWorkGPU::adaptive_sampling_convergence_check_count_active(), PathTraceWorkGPU::copy_to_display_naive(), PathTraceWorkGPU::enqueue_adaptive_sampling_filter_x(), PathTraceWorkGPU::enqueue_adaptive_sampling_filter_y(), PathTraceWork::get_display_destination_template(), PathTraceWork::has_multiple_works(), DenoiseTask::load(), modified(), PathTraceWorkCPU::render_samples(), PathTraceDisplay::reset(), WorkTileScheduler::reset(), Session::run_update_for_next_iteration(), scale_buffer_params(), update_offset_stride(), and TileManager::write_tile().
int BufferParams::full_y = 0 |
Definition at line 85 of file buffers.h.
Referenced by PathTraceWorkCPU::adaptive_sampling_converge_filter_count_active(), PathTraceWorkGPU::adaptive_sampling_convergence_check_count_active(), PathTraceWork::copy_from_denoised_render_buffers(), PathTraceWork::copy_from_render_buffers(), PathTraceWorkGPU::copy_to_display_naive(), PathTraceWork::copy_to_render_buffers(), PathTraceWorkGPU::enqueue_adaptive_sampling_filter_x(), PathTraceWorkGPU::enqueue_adaptive_sampling_filter_y(), foreach_sliced_buffer_params(), PathTraceWork::get_display_destination_template(), PathTraceWork::get_render_tile_pixels(), PathTraceWork::has_multiple_works(), DenoiseTask::load(), modified(), PathTraceWorkCPU::render_samples(), PathTraceDisplay::reset(), WorkTileScheduler::reset(), Session::run_update_for_next_iteration(), scale_buffer_params(), PathTraceWork::set_render_tile_pixels(), update_offset_stride(), and TileManager::write_tile().
int BufferParams::height = 0 |
Definition at line 72 of file buffers.h.
Referenced by PathTraceWorkCPU::adaptive_sampling_converge_filter_count_active(), PathTraceWorkGPU::adaptive_sampling_convergence_check_count_active(), BlenderSession::bake(), configure_image_spec_from_buffer(), RenderBuffers::copy_from_device(), PathTraceWork::copy_from_render_buffers(), PathTraceWork::copy_to_render_buffers(), PathTraceWorkCPU::cryptomatte_postproces(), PathTraceWorkGPU::cryptomatte_postproces(), Session::do_delayed_reset(), PathTraceWorkGPU::enqueue_adaptive_sampling_filter_x(), PathTraceWorkGPU::enqueue_adaptive_sampling_filter_y(), foreach_sliced_buffer_params(), RenderScheduler::full_report(), Session::get_effective_tile_size(), TileManager::get_size(), TileManager::get_tile_for_index(), PathTraceWork::has_multiple_works(), DenoiseTask::load(), modified(), pad_pixels(), render_buffers_host_copy_denoised(), PathTraceWorkCPU::render_samples(), WorkTileScheduler::reset(), RenderBuffers::reset(), Session::run_update_for_next_iteration(), scale_buffer_params(), session_buffer_params(), PassAccessor::set_render_tile_pixels(), PathTrace::update_display(), and TileManager::write_tile().
|
staticconstexprprotected |
Definition at line 143 of file buffers.h.
Referenced by reset_pass_offset().
ustring BufferParams::layer |
Definition at line 97 of file buffers.h.
Referenced by BlenderSession::bake(), get_layer_view_name(), modified(), and BlenderSession::render().
int BufferParams::offset = -1 |
Definition at line 90 of file buffers.h.
Referenced by PathTraceWorkCPU::adaptive_sampling_converge_filter_count_active(), PathTraceWorkGPU::adaptive_sampling_convergence_check_count_active(), PathTraceWorkGPU::cryptomatte_postproces(), PathTraceWorkGPU::enqueue_adaptive_sampling_filter_x(), PathTraceWorkGPU::enqueue_adaptive_sampling_filter_y(), modified(), PathTraceWorkCPU::render_samples(), WorkTileScheduler::reset(), and update_offset_stride().
|
protected |
Definition at line 148 of file buffers.h.
Referenced by get_pass_offset(), reset_pass_offset(), and update_passes().
int BufferParams::pass_stride = -1 |
Definition at line 93 of file buffers.h.
Referenced by RenderBuffers::copy_from_device(), PathTraceWork::copy_from_render_buffers(), PathTraceWork::copy_to_render_buffers(), PathTrace::device_free(), DenoiseTask::exec(), TileManager::finish_write_tiles(), PassAccessor::init_kernel_film_convert(), modified(), render_buffers_host_copy_denoised(), RenderBuffers::reset(), PassAccessorGPU::run_film_convert_kernels(), PassAccessorCPU::run_get_pass_kernel_processor_float(), PassAccessorCPU::run_get_pass_kernel_processor_half_rgba(), PassAccessor::set_render_tile_pixels(), update_passes(), and TileManager::write_tile().
vector<BufferPass> BufferParams::passes |
Definition at line 96 of file buffers.h.
Referenced by buffer_params_from_image_spec_atttributes(), buffer_params_to_image_spec_atttributes(), exr_channel_names_for_passes(), find_pass(), modified(), and update_passes().
int BufferParams::samples = 0 |
Definition at line 99 of file buffers.h.
Referenced by Session::do_delayed_reset().
int BufferParams::stride = -1 |
Definition at line 90 of file buffers.h.
Referenced by PathTraceWorkCPU::adaptive_sampling_converge_filter_count_active(), PathTraceWorkGPU::adaptive_sampling_convergence_check_count_active(), PathTraceWorkGPU::cryptomatte_postproces(), PathTraceWorkGPU::enqueue_adaptive_sampling_filter_x(), PathTraceWorkGPU::enqueue_adaptive_sampling_filter_y(), modified(), PathTraceWorkCPU::render_samples(), WorkTileScheduler::reset(), PassAccessorGPU::run_film_convert_kernels(), PassAccessorCPU::run_get_pass_kernel_processor_float(), PassAccessorCPU::run_get_pass_kernel_processor_half_rgba(), and update_offset_stride().
bool BufferParams::use_approximate_shadow_catcher = false |
Definition at line 101 of file buffers.h.
Referenced by Session::do_delayed_reset(), PathTraceTile::get_pass_pixels(), and modified().
bool BufferParams::use_transparent_background = false |
Definition at line 102 of file buffers.h.
Referenced by Session::do_delayed_reset(), PathTraceTile::get_pass_pixels(), and modified().
ustring BufferParams::view |
Definition at line 98 of file buffers.h.
Referenced by get_layer_view_name(), modified(), and BlenderSession::render().
NODE_DECLARE int BufferParams::width = 0 |
Definition at line 71 of file buffers.h.
Referenced by PathTraceWorkCPU::adaptive_sampling_converge_filter_count_active(), PathTraceWorkGPU::adaptive_sampling_convergence_check_count_active(), BlenderSession::bake(), configure_image_spec_from_buffer(), PathTraceWork::copy_from_denoised_render_buffers(), RenderBuffers::copy_from_device(), PathTraceWork::copy_from_render_buffers(), PathTraceWork::copy_to_render_buffers(), PathTraceWorkCPU::cryptomatte_postproces(), PathTraceWorkGPU::cryptomatte_postproces(), Session::do_delayed_reset(), PathTraceWorkGPU::enqueue_adaptive_sampling_filter_x(), PathTraceWorkGPU::enqueue_adaptive_sampling_filter_y(), RenderScheduler::full_report(), Session::get_effective_tile_size(), PathTraceWork::get_render_tile_pixels(), TileManager::get_size(), TileManager::get_tile_for_index(), PathTraceWork::has_multiple_works(), DenoiseTask::load(), modified(), pad_pixels(), render_buffers_host_copy_denoised(), PathTraceWorkCPU::render_samples(), WorkTileScheduler::reset(), RenderBuffers::reset(), PassAccessorCPU::run_get_pass_kernel_processor_half_rgba(), Session::run_update_for_next_iteration(), scale_buffer_params(), session_buffer_params(), PathTraceWork::set_render_tile_pixels(), PassAccessor::set_render_tile_pixels(), PathTrace::update_display(), update_offset_stride(), and TileManager::write_tile().
int BufferParams::window_height = 0 |
Definition at line 81 of file buffers.h.
Referenced by BlenderSession::bake(), PathTraceWorkGPU::copy_to_display_naive(), foreach_sliced_buffer_params(), modified(), PathTraceDisplay::reset(), PassAccessorGPU::run_film_convert_kernels(), PassAccessorCPU::run_get_pass_kernel_processor_float(), PassAccessorCPU::run_get_pass_kernel_processor_half_rgba(), Session::run_update_for_next_iteration(), scale_buffer_params(), and TileManager::write_tile().
int BufferParams::window_width = 0 |
Definition at line 80 of file buffers.h.
Referenced by BlenderSession::bake(), PathTraceWorkGPU::copy_to_display_naive(), modified(), PathTraceDisplay::reset(), PassAccessorGPU::run_film_convert_kernels(), Session::run_update_for_next_iteration(), scale_buffer_params(), and TileManager::write_tile().
int BufferParams::window_x = 0 |
Definition at line 78 of file buffers.h.
Referenced by PathTraceWorkGPU::copy_to_display_naive(), PathTraceWork::get_display_destination_template(), modified(), PathTraceDisplay::reset(), PassAccessorGPU::run_film_convert_kernels(), PassAccessorCPU::run_get_pass_kernel_processor_float(), PassAccessorCPU::run_get_pass_kernel_processor_half_rgba(), Session::run_update_for_next_iteration(), scale_buffer_params(), and TileManager::write_tile().
int BufferParams::window_y = 0 |
Definition at line 79 of file buffers.h.
Referenced by PathTraceWorkGPU::copy_to_display_naive(), foreach_sliced_buffer_params(), PathTraceWork::get_display_destination_template(), PathTraceWork::get_render_tile_pixels(), modified(), PathTraceDisplay::reset(), PassAccessorGPU::run_film_convert_kernels(), PassAccessorCPU::run_get_pass_kernel_processor_float(), PassAccessorCPU::run_get_pass_kernel_processor_half_rgba(), Session::run_update_for_next_iteration(), scale_buffer_params(), and TileManager::write_tile().