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:
authorCampbell Barton <ideasman42@gmail.com>2011-11-16 23:06:38 +0400
committerCampbell Barton <ideasman42@gmail.com>2011-11-16 23:06:38 +0400
commit9d05ccf9e84510ca7e3fe140f6e20991a931b8ce (patch)
treef8f7241b779c9049d853a5e824db2dd150228ebe /source/blender/render
parent707fcc42a390e91aedd858588c30d04fea43f0e6 (diff)
parent1af839081b7adcc3ceb13e5e7cc579b309e90915 (diff)
svn merge -r41899:41926 ^/trunk/blender. also sync mempool with trunk and move BLI_mempool_alloc out of mempools header where it was inlined
Diffstat (limited to 'source/blender/render')
-rw-r--r--source/blender/render/intern/source/external_engine.c5
-rw-r--r--source/blender/render/intern/source/render_texture.c19
2 files changed, 16 insertions, 8 deletions
diff --git a/source/blender/render/intern/source/external_engine.c b/source/blender/render/intern/source/external_engine.c
index b7f89e260a8..38ace8d5121 100644
--- a/source/blender/render/intern/source/external_engine.c
+++ b/source/blender/render/intern/source/external_engine.c
@@ -283,6 +283,11 @@ int RE_engine_render(Render *re, int do_all)
if(re->result==NULL)
return 1;
+ /* set render info */
+ re->i.cfra= re->scene->r.cfra;
+ BLI_strncpy(re->i.scenename, re->scene->id.name+2, sizeof(re->i.scenename));
+ re->i.totface=re->i.totvert=re->i.totstrand=re->i.totlamp=re->i.tothalo= 0;
+
/* render */
engine = RE_engine_create(type);
engine->re= re;
diff --git a/source/blender/render/intern/source/render_texture.c b/source/blender/render/intern/source/render_texture.c
index 2d45b9c4ea9..1d7d1c7c936 100644
--- a/source/blender/render/intern/source/render_texture.c
+++ b/source/blender/render/intern/source/render_texture.c
@@ -3007,7 +3007,7 @@ void do_sky_tex(const float rco[3], float lo[3], const float dxyview[2], float h
TexResult texres= {0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0, NULL};
float *co, fact, stencilTin=1.0;
float tempvec[3], texvec[3], dxt[3], dyt[3];
- int tex_nr, rgb= 0, ok;
+ int tex_nr, rgb= 0;
if (R.r.scemode & R_NO_TEX) return;
/* todo: add flag to test if there's a tex */
@@ -3171,18 +3171,21 @@ void do_sky_tex(const float rco[3], float lo[3], const float dxyview[2], float h
texture_rgb_blend(hor, tcol, hor, texres.tin, mtex->colfac, mtex->blendtype);
}
if(mtex->mapto & (WOMAP_ZENUP+WOMAP_ZENDOWN)) {
- ok= 0;
+ float zenfac = 0.0f;
+
if(R.wrld.skytype & WO_SKYREAL) {
if((skyflag & WO_ZENUP)) {
- if(mtex->mapto & WOMAP_ZENUP) ok= 1;
+ if(mtex->mapto & WOMAP_ZENUP) zenfac= mtex->zenupfac;
}
- else if(mtex->mapto & WOMAP_ZENDOWN) ok= 1;
+ else if(mtex->mapto & WOMAP_ZENDOWN) zenfac= mtex->zendownfac;
}
- else ok= 1;
-
- if(ok) {
- texture_rgb_blend(zen, tcol, zen, texres.tin, mtex->colfac, mtex->blendtype);
+ else {
+ if(mtex->mapto & WOMAP_ZENUP) zenfac= mtex->zenupfac;
+ else if(mtex->mapto & WOMAP_ZENDOWN) zenfac= mtex->zendownfac;
}
+
+ if(zenfac != 0.0f)
+ texture_rgb_blend(zen, tcol, zen, texres.tin, zenfac, mtex->blendtype);
}
}
if(mtex->mapto & WOMAP_BLEND) {