|
Blender V5.0
|
#include "BKE_studiolight.h"#include "BKE_appdir.hh"#include "BKE_icons.h"#include "BLI_dynstr.h"#include "BLI_fileops.h"#include "BLI_fileops_types.h"#include "BLI_linklist.h"#include "BLI_listbase.h"#include "BLI_math_color.h"#include "BLI_math_vector.h"#include "BLI_path_utils.hh"#include "BLI_string.h"#include "DNA_listBase.h"#include "IMB_imbuf.hh"#include "IMB_interp.hh"#include "IMB_openexr.hh"#include "GPU_texture.hh"#include "MEM_guardedalloc.h"#include <cstring>Go to the source code of this file.
Macros | |
| #define | STUDIOLIGHT_PASSNAME_DIFFUSE "diffuse" |
| #define | STUDIOLIGHT_PASSNAME_SPECULAR "specular" |
| #define | ITER_PIXELS(type, src, channels, width, height) |
| #define | ITER_PIXELS_END |
| #define | IMB_SAFE_FREE(p) |
| #define | GPU_TEXTURE_SAFE_FREE(p) |
| #define | STUDIOLIGHT_DELETE_ICON(s) |
| #define | STUDIOLIGHT_FILE_VERSION 1 |
| #define | READ_VAL(type, parser, id, val, lines) |
| #define | READ_FVAL(id, val, lines) |
| #define | READ_IVAL(id, val, lines) |
| #define | READ_VEC3(id, val, lines) |
| #define | READ_SOLIDLIGHT(sl, i, lines) |
| #define | WRITE_FVAL(str, id, val) |
| #define | WRITE_IVAL(str, id, val) |
| #define | WRITE_VEC3(str, id, val) |
| #define | WRITE_SOLIDLIGHT(str, sl, i) |
| #define | STUDIOLIGHT_DIAMETER 0.95f |
| #define | RESCALE_COORD(x) |
Typedefs | |
| using | float4 |
Variables | |
| static ListBase | studiolights |
| static int | last_studiolight_id = 0 |
| static const char * | STUDIOLIGHT_LIGHTS_FOLDER = "studiolights" SEP_STR "studio" SEP_STR |
| static const char * | STUDIOLIGHT_WORLD_FOLDER = "studiolights" SEP_STR "world" SEP_STR |
| static const char * | STUDIOLIGHT_MATCAP_FOLDER = "studiolights" SEP_STR "matcap" SEP_STR |
| static const char * | STUDIOLIGHT_WORLD_DEFAULT = "forest.exr" |
| static const char * | STUDIOLIGHT_MATCAP_DEFAULT = "basic_1.exr" |
| #define GPU_TEXTURE_SAFE_FREE | ( | p | ) |
Definition at line 91 of file studiolight.cc.
Referenced by studiolight_free().
| #define IMB_SAFE_FREE | ( | p | ) |
Definition at line 83 of file studiolight.cc.
Referenced by studiolight_free_image_buffers().
| #define ITER_PIXELS | ( | type, | |
| src, | |||
| channels, | |||
| width, | |||
| height ) |
Iter on all pixel giving texel center position and pixel pointer.
Arguments type : type of src. src : source buffer. channels : number of channels per pixel.
Others x, y : normalized UV coordinate [0..1] of the current pixel center. texel_size[2] : UV size of a pixel in this texture. pixel[] : pointer to the current pixel.
Definition at line 66 of file studiolight.cc.
Referenced by studiolight_irradiance_preview(), studiolight_matcap_preview(), and studiolight_radiance_preview().
| #define ITER_PIXELS_END |
Definition at line 76 of file studiolight.cc.
Referenced by studiolight_irradiance_preview(), studiolight_matcap_preview(), and studiolight_radiance_preview().
| #define READ_FVAL | ( | id, | |
| val, | |||
| lines ) |
Definition at line 186 of file studiolight.cc.
| #define READ_IVAL | ( | id, | |
| val, | |||
| lines ) |
Definition at line 187 of file studiolight.cc.
| #define READ_SOLIDLIGHT | ( | sl, | |
| i, | |||
| lines ) |
Definition at line 196 of file studiolight.cc.
Referenced by studiolight_load_solid_light().
| #define READ_VAL | ( | type, | |
| parser, | |||
| id, | |||
| val, | |||
| lines ) |
Definition at line 175 of file studiolight.cc.
| #define READ_VEC3 | ( | id, | |
| val, | |||
| lines ) |
Definition at line 189 of file studiolight.cc.
Referenced by studiolight_load_solid_light().
| #define RESCALE_COORD | ( | x | ) |
Definition at line 685 of file studiolight.cc.
Referenced by studiolight_irradiance_preview(), studiolight_matcap_preview(), and studiolight_radiance_preview().
| #define STUDIOLIGHT_DELETE_ICON | ( | s | ) |
Referenced by studiolight_free().
| #define STUDIOLIGHT_DIAMETER 0.95f |
Definition at line 683 of file studiolight.cc.
| #define STUDIOLIGHT_FILE_VERSION 1 |
Definition at line 173 of file studiolight.cc.
Referenced by studiolight_write_solid_light().
| #define STUDIOLIGHT_PASSNAME_DIFFUSE "diffuse" |
Definition at line 41 of file studiolight.cc.
Referenced by studiolight_multilayer_addpass().
| #define STUDIOLIGHT_PASSNAME_SPECULAR "specular" |
Definition at line 42 of file studiolight.cc.
Referenced by studiolight_multilayer_addpass().
| #define WRITE_FVAL | ( | str, | |
| id, | |||
| val ) |
Definition at line 223 of file studiolight.cc.
| #define WRITE_IVAL | ( | str, | |
| id, | |||
| val ) |
Definition at line 224 of file studiolight.cc.
Referenced by studiolight_write_solid_light().
Definition at line 233 of file studiolight.cc.
Referenced by studiolight_write_solid_light().
| #define WRITE_VEC3 | ( | str, | |
| id, | |||
| val ) |
Definition at line 226 of file studiolight.cc.
Referenced by studiolight_write_solid_light().
| using blender::float4 |
Definition at line 620 of file BLI_math_vector_types.hh.
Definition at line 672 of file studiolight.cc.
References floorf, len_v2(), mask(), max_ff(), min_ff(), and v.
Referenced by studiolight_irradiance_preview(), studiolight_matcap_preview(), and studiolight_radiance_preview().
| BLI_INLINE float area_element | ( | float | x, |
| float | y ) |
Definition at line 511 of file studiolight.cc.
References atan2(), BLI_INLINE, sqrtf, x, and y.
| StudioLight * BKE_studiolight_create | ( | const char * | filepath, |
| const SolidLight | light[4], | ||
| const float | light_ambient[3] ) |
Definition at line 1006 of file studiolight.cc.
References BLI_addtail(), BLI_path_split_file_part(), FILE_MAXFILE, StudioLight::filepath, StudioLight::light, StudioLight::light_ambient, StudioLight::name, STRNCPY(), studiolight_create(), STUDIOLIGHT_EXTERNAL_FILE, STUDIOLIGHT_SPECULAR_HIGHLIGHT_PASS, STUDIOLIGHT_TYPE_STUDIO, STUDIOLIGHT_USER_DEFINED, studiolight_write_solid_light(), and studiolights.
| void BKE_studiolight_default | ( | SolidLight | lights[4], |
| float | light_ambient[3] ) |
Definition at line 791 of file studiolight.cc.
References SolidLight::col, copy_v3_fl3(), SolidLight::flag, SolidLight::smooth, SolidLight::spec, and SolidLight::vec.
Referenced by BKE_blendfile_userdef_from_defaults(), and BKE_studiolight_init().
| void BKE_studiolight_ensure_flag | ( | StudioLight * | sl, |
| int | flag ) |
Ensure state of studio-lights.
Definition at line 968 of file studiolight.cc.
References flag, StudioLight::flag, studiolight_create_equirect_radiance_gputexture(), studiolight_create_matcap_diffuse_gputexture(), studiolight_create_matcap_specular_gputexture(), STUDIOLIGHT_EQUIRECT_RADIANCE_GPUTEXTURE, STUDIOLIGHT_EXTERNAL_IMAGE_LOADED, studiolight_load_equirect_image(), STUDIOLIGHT_MATCAP_DIFFUSE_GPUTEXTURE, and STUDIOLIGHT_MATCAP_SPECULAR_GPUTEXTURE.
Referenced by blender::workbench::get_matcap_tx(), studiolight_create_equirect_radiance_gputexture(), studiolight_create_matcap_diffuse_gputexture(), studiolight_create_matcap_specular_gputexture(), studiolight_matcap_preview(), studiolight_radiance_preview(), and blender::eevee::LookdevWorld::sync().
| StudioLight * BKE_studiolight_find | ( | const char * | name, |
| int | flag ) |
Definition at line 912 of file studiolight.cc.
References BKE_studiolight_find_default(), FILE_MAXFILE, flag, LISTBASE_FOREACH, name, STREQLEN, and studiolights.
Referenced by blo_do_versions_280(), blender::io::hydra::WorldData::init(), blender::workbench::SceneResources::init(), and blender::eevee::LookdevWorld::sync().
| StudioLight * BKE_studiolight_find_default | ( | int | flag | ) |
Definition at line 887 of file studiolight.cc.
References flag, LISTBASE_FOREACH, STREQ, STUDIOLIGHT_MATCAP_DEFAULT, STUDIOLIGHT_TYPE_MATCAP, STUDIOLIGHT_TYPE_WORLD, STUDIOLIGHT_WORLD_DEFAULT, and studiolights.
Referenced by BKE_studiolight_find(), BKE_studiolight_findindex(), and blo_do_versions_280().
| StudioLight * BKE_studiolight_findindex | ( | int | index, |
| int | flag ) |
Definition at line 928 of file studiolight.cc.
References BKE_studiolight_find_default(), flag, LISTBASE_FOREACH, and studiolights.
| void BKE_studiolight_free | ( | void | ) |
Definition at line 880 of file studiolight.cc.
References BLI_pophead(), studiolight_free(), and studiolights.
Referenced by BKE_blender_free(), and BKE_studiolight_refresh().
| void BKE_studiolight_init | ( | void | ) |
Definition at line 844 of file studiolight.cc.
References BKE_studiolight_default(), BLENDER_SYSTEM_DATAFILES, BLENDER_USER_DATAFILES, BLI_addtail(), BLI_listbase_sort(), StudioLight::light, StudioLight::light_ambient, StudioLight::name, STRNCPY(), studiolight_add_files_from_datafolder(), studiolight_cmp(), studiolight_create(), STUDIOLIGHT_INTERNAL, STUDIOLIGHT_LIGHTS_FOLDER, STUDIOLIGHT_MATCAP_FOLDER, STUDIOLIGHT_SPECULAR_HIGHLIGHT_PASS, STUDIOLIGHT_TYPE_MATCAP, STUDIOLIGHT_TYPE_STUDIO, STUDIOLIGHT_TYPE_WORLD, STUDIOLIGHT_USER_DEFINED, STUDIOLIGHT_WORLD_FOLDER, and studiolights.
Referenced by BKE_studiolight_refresh(), and WM_init().
| ListBase * BKE_studiolight_listbase | ( | void | ) |
Definition at line 939 of file studiolight.cc.
References studiolights.
| StudioLight * BKE_studiolight_load | ( | const char * | filepath, |
| int | type ) |
Definition at line 1000 of file studiolight.cc.
References studiolight_add_file(), and STUDIOLIGHT_USER_DEFINED.
| void BKE_studiolight_preview | ( | uint * | icon_buffer, |
| StudioLight * | sl, | ||
| int | icon_id_type ) |
Definition at line 944 of file studiolight.cc.
References studiolight_free_temp_resources(), STUDIOLIGHT_ICON_ID_TYPE_IRRADIANCE, STUDIOLIGHT_ICON_ID_TYPE_MATCAP, STUDIOLIGHT_ICON_ID_TYPE_MATCAP_FLIPPED, STUDIOLIGHT_ICON_ID_TYPE_RADIANCE, studiolight_irradiance_preview(), studiolight_matcap_preview(), and studiolight_radiance_preview().
Referenced by ui_studiolight_icon_job_exec().
| void BKE_studiolight_refresh | ( | void | ) |
Definition at line 1039 of file studiolight.cc.
References BKE_studiolight_free(), and BKE_studiolight_init().
| void BKE_studiolight_remove | ( | StudioLight * | sl | ) |
Definition at line 992 of file studiolight.cc.
References BLI_remlink(), StudioLight::flag, studiolight_free(), STUDIOLIGHT_USER_DEFINED, and studiolights.
| void BKE_studiolight_set_free_function | ( | StudioLight * | sl, |
| StudioLightFreeFunction * | free_function, | ||
| void * | data ) |
Definition at line 1045 of file studiolight.cc.
References data, StudioLight::free_function, and StudioLight::free_function_data.
Referenced by ui_icon_ensure_deferred(), and ui_studiolight_icon_job_end().
| StudioLight * BKE_studiolight_studio_edit_get | ( | void | ) |
Only useful for workbench while editing the user-preferences.
Definition at line 1028 of file studiolight.cc.
References StudioLight::flag, StudioLight::light, StudioLight::light_ambient, STUDIOLIGHT_SPECULAR_HIGHLIGHT_PASS, STUDIOLIGHT_TYPE_STUDIO, and U.
Referenced by blender::workbench::SceneResources::init().
| void BKE_studiolight_unset_icon_id | ( | StudioLight * | sl, |
| int | icon_id ) |
Definition at line 1053 of file studiolight.cc.
References BLI_assert, StudioLight::icon_id_irradiance, StudioLight::icon_id_matcap, StudioLight::icon_id_matcap_flipped, and StudioLight::icon_id_radiance.
Referenced by icon_free_data().
|
static |
Definition at line 531 of file studiolight.cc.
References add_v3_v3v3(), dot_v3v3(), exp2, I, L, max_ff(), N, NL, normalize_v3(), powf, R, w(), wrap(), and wrapped_lighting().
Referenced by studiolight_lights_eval().
Definition at line 516 of file studiolight.cc.
References exp2.
Referenced by studiolight_lights_eval().
Definition at line 271 of file studiolight.cc.
References acosf, atan2f, and M_PI.
Referenced by studiolight_calculate_radiance().
Definition at line 688 of file studiolight.cc.
References len_v2(), sqrtf, square_f(), and v.
Referenced by studiolight_irradiance_preview(), and studiolight_radiance_preview().
|
static |
Definition at line 598 of file studiolight.cc.
References BLI_addtail(), BLI_path_extension_check(), BLI_path_extension_check_array(), BLI_path_split_file_part(), FILE_MAXFILE, StudioLight::filepath, flag, imb_ext_image, StudioLight::name, STRNCPY(), studiolight_create(), STUDIOLIGHT_EXTERNAL_FILE, studiolight_load_solid_light(), STUDIOLIGHT_TYPE_STUDIO, and studiolights.
Referenced by BKE_studiolight_load(), and studiolight_add_files_from_datafolder().
|
static |
Definition at line 619 of file studiolight.cc.
References BKE_appdir_folder_id(), BLI_filelist_dir_contents(), BLI_filelist_free(), flag, i, and studiolight_add_file().
Referenced by BKE_studiolight_init().
Definition at line 501 of file studiolight.cc.
References direction_to_equirect(), blender::imbuf::interpolate_nearest_border_fl(), ImBuf::x, and ImBuf::y.
Referenced by studiolight_radiance_preview().
|
static |
Definition at line 649 of file studiolight.cc.
References b, BLI_strcasecmp(), StudioLight::name, and studiolight_flag_cmp_order().
Referenced by BKE_studiolight_init().
|
static |
Definition at line 150 of file studiolight.cc.
References BKE_icon_ensure_studio_light(), StudioLight::filepath, flag, StudioLight::flag, StudioLight::free_function, StudioLight::icon_id_irradiance, StudioLight::icon_id_matcap, StudioLight::icon_id_matcap_flipped, StudioLight::icon_id_radiance, StudioLight::index, last_studiolight_id, MEM_callocN(), StudioLight::name, STUDIOLIGHT_ICON_ID_TYPE_IRRADIANCE, STUDIOLIGHT_ICON_ID_TYPE_MATCAP, STUDIOLIGHT_ICON_ID_TYPE_MATCAP_FLIPPED, STUDIOLIGHT_ICON_ID_TYPE_RADIANCE, STUDIOLIGHT_TYPE_MATCAP, and STUDIOLIGHT_TYPE_STUDIO.
Referenced by BKE_studiolight_create(), BKE_studiolight_init(), and studiolight_add_file().
|
static |
Definition at line 432 of file studiolight.cc.
References BKE_studiolight_ensure_flag(), ImBufFloatBuffer::data, StudioLight::equirect_radiance_buffer, StudioLight::equirect_radiance_gputexture, StudioLight::flag, ImBuf::float_buffer, GPU_SAMPLER_EXTEND_MODE_REPEAT, GPU_texture_create_2d(), GPU_texture_extend_mode(), GPU_texture_filter_mode(), GPU_TEXTURE_USAGE_SHADER_READ, STUDIOLIGHT_EQUIRECT_RADIANCE_GPUTEXTURE, STUDIOLIGHT_EXTERNAL_FILE, STUDIOLIGHT_EXTERNAL_IMAGE_LOADED, ImBuf::x, and ImBuf::y.
Referenced by BKE_studiolight_ensure_flag().
|
static |
Definition at line 478 of file studiolight.cc.
References BKE_studiolight_ensure_flag(), StudioLight::flag, StudioLight::matcap_diffuse, studiolight_create_matcap_gputexture(), STUDIOLIGHT_EXTERNAL_FILE, STUDIOLIGHT_EXTERNAL_IMAGE_LOADED, STUDIOLIGHT_MATCAP_DIFFUSE_GPUTEXTURE, and STUDIOLIGHT_TYPE_MATCAP.
Referenced by BKE_studiolight_ensure_flag().
|
static |
Definition at line 453 of file studiolight.cc.
References BLI_assert, copy_v3_v3(), ImBufFloatBuffer::data, float, ImBuf::float_buffer, GPU_DATA_FLOAT, GPU_texture_create_2d(), GPU_texture_update(), GPU_TEXTURE_USAGE_SHADER_READ, StudioLightImage::gputexture, i, StudioLightImage::ibuf, IMB_get_pixel_count(), MEM_calloc_arrayN(), MEM_SAFE_FREE, ImBuf::x, and ImBuf::y.
Referenced by studiolight_create_matcap_diffuse_gputexture(), and studiolight_create_matcap_specular_gputexture().
|
static |
Definition at line 488 of file studiolight.cc.
References BKE_studiolight_ensure_flag(), StudioLight::flag, StudioLightImage::ibuf, StudioLight::matcap_specular, studiolight_create_matcap_gputexture(), STUDIOLIGHT_EXTERNAL_FILE, STUDIOLIGHT_EXTERNAL_IMAGE_LOADED, STUDIOLIGHT_MATCAP_SPECULAR_GPUTEXTURE, and STUDIOLIGHT_TYPE_MATCAP.
Referenced by BKE_studiolight_ensure_flag().
|
static |
Definition at line 640 of file studiolight.cc.
References StudioLight::flag, and STUDIOLIGHT_EXTERNAL_FILE.
Referenced by studiolight_cmp().
|
static |
Definition at line 107 of file studiolight.cc.
References StudioLight::equirect_radiance_gputexture, StudioLight::free_function, StudioLight::free_function_data, GPU_TEXTURE_SAFE_FREE, StudioLightImage::gputexture, StudioLight::icon_id_irradiance, StudioLight::icon_id_matcap, StudioLight::icon_id_matcap_flipped, StudioLight::icon_id_radiance, StudioLight::matcap_diffuse, StudioLight::matcap_specular, MEM_SAFE_FREE, STUDIOLIGHT_DELETE_ICON, and studiolight_free_image_buffers().
Referenced by BKE_studiolight_free(), and BKE_studiolight_remove().
|
static |
Definition at line 99 of file studiolight.cc.
References StudioLight::equirect_radiance_buffer, StudioLight::flag, StudioLightImage::ibuf, IMB_SAFE_FREE, StudioLight::matcap_diffuse, StudioLight::matcap_specular, and STUDIOLIGHT_EXTERNAL_IMAGE_LOADED.
Referenced by studiolight_free(), and studiolight_free_temp_resources().
|
static |
Free temp resources when the studio light is only requested for icons.
Only keeps around resources for studio lights that have been used in any viewport.
Definition at line 139 of file studiolight.cc.
References StudioLight::flag, STUDIOLIGHT_EQUIRECT_RADIANCE_GPUTEXTURE, studiolight_free_image_buffers(), STUDIOLIGHT_MATCAP_DIFFUSE_GPUTEXTURE, and STUDIOLIGHT_MATCAP_SPECULAR_GPUTEXTURE.
Referenced by BKE_studiolight_preview().
|
static |
Definition at line 763 of file studiolight.cc.
References alpha_circle_mask(), ITER_PIXELS, ITER_PIXELS_END, linearrgb_to_srgb(), RESCALE_COORD, rgb_to_cpack(), sphere_normal_from_uv(), STUDIOLIGHT_ICON_SIZE, studiolight_lights_eval(), x, and y.
Referenced by BKE_studiolight_preview().
|
static |
Definition at line 565 of file studiolight.cc.
References add_v3_v3v3(), blinn_specular(), brdf_approx(), SolidLight::col, copy_v3_v3(), diff(), dot_v3v3(), SolidLight::flag, I, i, StudioLight::light, StudioLight::light_ambient, madd_v3_v3fl(), mul_v3_fl(), N, NL, R, reflect_v3_v3v3(), SolidLight::smooth, SolidLight::spec, STUDIOLIGHT_MAX_LIGHT, SolidLight::vec, and wrapped_lighting().
Referenced by studiolight_irradiance_preview().
|
static |
Definition at line 350 of file studiolight.cc.
References StudioLight::equirect_radiance_buffer, ImBuf::exrhandle, StudioLight::filepath, StudioLight::flag, ImBuf::ftype, IB_alphamode_ignore, IB_multilayer, StudioLightImage::ibuf, IMB_allocFromBuffer(), IMB_allocFromBufferOwn(), IMB_exr_close(), IMB_exr_multilayer_convert(), IMB_float_from_byte(), IMB_freeImBuf(), IMB_FTYPE_OPENEXR, IMB_load_image_from_filepath(), StudioLight::matcap_diffuse, StudioLight::matcap_specular, STUDIOLIGHT_EXTERNAL_FILE, STUDIOLIGHT_EXTERNAL_IMAGE_LOADED, studiolight_multilayer_addlayer(), studiolight_multilayer_addpass(), studiolight_multilayer_addview(), studiolight_multilayer_convert_pass(), STUDIOLIGHT_SPECULAR_HIGHLIGHT_PASS, STUDIOLIGHT_TYPE_MATCAP, ImBuf::x, and ImBuf::y.
Referenced by BKE_studiolight_ensure_flag().
|
static |
Definition at line 205 of file studiolight.cc.
References BLI_file_free_lines(), BLI_file_read_as_lines(), StudioLight::filepath, StudioLight::light, StudioLight::light_ambient, READ_SOLIDLIGHT, and READ_VEC3.
Referenced by studiolight_add_file().
|
static |
Definition at line 728 of file studiolight.cc.
References add_v3_v3(), alpha_circle_mask(), BKE_studiolight_ensure_flag(), StudioLightImage::ibuf, blender::imbuf::interpolate_nearest_border_fl(), ITER_PIXELS, ITER_PIXELS_END, linearrgb_to_srgb(), StudioLight::matcap_diffuse, StudioLight::matcap_specular, RESCALE_COORD, rgb_to_cpack(), STUDIOLIGHT_EXTERNAL_IMAGE_LOADED, STUDIOLIGHT_ICON_SIZE, v, ImBuf::x, x, ImBuf::y, and y.
Referenced by BKE_studiolight_preview().
|
static |
Definition at line 292 of file studiolight.cc.
Referenced by studiolight_load_equirect_image().
|
static |
Definition at line 325 of file studiolight.cc.
References MEM_freeN(), STREQ, STUDIOLIGHT_PASSNAME_DIFFUSE, and STUDIOLIGHT_PASSNAME_SPECULAR.
Referenced by studiolight_load_equirect_image().
|
static |
Definition at line 288 of file studiolight.cc.
Referenced by studiolight_load_equirect_image().
|
static |
Definition at line 300 of file studiolight.cc.
References IB_PROFILE_LINEAR_RGB, IMB_buffer_float_from_float(), MEM_calloc_arrayN(), MEM_freeN(), ImBuf::x, and ImBuf::y.
Referenced by studiolight_load_equirect_image().
|
static |
Definition at line 696 of file studiolight.cc.
References alpha_circle_mask(), BKE_studiolight_ensure_flag(), StudioLight::equirect_radiance_buffer, ITER_PIXELS, ITER_PIXELS_END, linearrgb_to_srgb(), reflect_v3_v3v3(), RESCALE_COORD, rgb_to_cpack(), sphere_normal_from_uv(), studiolight_calculate_radiance(), STUDIOLIGHT_EXTERNAL_IMAGE_LOADED, STUDIOLIGHT_ICON_SIZE, x, and y.
Referenced by BKE_studiolight_preview().
|
static |
Definition at line 242 of file studiolight.cc.
References BLI_dynstr_free(), BLI_dynstr_get_cstring(), BLI_dynstr_get_len(), BLI_dynstr_new(), BLI_fopen(), StudioLight::filepath, StudioLight::light, StudioLight::light_ambient, MEM_freeN(), str, STUDIOLIGHT_FILE_VERSION, WRITE_IVAL, WRITE_SOLIDLIGHT, and WRITE_VEC3.
Referenced by BKE_studiolight_create().
Definition at line 525 of file studiolight.cc.
References max_ff(), NL, and w().
Referenced by blinn_specular(), and studiolight_lights_eval().
|
static |
Definition at line 40 of file studiolight.cc.
Referenced by studiolight_create().
Definition at line 44 of file studiolight.cc.
Referenced by BKE_studiolight_init().
|
static |
Definition at line 49 of file studiolight.cc.
Referenced by BKE_studiolight_find_default().
Definition at line 46 of file studiolight.cc.
Referenced by BKE_studiolight_init().
|
static |
Definition at line 48 of file studiolight.cc.
Referenced by BKE_studiolight_find_default().
Definition at line 45 of file studiolight.cc.
Referenced by BKE_studiolight_init().
|
static |
Definition at line 39 of file studiolight.cc.
Referenced by BKE_studiolight_create(), BKE_studiolight_find(), BKE_studiolight_find_default(), BKE_studiolight_findindex(), BKE_studiolight_free(), BKE_studiolight_init(), BKE_studiolight_listbase(), BKE_studiolight_remove(), and studiolight_add_file().