|
Blender V4.5
|
#include <cstring>#include "DNA_collection_types.h"#include "DNA_defaults.h"#include "DNA_lightprobe_types.h"#include "DNA_object_types.h"#include "BLI_math_base.h"#include "BLI_utildefines.h"#include "BKE_idtype.hh"#include "BKE_lib_id.hh"#include "BKE_lib_query.hh"#include "BKE_lightprobe.h"#include "BLT_translation.hh"#include "BLO_read_write.hh"Go to the source code of this file.
Variables | |
| IDTypeInfo | IDType_ID_LP |
| LightProbe * BKE_lightprobe_add | ( | Main * | bmain, |
| const char * | name ) |
Definition at line 106 of file lightprobe.cc.
References BKE_id_new(), and BKE_lightprobe_add().
Referenced by BKE_lightprobe_add(), and BKE_object_obdata_add_from_type().
| void BKE_lightprobe_cache_blend_read | ( | BlendDataReader * | reader, |
| LightProbeObjectCache * | cache ) |
Definition at line 181 of file lightprobe.cc.
References BKE_lightprobe_cache_blend_read(), BLO_read_struct, LightProbeObjectCache::grid_static_cache, and lightprobe_grid_cache_frame_blend_read().
Referenced by BKE_lightprobe_cache_blend_read(), and object_blend_read_data().
| void BKE_lightprobe_cache_blend_write | ( | BlendWriter * | writer, |
| LightProbeObjectCache * | cache ) |
Definition at line 173 of file lightprobe.cc.
References BKE_lightprobe_cache_blend_write(), BLO_write_struct, LightProbeObjectCache::grid_static_cache, and lightprobe_grid_cache_frame_blend_write().
Referenced by BKE_lightprobe_cache_blend_write(), and object_blend_write().
| LightProbeObjectCache * BKE_lightprobe_cache_copy | ( | LightProbeObjectCache * | src_cache | ) |
Create a copy of a whole cache. This does not include the in-progress baking data.
Definition at line 251 of file lightprobe.cc.
References BKE_lightprobe_cache_copy(), BKE_lightprobe_grid_cache_frame_copy(), BLI_assert, LightProbeObjectCache::grid_static_cache, and MEM_dupallocN().
Referenced by BKE_lightprobe_cache_copy(), and object_copy_data().
| void BKE_lightprobe_cache_create | ( | struct Object * | object | ) |
Create the grid cache list depending on the lightprobe baking settings. The list is left empty to be filled by the baking process.
Definition at line 244 of file lightprobe.cc.
References BKE_lightprobe_cache_create(), BLI_assert, Object::lightprobe_cache, and MEM_callocN().
Referenced by BKE_lightprobe_cache_create(), and lightprobe_cache_irradiance_volume_subset_get().
| void BKE_lightprobe_cache_free | ( | struct Object * | object | ) |
Free all irradiance grids allocated for the given object.
Definition at line 265 of file lightprobe.cc.
References BKE_lightprobe_cache_free(), BKE_lightprobe_grid_cache_frame_free(), LightProbeObjectCache::grid_static_cache, Object::lightprobe_cache, MEM_SAFE_FREE, and LightProbeObjectCache::shared.
Referenced by BKE_lightprobe_cache_free(), lightprobe_cache_free_exec(), lightprobe_cache_irradiance_volume_subset_get(), and object_free_data().
| LightProbeGridCacheFrame * BKE_lightprobe_grid_cache_frame_copy | ( | LightProbeGridCacheFrame * | src | ) |
Create a copy of a cache frame. This does not include the in-progress baking data.
Definition at line 212 of file lightprobe.cc.
References LightProbeGridCacheFrame::baking, BKE_lightprobe_grid_cache_frame_copy(), LightProbeGridCacheFrame::block_infos, LightProbeGridCacheFrame::connectivity, LightProbeGridCacheFrame::irradiance, LightProbeBakingData::L0, LightProbeBakingData::L1_a, LightProbeBakingData::L1_b, LightProbeBakingData::L1_c, MEM_dupallocN(), spherical_harmonic_copy(), LightProbeGridCacheFrame::surfels, LightProbeBakingData::validity, LightProbeConnectivityData::validity, LightProbeBakingData::virtual_offset, and LightProbeGridCacheFrame::visibility.
Referenced by BKE_lightprobe_cache_copy(), and BKE_lightprobe_grid_cache_frame_copy().
| LightProbeGridCacheFrame * BKE_lightprobe_grid_cache_frame_create | ( | void | ) |
Create a single empty irradiance grid cache.
Definition at line 205 of file lightprobe.cc.
References BKE_lightprobe_grid_cache_frame_create(), and MEM_callocN().
Referenced by BKE_lightprobe_grid_cache_frame_create(), blender::eevee::IrradianceBake::read_result_packed(), and blender::eevee::IrradianceBake::read_result_unpacked().
| void BKE_lightprobe_grid_cache_frame_free | ( | struct LightProbeGridCacheFrame * | cache | ) |
Free a single grid cache.
Definition at line 230 of file lightprobe.cc.
References LightProbeGridCacheFrame::baking, BKE_lightprobe_grid_cache_frame_free(), LightProbeGridCacheFrame::block_infos, LightProbeGridCacheFrame::connectivity, LightProbeGridCacheFrame::irradiance, MEM_SAFE_FREE, spherical_harmonic_free(), LightProbeGridCacheFrame::surfels, LightProbeBakingData::validity, LightProbeConnectivityData::validity, LightProbeBakingData::virtual_offset, and LightProbeGridCacheFrame::visibility.
Referenced by BKE_lightprobe_cache_free(), BKE_lightprobe_grid_cache_frame_free(), blender::eevee::LightBake::run(), and blender::eevee::LightBake::update().
| int64_t BKE_lightprobe_grid_cache_frame_sample_count | ( | const LightProbeGridCacheFrame * | cache | ) |
Definition at line 282 of file lightprobe.cc.
References BKE_lightprobe_grid_cache_frame_sample_count(), LightProbeGridCacheFrame::block_len, LightProbeGridCacheFrame::block_size, cube_i(), LightProbeGridCacheFrame::data_layout, LIGHTPROBE_CACHE_ADAPTIVE_RESOLUTION, and LightProbeGridCacheFrame::size.
| void BKE_lightprobe_type_set | ( | LightProbe * | probe, |
| const short | lightprobe_type ) |
Definition at line 82 of file lightprobe.cc.
References LightProbe::attenuation_type, BKE_lightprobe_type_set(), BLI_assert_msg, LightProbe::clipsta, LightProbe::distinf, LightProbe::falloff, LIGHTPROBE_SHAPE_ELIPSOID, LIGHTPROBE_TYPE_PLANE, LIGHTPROBE_TYPE_SPHERE, LIGHTPROBE_TYPE_VOLUME, and LightProbe::type.
Referenced by BKE_lightprobe_type_set(), and blender::ed::object::lightprobe_add_exec().
|
static |
Definition at line 43 of file lightprobe.cc.
References BKE_id_blend_write(), BLO_write_id_struct, LightProbe::id, and lightprobe_blend_write().
Referenced by lightprobe_blend_write().
|
static |
Definition at line 36 of file lightprobe.cc.
References BKE_LIB_FOREACHID_PROCESS_IDSUPER, data, IDWALK_CB_NOP, lightprobe_foreach_id(), and LightProbe::visibility_grp.
Referenced by lightprobe_foreach_id().
|
static |
Definition at line 135 of file lightprobe.cc.
References LightProbeGridCacheFrame::baking, BKE_lightprobe_grid_cache_frame_sample_count(), BLO_read_float3_array(), BLO_read_float_array(), BLO_read_int8_array(), BLO_read_struct_array, LightProbeGridCacheFrame::block_infos, LightProbeGridCacheFrame::block_len, LightProbeGridCacheFrame::connectivity, LightProbeGridCacheFrame::data_layout, ELEM, LightProbeGridCacheFrame::irradiance, LightProbeBakingData::L0, LightProbeIrradianceData::L0, LightProbeVisibilityData::L0, LightProbeBakingData::L1_a, LightProbeIrradianceData::L1_a, LightProbeVisibilityData::L1_a, LightProbeBakingData::L1_b, LightProbeIrradianceData::L1_b, LightProbeVisibilityData::L1_b, LightProbeBakingData::L1_c, LightProbeIrradianceData::L1_c, LightProbeVisibilityData::L1_c, LIGHTPROBE_CACHE_ADAPTIVE_RESOLUTION, LIGHTPROBE_CACHE_UNIFORM_GRID, lightprobe_grid_cache_frame_blend_read(), LightProbeGridCacheFrame::surfels, LightProbeGridCacheFrame::surfels_len, LightProbeBakingData::validity, LightProbeConnectivityData::validity, LightProbeBakingData::virtual_offset, and LightProbeGridCacheFrame::visibility.
Referenced by BKE_lightprobe_cache_blend_read(), and lightprobe_grid_cache_frame_blend_read().
|
static |
Definition at line 115 of file lightprobe.cc.
References BKE_lightprobe_grid_cache_frame_sample_count(), BLO_write_float3_array(), BLO_write_float_array(), BLO_write_int8_array(), BLO_write_struct_array, LightProbeGridCacheFrame::block_infos, LightProbeGridCacheFrame::block_len, LightProbeGridCacheFrame::connectivity, LightProbeGridCacheFrame::irradiance, LightProbeIrradianceData::L0, LightProbeVisibilityData::L0, LightProbeIrradianceData::L1_a, LightProbeVisibilityData::L1_a, LightProbeIrradianceData::L1_b, LightProbeVisibilityData::L1_b, LightProbeIrradianceData::L1_c, LightProbeVisibilityData::L1_c, lightprobe_grid_cache_frame_blend_write(), LightProbeConnectivityData::validity, and LightProbeGridCacheFrame::visibility.
Referenced by BKE_lightprobe_cache_blend_write(), and lightprobe_grid_cache_frame_blend_write().
|
static |
Definition at line 28 of file lightprobe.cc.
References BLI_assert, DNA_struct_default_get, lightprobe_init_data(), MEMCMP_STRUCT_AFTER_IS_ZERO, and MEMCPY_STRUCT_AFTER.
Referenced by lightprobe_init_data().
Definition at line 197 of file lightprobe.cc.
References MEM_dupallocN(), spherical_harmonic_copy(), and T.
Referenced by BKE_lightprobe_grid_cache_frame_copy(), and spherical_harmonic_copy().
Definition at line 189 of file lightprobe.cc.
References data, MEM_SAFE_FREE, spherical_harmonic_free(), and T.
Referenced by BKE_lightprobe_grid_cache_frame_free(), and spherical_harmonic_free().
| IDTypeInfo IDType_ID_LP |
Definition at line 52 of file lightprobe.cc.