diff options
-rw-r--r-- | source/blender/makesdna/DNA_scene_types.h | 2 | ||||
-rw-r--r-- | source/blender/render/intern/source/imagetexture.c | 3 | ||||
-rw-r--r-- | source/blender/src/previewrender.c | 3 |
3 files changed, 7 insertions, 1 deletions
diff --git a/source/blender/makesdna/DNA_scene_types.h b/source/blender/makesdna/DNA_scene_types.h index 777ccf06a89..33edf65454e 100644 --- a/source/blender/makesdna/DNA_scene_types.h +++ b/source/blender/makesdna/DNA_scene_types.h @@ -457,7 +457,7 @@ typedef struct Scene { #define R_SINGLE_LAYER 0x0200 #define R_EXR_TILE_FILE 0x0400 #define R_COMP_FREE 0x0800 - +#define R_NO_IMAGE_LOAD 0x1000 /* alphamode */ #define R_ADDSKY 0 diff --git a/source/blender/render/intern/source/imagetexture.c b/source/blender/render/intern/source/imagetexture.c index ba1dda6a775..39a5cedea98 100644 --- a/source/blender/render/intern/source/imagetexture.c +++ b/source/blender/render/intern/source/imagetexture.c @@ -102,6 +102,9 @@ int imagewrap(Tex *tex, Image *ima, float *texvec, TexResult *texres) } if(ima->ibuf==NULL) { + /* hack for icon render */ + if(R.r.scemode &R_NO_IMAGE_LOAD) + return 0; BLI_lock_thread(LOCK_MALLOC); if(ima->ibuf==NULL) ima_ibuf_is_nul(tex, ima); BLI_unlock_thread(LOCK_MALLOC); diff --git a/source/blender/src/previewrender.c b/source/blender/src/previewrender.c index 60d930e729d..b64208035ac 100644 --- a/source/blender/src/previewrender.c +++ b/source/blender/src/previewrender.c @@ -438,13 +438,16 @@ void BIF_previewrender(struct ID *id, struct RenderInfo *ri, struct ScrArea *are sce->r.scemode |= R_NODE_PREVIEW; if(sbuts->flag & SB_PRV_OSA) sce->r.mode |= R_OSA; + sce->r.scemode &= ~R_NO_IMAGE_LOAD; } else if(pr_method==PR_DO_RENDER) { RE_test_break_cb(re, qtest); sce->r.scemode |= R_NODE_PREVIEW; + sce->r.scemode &= ~R_NO_IMAGE_LOAD; } else { /* PR_ICON_RENDER */ sce->r.scemode &= ~R_NODE_PREVIEW; + sce->r.scemode |= R_NO_IMAGE_LOAD; } /* allocates render result */ |