Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlexander Romanov <a.romanov@blend4web.com>2016-01-27 12:06:57 +0300
committerAlexander Romanov <a.romanov@blend4web.com>2016-01-27 12:06:57 +0300
commit771f73b6bedbdd1c1e2993bd8d3680d53fa67b7c (patch)
tree1e1593c722640fc00a1755d1acd3a4263ff396b0 /source/blender/blenkernel
parentf6ff8f27e35d7b9596bbb2c55c3cf464f6e6ffc0 (diff)
World textures displaying for viewport in BI.
This patch supports "Image or Movie" and "Environment map" types of world texture for the viewport. It supports: - "View", "AngMap" and "Equirectangular" types of mapping. - Different types of texture blending (according to BI world render). - Same color blending as when it lacked textures (but render via glsl). {F207734} {F207735} Example: {F275180} Original author: @valentin_b4w Regards, Alexander (Blend4Web Team). Reviewers: sergey, valentin_b4w, brecht, merwin Reviewed By: merwin Subscribers: campbellbarton, merwin, blueprintrandom, youle, a.romanov, yurikovelenov, AlexKowel, Evgeny_Rodygin Projects: #rendering, #opengl_gfx, #bf_blender:_next Differential Revision: https://developer.blender.org/D1414
Diffstat (limited to 'source/blender/blenkernel')
-rw-r--r--source/blender/blenkernel/BKE_image.h3
-rw-r--r--source/blender/blenkernel/intern/image.c12
2 files changed, 15 insertions, 0 deletions
diff --git a/source/blender/blenkernel/BKE_image.h b/source/blender/blenkernel/BKE_image.h
index 1d4a405a89c..aec5b0afa45 100644
--- a/source/blender/blenkernel/BKE_image.h
+++ b/source/blender/blenkernel/BKE_image.h
@@ -259,6 +259,9 @@ bool BKE_image_scale(struct Image *image, int width, int height);
/* check if texture has alpha (depth=32) */
bool BKE_image_has_alpha(struct Image *image);
+/* check if texture has gpu texture code */
+bool BKE_image_has_bindcode(struct Image *ima);
+
void BKE_image_get_size(struct Image *image, struct ImageUser *iuser, int *width, int *height);
void BKE_image_get_size_fl(struct Image *image, struct ImageUser *iuser, float size[2]);
void BKE_image_get_aspect(struct Image *image, float *aspx, float *aspy);
diff --git a/source/blender/blenkernel/intern/image.c b/source/blender/blenkernel/intern/image.c
index 7c40674dd6c..d48b455ae81 100644
--- a/source/blender/blenkernel/intern/image.c
+++ b/source/blender/blenkernel/intern/image.c
@@ -657,6 +657,18 @@ bool BKE_image_scale(Image *image, int width, int height)
return (ibuf != NULL);
}
+bool BKE_image_has_bindcode(Image *ima)
+{
+ bool has_bindcode = false;
+ for (int i = 0; i < TEXTARGET_COUNT; i++) {
+ if (ima->bindcode[i]) {
+ has_bindcode = true;
+ break;
+ }
+ }
+ return has_bindcode;
+}
+
static void image_init_color_management(Image *ima)
{
ImBuf *ibuf;