diff options
author | Ton Roosendaal <ton@blender.org> | 2006-06-28 16:53:57 +0400 |
---|---|---|
committer | Ton Roosendaal <ton@blender.org> | 2006-06-28 16:53:57 +0400 |
commit | 9ecffb4314e25cd7f52eca12a0b70e30ebcda5e6 (patch) | |
tree | 759debbd034265a68bdb5050a6239eba2316dd4e /source | |
parent | 1937162af5f05fadc0d282e077286419d0071523 (diff) |
Campbell report:
Not clearing the value for 'parts rendered' caused 3d previewrender to
sometimes fail doing updates (when an escape happens during converting
render data).
Diffstat (limited to 'source')
-rw-r--r-- | source/blender/render/intern/source/convertblender.c | 2 | ||||
-rw-r--r-- | source/blender/render/intern/source/pipeline.c | 1 | ||||
-rw-r--r-- | source/blender/src/buttons_shading.c | 2 | ||||
-rw-r--r-- | source/blender/src/previewrender.c | 19 |
4 files changed, 14 insertions, 10 deletions
diff --git a/source/blender/render/intern/source/convertblender.c b/source/blender/render/intern/source/convertblender.c index 2834ab4402c..25bfce44799 100644 --- a/source/blender/render/intern/source/convertblender.c +++ b/source/blender/render/intern/source/convertblender.c @@ -2944,7 +2944,7 @@ void RE_Database_Free(Render *re) if(re->r.mode & R_RAYTRACE) freeoctree(re); re->totvlak=re->totvert=re->totlamp=re->tothalo= 0; - re->i.convertdone= 0; + re->i.convertdone= re->i.partsdone= 0; if(re->scene) if(re->scene->r.scemode & R_FREE_IMAGE) diff --git a/source/blender/render/intern/source/pipeline.c b/source/blender/render/intern/source/pipeline.c index 6643d28d69b..74c92bcd30e 100644 --- a/source/blender/render/intern/source/pipeline.c +++ b/source/blender/render/intern/source/pipeline.c @@ -958,6 +958,7 @@ static void render_tile_processor(Render *re, int firsttile) re->display_draw(pa->result, NULL); re->i.partsdone++; + re->stats_draw(&re->i); } free_render_result(pa->result); pa->result= NULL; diff --git a/source/blender/src/buttons_shading.c b/source/blender/src/buttons_shading.c index 0bd96b89af2..d48763d22ec 100644 --- a/source/blender/src/buttons_shading.c +++ b/source/blender/src/buttons_shading.c @@ -2828,7 +2828,7 @@ static void material_panel_tramir(Material *ma) uiBlockBeginAlign(block); uiDefButF(block, NUMSLI, B_MATPRV, "SpecTra ", 10,20,150,20, &(ma->spectra), 0.0, 1.0, 0, 0, "Makes specular areas opaque on transparent materials"); - uiDefButF(block, NUMSLI, B_MATPRV, "Add ", 160,20,150,20, &(ma->add), 0.0, 1.0, 0, 0, "Uses additive blending for Z-transparant materials"); +// uiDefButF(block, NUMSLI, B_MATPRV, "Add ", 160,20,150,20, &(ma->add), 0.0, 1.0, 0, 0, "Uses additive blending for Z-transparant materials"); uiBlockEndAlign(block); } diff --git a/source/blender/src/previewrender.c b/source/blender/src/previewrender.c index 5df5891500d..60d930e729d 100644 --- a/source/blender/src/previewrender.c +++ b/source/blender/src/previewrender.c @@ -599,7 +599,8 @@ void BIF_previewdraw(ScrArea *sa, uiBlock *block) /* *************************** Preview for 3d window *********************** */ static void view3d_previewrender_stats(RenderStats *rs) { -// printf("rendered %.3f\n", rs->lastframetime); +// if(rs->convertdone) +// printf("rendered %d %.3f\n", rs->partsdone, rs->lastframetime); } static void view3d_previewrender_progress(RenderResult *rr, volatile rcti *renrect) @@ -638,7 +639,7 @@ void BIF_view3d_previewrender_signal(ScrArea *sa, short signal) RenderInfo *ri= v3d->ri; ri->status &= ~signal; ri->curtile= 0; - // printf("preview signal\n"); + //printf("preview signal %d\n", signal); if(ri->re && (signal & PR_DBASE)) RE_Database_Free(ri->re); @@ -744,7 +745,7 @@ void BIF_view3d_previewrender(ScrArea *sa) addafterqueue(curarea->win, RENDERPREVIEW, 1); return; } - + //printf("Enter previewrender\n"); /* ok, are we rendering all over? */ if(ri->re==NULL) { char name[32]; @@ -774,7 +775,7 @@ void BIF_view3d_previewrender(ScrArea *sa) /* until here are no escapes */ ri->status |= PR_DISPRECT; ri->curtile= 0; - // printf("new render\n"); + //printf("new render\n"); } re= ri->re; @@ -791,7 +792,7 @@ void BIF_view3d_previewrender(ScrArea *sa) RE_SetWindow(ri->re, &viewplane, clipsta, clipend); ri->status |= PR_DISPRECT; ri->curtile= 0; - // printf("disprect update\n"); + //printf("disprect update\n"); } if((ri->status & PR_DBASE)==0) { unsigned int lay= G.scene->lay; @@ -810,7 +811,7 @@ void BIF_view3d_previewrender(ScrArea *sa) if(rstats->convertdone) ri->status |= PR_DBASE|PR_PROJECTED|PR_ROTATED; ri->curtile= 0; - // printf("dbase update\n"); + //printf("dbase update\n"); } if((ri->status & PR_PROJECTED)==0) { if(ri->status & PR_DBASE) { @@ -822,12 +823,12 @@ void BIF_view3d_previewrender(ScrArea *sa) ri->status |= PR_PROJECTED; } ri->curtile= 0; - // printf("project update\n"); + //printf("project update\n"); } /* OK, can we enter render code? */ if(ri->status==(PR_DISPRECT|PR_DBASE|PR_PROJECTED|PR_ROTATED)) { - // printf("curtile %d tottile %d\n", ri->curtile, ri->tottile); + //printf("curtile %d tottile %d\n", ri->curtile, ri->tottile); RE_TileProcessor(ri->re, ri->curtile); if(ri->rect==NULL) @@ -848,6 +849,8 @@ void BIF_view3d_previewrender(ScrArea *sa) else { addafterqueue(curarea->win, RENDERPREVIEW, 1); } + + //printf("\n"); } /* in panel space! */ |