[Bf-committers] [Bf-blender-cvs] SVN commit: /data/svn/bf-blender [45510] trunk/blender: mango request: option to draw background in front of all objects in the viewport.
Sergey Sharybin
sergey.vfx at gmail.com
Tue Apr 10 17:22:22 CEST 2012
Was afraid such renaming will mess up all documentation and tutorials
created for 2,63.
On Tue, Apr 10, 2012 at 5:07 PM, Dalai Felinto <dfelinto at gmail.com> wrote:
> Perhaps it should now be named 'Reference Image' instead of 'Background
> Image'?
>
> 2012/4/10 Sergey Sharybin <sergey.vfx at gmail.com>
>
> > Revision: 45510
> >
> >
> http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=45510
> > Author: nazgul
> > Date: 2012-04-10 14:59:06 +0000 (Tue, 10 Apr 2012)
> > Log Message:
> > -----------
> > mango request: option to draw background in front of all objects in the
> > viewport.
> > Should be really handy for painting clean plates.
> >
> > Modified Paths:
> > --------------
> > trunk/blender/release/scripts/startup/bl_ui/space_view3d.py
> > trunk/blender/source/blender/editors/space_view3d/view3d_draw.c
> > trunk/blender/source/blender/makesdna/DNA_view3d_types.h
> > trunk/blender/source/blender/makesrna/intern/rna_space.c
> >
> > Modified: trunk/blender/release/scripts/startup/bl_ui/space_view3d.py
> > ===================================================================
> > --- trunk/blender/release/scripts/startup/bl_ui/space_view3d.py
> 2012-04-10
> > 14:58:21 UTC (rev 45509)
> > +++ trunk/blender/release/scripts/startup/bl_ui/space_view3d.py
> 2012-04-10
> > 14:59:06 UTC (rev 45510)
> > @@ -2478,10 +2478,12 @@
> > column.prop(bg.clip_user, "use_render_undistorted")
> >
> > if has_bg:
> > - box.prop(bg, "opacity", slider=True)
> > + col = box.column()
> > + col.prop(bg, "show_on_foreground")
> > + col.prop(bg, "opacity", slider=True)
> > if bg.view_axis != 'CAMERA':
> > - box.prop(bg, "size")
> > - row = box.row(align=True)
> > + col.prop(bg, "size")
> > + row = col.row(align=True)
> > row.prop(bg, "offset_x", text="X")
> > row.prop(bg, "offset_y", text="Y")
> >
> >
> > Modified: trunk/blender/source/blender/editors/space_view3d/view3d_draw.c
> > ===================================================================
> > --- trunk/blender/source/blender/editors/space_view3d/view3d_draw.c
> > 2012-04-10 14:58:21 UTC (rev 45509)
> > +++ trunk/blender/source/blender/editors/space_view3d/view3d_draw.c
> > 2012-04-10 14:59:06 UTC (rev 45510)
> > @@ -1515,7 +1515,7 @@
> >
> > /* ************************************************************* */
> >
> > -static void draw_bgpic(Scene *scene, ARegion *ar, View3D *v3d)
> > +static void draw_bgpic(Scene *scene, ARegion *ar, View3D *v3d, int
> > foreground)
> > {
> > RegionView3D *rv3d = ar->regiondata;
> > BGpic *bgpic;
> > @@ -1524,10 +1524,13 @@
> > ImBuf *ibuf = NULL, *freeibuf;
> > float vec[4], fac, asp, zoomx, zoomy;
> > float x1, y1, x2, y2, cx, cy;
> > + int fg_flag = foreground ? V3D_BGPIC_FOREGROUND : 0;
> >
> > -
> > for (bgpic = v3d->bgpicbase.first; bgpic; bgpic = bgpic->next) {
> >
> > + if ((bgpic->flag & V3D_BGPIC_FOREGROUND) != fg_flag)
> > + continue;
> > +
> > if ((bgpic->view == 0) || /* zero for any */
> > (bgpic->view & (1 << rv3d->view)) || /* check agaist
> > flags */
> > (rv3d->persp == RV3D_CAMOB && bgpic->view == (1 <<
> > RV3D_VIEW_CAMERA)))
> > @@ -1680,6 +1683,26 @@
> > }
> > }
> >
> > +static void draw_bgpics(Scene *scene, ARegion *ar, View3D *v3d, int
> > foreground)
> > +{
> > + RegionView3D *rv3d = ar->regiondata;
> > +
> > + if ((v3d->flag & V3D_DISPBGPICS) == 0)
> > + return;
> > +
> > + if (v3d->flag2 & V3D_RENDER_OVERRIDE)
> > + return;
> > +
> > + if ((rv3d->view == RV3D_VIEW_USER) || (rv3d->persp !=
> RV3D_ORTHO))
> > {
> > + if (rv3d->persp == RV3D_CAMOB) {
> > + draw_bgpic(scene, ar, v3d, foreground);
> > + }
> > + }
> > + else {
> > + draw_bgpic(scene, ar, v3d, foreground);
> > + }
> > +}
> > +
> > /* ****************** View3d afterdraw *************** */
> >
> > typedef struct View3DAfter {
> > @@ -2750,13 +2773,16 @@
> >
> > /* render result draw */
> > if (v3d->flag & V3D_DISPBGPICS)
> > - draw_bgpic(scene, ar, v3d);
> > + draw_bgpic(scene, ar, v3d, FALSE);
> > else
> > fdrawcheckerboard(0, 0, ar->winx, ar->winy);
> >
> > type = rv3d->render_engine->type;
> > type->view_draw(rv3d->render_engine, C);
> >
> > + if (v3d->flag & V3D_DISPBGPICS)
> > + draw_bgpic(scene, ar, v3d, TRUE);
> > +
> > return 1;
> > }
> >
> > @@ -2837,9 +2863,6 @@
> >
> star_stuff_term_func);
> > }
> > }
> > - if ((v3d->flag2 & V3D_RENDER_OVERRIDE) == 0) {
> > - if (v3d->flag & V3D_DISPBGPICS)
> > draw_bgpic(scene, ar, v3d);
> > - }
> > }
> > }
> > else {
> > @@ -2851,13 +2874,11 @@
> > glLoadMatrixf(rv3d->winmat);
> > glMatrixMode(GL_MODELVIEW);
> > glLoadMatrixf(rv3d->viewmat);
> > -
> > - if (v3d->flag & V3D_DISPBGPICS) {
> > - draw_bgpic(scene, ar, v3d);
> > - }
> > }
> > }
> > -
> > +
> > + draw_bgpics(scene, ar, v3d, FALSE);
> > +
> > if (rv3d->rflag & RV3D_CLIPPING)
> > ED_view3d_clipping_set(rv3d);
> >
> > @@ -2915,6 +2936,8 @@
> > }
> > }
> >
> > + draw_bgpics(scene, ar, v3d, TRUE);
> > +
> > // REEB_draw();
> >
> > if ((v3d->flag2 & V3D_RENDER_OVERRIDE) == 0) {
> >
> > Modified: trunk/blender/source/blender/makesdna/DNA_view3d_types.h
> > ===================================================================
> > --- trunk/blender/source/blender/makesdna/DNA_view3d_types.h
> 2012-04-10
> > 14:58:21 UTC (rev 45509)
> > +++ trunk/blender/source/blender/makesdna/DNA_view3d_types.h
> 2012-04-10
> > 14:59:06 UTC (rev 45510)
> > @@ -314,6 +314,7 @@
> > #define V3D_BGPIC_EXPANDED 2
> > #define V3D_BGPIC_CAMERACLIP 4
> > #define V3D_BGPIC_DISABLED 8
> > +#define V3D_BGPIC_FOREGROUND 16
> >
> > /* BGPic->source */
> > /* may want to use 1 for select ?*/
> >
> > Modified: trunk/blender/source/blender/makesrna/intern/rna_space.c
> > ===================================================================
> > --- trunk/blender/source/blender/makesrna/intern/rna_space.c
> 2012-04-10
> > 14:58:21 UTC (rev 45509)
> > +++ trunk/blender/source/blender/makesrna/intern/rna_space.c
> 2012-04-10
> > 14:59:06 UTC (rev 45510)
> > @@ -1350,6 +1350,11 @@
> > RNA_def_property_boolean_negative_sdna(prop, NULL, "flag",
> > V3D_BGPIC_DISABLED);
> > RNA_def_property_ui_text(prop, "Show Background Image", "Show this
> > image as background");
> > RNA_def_property_update(prop, NC_SPACE|ND_SPACE_VIEW3D, NULL);
> > +
> > + prop = RNA_def_property(srna, "show_on_foreground", PROP_BOOLEAN,
> > PROP_NONE);
> > + RNA_def_property_boolean_sdna(prop, NULL, "flag",
> > V3D_BGPIC_FOREGROUND);
> > + RNA_def_property_ui_text(prop, "Show On Foreground", "Show this
> > image in fround of objects in viewport");
> > + RNA_def_property_update(prop, NC_SPACE|ND_SPACE_VIEW3D, NULL);
> > }
> >
> > static void rna_def_backgroundImages(BlenderRNA *brna, PropertyRNA
> *cprop)
> >
> > _______________________________________________
> > Bf-blender-cvs mailing list
> > Bf-blender-cvs at blender.org
> > http://lists.blender.org/mailman/listinfo/bf-blender-cvs
> >
> _______________________________________________
> Bf-committers mailing list
> Bf-committers at blender.org
> http://lists.blender.org/mailman/listinfo/bf-committers
>
--
With best regards, Sergey Sharybin
More information about the Bf-committers
mailing list