diff options
author | Jeroen Bakker <j.bakker@atmind.nl> | 2018-05-25 09:06:36 +0300 |
---|---|---|
committer | Jeroen Bakker <j.bakker@atmind.nl> | 2018-05-28 18:07:39 +0300 |
commit | 765fd29d6855d098d8fcdd72ba595dfd1e4e4e17 (patch) | |
tree | f1877bfcaf5f4a309f294e2fb516a61c9d6f01aa /source/blender/blenkernel/BKE_studiolight.h | |
parent | ce5fa2decad115f023e2f5591255078768b4fa5e (diff) |
EEvEE: LookDev
Diffstat (limited to 'source/blender/blenkernel/BKE_studiolight.h')
-rw-r--r-- | source/blender/blenkernel/BKE_studiolight.h | 17 |
1 files changed, 13 insertions, 4 deletions
diff --git a/source/blender/blenkernel/BKE_studiolight.h b/source/blender/blenkernel/BKE_studiolight.h index 2fcf6ab2f19..213de712abd 100644 --- a/source/blender/blenkernel/BKE_studiolight.h +++ b/source/blender/blenkernel/BKE_studiolight.h @@ -51,6 +51,10 @@ #define STUDIOLIGHT_Y_NEG 3 #define STUDIOLIGHT_Z_POS 4 #define STUDIOLIGHT_Z_NEG 5 +#define STUDIOLIGHT_ICON_ID_TYPE_RADIANCE 0 +#define STUDIOLIGHT_ICON_ID_TYPE_IRRADIANCE 1 + +struct GPUTexture; enum StudioLightFlag { STUDIOLIGHT_DIFFUSE_LIGHT_CALCULATED = (1 << 0), @@ -58,7 +62,9 @@ enum StudioLightFlag { STUDIOLIGHT_EXTERNAL_FILE = (1 << 2), STUDIOLIGHT_ORIENTATION_CAMERA = (1 << 3), STUDIOLIGHT_ORIENTATION_WORLD = (1 << 4), - STUDIOLIGHT_RADIANCE_BUFFERS_CALCULATED = (1 << 5), + STUDIOLIGHT_EQUIRECTANGULAR_IMAGE_LOADED = (1 << 5), + STUDIOLIGHT_EQUIRECTANGULAR_GPUTEXTURE = (1 << 6), + STUDIOLIGHT_RADIANCE_BUFFERS_CALCULATED = (1 << 7), } StudioLightFlag; typedef struct StudioLight { @@ -66,18 +72,21 @@ typedef struct StudioLight { int flag; char name[FILE_MAXFILE]; char path[FILE_MAX]; - int icon_id; + int irradiance_icon_id; + int radiance_icon_id; int index; float diffuse_light[6][3]; float light_direction[3]; + ImBuf *equirectangular_buffer; ImBuf *radiance_buffers[6]; + struct GPUTexture *equirectangular_gputexture; } StudioLight; void BKE_studiolight_init(void); void BKE_studiolight_free(void); -struct StudioLight *BKE_studiolight_find(const char *name); +struct StudioLight *BKE_studiolight_find(const char *name, int flag); struct StudioLight *BKE_studiolight_findindex(int index); -unsigned int *BKE_studiolight_preview(StudioLight *sl, int icon_size); +unsigned int *BKE_studiolight_preview(StudioLight *sl, int icon_size, int icon_id_type); const struct ListBase *BKE_studiolight_listbase(void); void BKE_studiolight_ensure_flag(StudioLight *sl, int flag); |