25#define STUDIOLIGHT_ICON_ID_TYPE_RADIANCE (1 << 0)
26#define STUDIOLIGHT_ICON_ID_TYPE_IRRADIANCE (1 << 1)
27#define STUDIOLIGHT_ICON_ID_TYPE_MATCAP (1 << 2)
28#define STUDIOLIGHT_ICON_ID_TYPE_MATCAP_FLIPPED (1 << 3)
30#define STUDIOLIGHT_MAX_LIGHT 4
32#define STUDIOLIGHT_ICON_SIZE 96
55#define STUDIOLIGHT_FLAG_ALL (STUDIOLIGHT_INTERNAL | STUDIOLIGHT_EXTERNAL_FILE)
56#define STUDIOLIGHT_FLAG_ORIENTATIONS \
57 (STUDIOLIGHT_TYPE_STUDIO | STUDIOLIGHT_TYPE_WORLD | STUDIOLIGHT_TYPE_MATCAP)
58#define STUDIOLIGHT_ORIENTATIONS_MATERIAL_MODE (STUDIOLIGHT_TYPE_WORLD)
59#define STUDIOLIGHT_ORIENTATIONS_SOLID (STUDIOLIGHT_INTERNAL | STUDIOLIGHT_TYPE_STUDIO)
113 const float light_ambient[3]);
void BKE_studiolight_remove(StudioLight *sl)
@ STUDIOLIGHT_EXTERNAL_IMAGE_LOADED
@ STUDIOLIGHT_EQUIRECT_RADIANCE_GPUTEXTURE
@ STUDIOLIGHT_MATCAP_SPECULAR_GPUTEXTURE
@ STUDIOLIGHT_USER_DEFINED
@ STUDIOLIGHT_MATCAP_DIFFUSE_GPUTEXTURE
@ STUDIOLIGHT_TYPE_MATCAP
@ STUDIOLIGHT_SPECULAR_HIGHLIGHT_PASS
@ STUDIOLIGHT_TYPE_STUDIO
@ STUDIOLIGHT_EXTERNAL_FILE
struct StudioLight * BKE_studiolight_find(const char *name, int flag)
struct StudioLight * BKE_studiolight_find_default(int flag)
struct StudioLight StudioLight
void StudioLightFreeFunction(struct StudioLight *, void *data)
StudioLight * BKE_studiolight_load(const char *filepath, int type)
struct StudioLight * BKE_studiolight_findindex(int index, int flag)
struct StudioLightImage StudioLightImage
void BKE_studiolight_unset_icon_id(StudioLight *sl, int icon_id)
void BKE_studiolight_set_free_function(StudioLight *sl, StudioLightFreeFunction *free_function, void *data)
void BKE_studiolight_default(SolidLight lights[4], float light_ambient[3])
struct ListBase * BKE_studiolight_listbase(void)
void BKE_studiolight_init(void)
void BKE_studiolight_ensure_flag(StudioLight *sl, int flag)
StudioLight * BKE_studiolight_create(const char *filepath, const SolidLight light[4], const float light_ambient[3])
StudioLight * BKE_studiolight_studio_edit_get(void)
#define STUDIOLIGHT_MAX_LIGHT
void BKE_studiolight_free(void)
void BKE_studiolight_refresh(void)
void BKE_studiolight_preview(uint *icon_buffer, StudioLight *sl, int icon_id_type)
struct GPUTexture * gputexture
StudioLightImage matcap_specular
struct StudioLight * prev
void * free_function_data
struct StudioLight * next
struct GPUTexture * equirect_radiance_gputexture
StudioLightFreeFunction * free_function
struct ImBuf * equirect_radiance_buffer
int icon_id_matcap_flipped
StudioLightImage matcap_diffuse