diff options
author | Brecht Van Lommel <brechtvanlommel@pandora.be> | 2010-04-23 22:02:50 +0400 |
---|---|---|
committer | Brecht Van Lommel <brechtvanlommel@pandora.be> | 2010-04-23 22:02:50 +0400 |
commit | 23ad9588ad21c153cfc4427bc0189285b64411b2 (patch) | |
tree | 1f65d6a6015383ccf50cc75d9586ad815435c6a1 /source/blender | |
parent | 877e855ca51a015bc363f317d7a5f4c6c372275b (diff) |
Some fixes from the render branch:
* Take border render into account when drawing grid before for render
result becomes visible.
* Use antialiasing for rendering icon previews.
* Fix Full Sample not drawing render result while rendering.
* Mesh Deform Modifier: also forgot to commit this file.
Diffstat (limited to 'source/blender')
-rw-r--r-- | source/blender/blenkernel/intern/image.c | 19 | ||||
-rw-r--r-- | source/blender/blenloader/intern/writefile.c | 2 | ||||
-rw-r--r-- | source/blender/editors/render/render_preview.c | 1 | ||||
-rw-r--r-- | source/blender/editors/space_image/space_image.c | 6 | ||||
-rw-r--r-- | source/blender/render/intern/source/pipeline.c | 2 |
5 files changed, 20 insertions, 10 deletions
diff --git a/source/blender/blenkernel/intern/image.c b/source/blender/blenkernel/intern/image.c index 66e6171d9ee..7b727244dcb 100644 --- a/source/blender/blenkernel/intern/image.c +++ b/source/blender/blenkernel/intern/image.c @@ -1928,9 +1928,6 @@ static ImBuf *image_get_render_result(Image *ima, ImageUser *iuser, void **lock_ } } - if(!(rectf || rect)) - return NULL; - ibuf= image_get_ibuf(ima, IMA_NO_INDEX, 0); /* make ibuf if needed, and initialize it */ @@ -1948,11 +1945,17 @@ static ImBuf *image_get_render_result(Image *ima, ImageUser *iuser, void **lock_ if(rect) ibuf->rect= rect; - ibuf->rect_float= rectf; - ibuf->flags |= IB_rectfloat; - ibuf->channels= channels; - ibuf->zbuf_float= rectz; - ibuf->flags |= IB_zbuffloat; + if(rectf) { + ibuf->rect_float= rectf; + ibuf->flags |= IB_rectfloat; + ibuf->channels= channels; + } + + if(rectz) { + ibuf->zbuf_float= rectz; + ibuf->flags |= IB_zbuffloat; + } + ibuf->dither= dither; ima->ok= IMA_OK_LOADED; diff --git a/source/blender/blenloader/intern/writefile.c b/source/blender/blenloader/intern/writefile.c index 47b71dfa5e4..6e86cc2bdcc 100644 --- a/source/blender/blenloader/intern/writefile.c +++ b/source/blender/blenloader/intern/writefile.c @@ -1234,7 +1234,7 @@ static void write_modifiers(WriteData *wd, ListBase *modbase) writedata(wd, DATA, sizeof(float)*mmd->totvert*mmd->totcagevert, mmd->bindweights); writedata(wd, DATA, sizeof(float)*3*mmd->totcagevert, - mmd->bindcos); + mmd->bindcagecos); writestruct(wd, DATA, "MDefCell", size*size*size, mmd->dyngrid); writestruct(wd, DATA, "MDefInfluence", mmd->totinfluence, mmd->dyninfluences); writedata(wd, DATA, sizeof(int)*mmd->totvert, mmd->dynverts); diff --git a/source/blender/editors/render/render_preview.c b/source/blender/editors/render/render_preview.c index d06d3e6705d..112b0ea6cd4 100644 --- a/source/blender/editors/render/render_preview.c +++ b/source/blender/editors/render/render_preview.c @@ -898,6 +898,7 @@ static void shader_preview_render(ShaderPreview *sp, ID *id, int split, int firs if(sp->pr_method==PR_ICON_RENDER) { sce->r.scemode |= R_NO_IMAGE_LOAD; + sce->r.mode |= R_OSA; } else if(sp->pr_method==PR_NODE_RENDER) { if(idtype == ID_MA) sce->r.scemode |= R_MATNODE_PREVIEW; diff --git a/source/blender/editors/space_image/space_image.c b/source/blender/editors/space_image/space_image.c index 45903c8079d..af35fa4f5a9 100644 --- a/source/blender/editors/space_image/space_image.c +++ b/source/blender/editors/space_image/space_image.c @@ -178,6 +178,12 @@ void ED_space_image_size(SpaceImage *sima, int *width, int *height) /* not very important, just nice */ *width= (scene->r.xsch*scene->r.size)/100; *height= (scene->r.ysch*scene->r.size)/100; + + if((scene->r.mode & R_BORDER) && (scene->r.mode & R_CROP)) { + *width *= (scene->r.border.xmax - scene->r.border.xmin); + *height *= (scene->r.border.ymax - scene->r.border.ymin); + } + } /* I know a bit weak... but preview uses not actual image size */ // XXX else if(image_preview_active(sima, width, height)); diff --git a/source/blender/render/intern/source/pipeline.c b/source/blender/render/intern/source/pipeline.c index 0b7a0119f3e..0ebcf53d393 100644 --- a/source/blender/render/intern/source/pipeline.c +++ b/source/blender/render/intern/source/pipeline.c @@ -1061,7 +1061,6 @@ void RE_AcquireResultImage(Render *re, RenderResult *rr) rr->rectf= re->result->rectf; rr->rectz= re->result->rectz; rr->rect32= re->result->rect32; - rr->compo_seq= (rr->rectf != NULL); /* active layer */ rl= render_get_active_layer(re, re->result); @@ -1073,6 +1072,7 @@ void RE_AcquireResultImage(Render *re, RenderResult *rr) rr->rectz= RE_RenderLayerGetPass(rl, SCE_PASS_Z); } + rr->compo_seq= (rr->rectf != NULL); rr->layers= re->result->layers; } } |