New:
- XRAY draw for armatures now is generic "Draw Extra" option for any Object type. This feature just moves drawing to the end, after clearing the zbuffer again. - Solid draw mode now displays materials with Alpha, with the new "Draw extra" option "Transp" set. This also moves drawing transparent to the end, but it doesn't sort the transparent faces. Still looks OK. Note: this is not enabled in mesh editmode. Here all the fancy extra drawing just makes it nearly impossible to do OK. - Re-ordered Object Buttons -> "Draw" panel Fixes: - do_versions had check for the UserDef in it (new ogl texture cache). that can't be there, should be in usiblender.c (stupid exception). - same error caused reading older files to not always fix version changes on armatures (commit yesterday). - Outline select drawing happened also on picking-select draw, needless slowdown.
This commit is contained in:
@@ -981,17 +981,19 @@ void object_panel_draw(Object *ob)
|
||||
if(uiNewPanel(curarea, block, "Draw", "Object", 320, 0, 318, 204)==0) return;
|
||||
|
||||
/* LAYERS */
|
||||
xco= 151;
|
||||
dx= 32;
|
||||
xco= 120;
|
||||
dx= 35;
|
||||
dy= 30;
|
||||
|
||||
uiDefBut(block, LABEL, 0, "Layers", 10,170,100,20, NULL, 0, 0, 0, 0, "");
|
||||
|
||||
uiBlockBeginAlign(block);
|
||||
for(a=0; a<5; a++)
|
||||
uiDefButI(block, TOG|BIT|(a), B_OBLAY+a, "", (short)(xco+a*(dx/2)), 180, (short)(dx/2), (short)(dy/2), &(BASACT->lay), 0, 0, 0, 0, "");
|
||||
for(a=0; a<5; a++)
|
||||
uiDefButI(block, TOG|BIT|(a+10), B_OBLAY+a+10, "", (short)(xco+a*(dx/2)), 165, (short)(dx/2), (short)(dy/2), &(BASACT->lay), 0, 0, 0, 0, "");
|
||||
|
||||
xco+= 5;
|
||||
xco+= 7;
|
||||
uiBlockBeginAlign(block);
|
||||
for(a=5; a<10; a++)
|
||||
uiDefButI(block, TOG|BIT|(a), B_OBLAY+a, "", (short)(xco+a*(dx/2)), 180, (short)(dx/2), (short)(dy/2), &(BASACT->lay), 0, 0, 0, 0, "");
|
||||
@@ -1000,20 +1002,31 @@ void object_panel_draw(Object *ob)
|
||||
|
||||
uiBlockEndAlign(block);
|
||||
|
||||
uiDefBut(block, LABEL, 0, "Drawtype", 28,200,100,18, NULL, 0, 0, 0, 0, "");
|
||||
uiDefButC(block, MENU, REDRAWVIEW3D, "Drawtype%t|Bounds %x1|Wire %x2|Solid %x3|Shaded %x4",
|
||||
28,180,100,18, &ob->dt, 0, 0, 0, 0, "Sets the drawing type of the active object");
|
||||
uiDefBut(block, LABEL, 0, "Draw Extra", 28,160,100,18, NULL, 0, 0, 0, 0, "");
|
||||
uiDefBut(block, LABEL, 0, "Drawtype", 10,120,100,20, NULL, 0, 0, 0, 0, "");
|
||||
|
||||
uiBlockBeginAlign(block);
|
||||
uiDefButC(block, TOG|BIT|0, REDRAWVIEW3D, "Bounds", 28, 140, 100, 18, &ob->dtx, 0, 0, 0, 0, "Displays the active object's bounds");
|
||||
uiDefButC(block, ROW, REDRAWVIEW3D, "Shaded", 10,100,100, 20, &ob->dt, 0, OB_SHADED, 0, 0, "Draw active object shaded or textured");
|
||||
uiDefButC(block, ROW, REDRAWVIEW3D, "Solid", 10,80,100, 20, &ob->dt, 0, OB_SOLID, 0, 0, "Draw active object in solid");
|
||||
uiDefButC(block, ROW, REDRAWVIEW3D, "Wire", 10,60, 100, 20, &ob->dt, 0, OB_WIRE, 0, 0, "Draw active object in wireframe");
|
||||
uiDefButC(block, ROW, REDRAWVIEW3D, "Bounds", 10,40, 100, 20, &ob->dt, 0, OB_BOUNDBOX, 0, 0, "Only draw object with bounding box");
|
||||
uiBlockEndAlign(block);
|
||||
|
||||
uiDefBut(block, LABEL, 0, "Draw Extra", 120,120,90,20, NULL, 0, 0, 0, 0, "");
|
||||
|
||||
uiBlockBeginAlign(block);
|
||||
uiDefButC(block, TOG|BIT|0, REDRAWVIEW3D, "Bounds", 120, 100, 90, 20, &ob->dtx, 0, 0, 0, 0, "Displays the active object's bounds");
|
||||
uiDefButBitC(block, TOG, OB_DRAWNAME, REDRAWVIEW3D, "Name", 210, 100, 90, 20, &ob->dtx, 0, 0, 0, 0, "Displays the active object's name");
|
||||
|
||||
uiDefButS(block, MENU, REDRAWVIEW3D, "Boundary Display%t|Box%x0|Sphere%x1|Cylinder%x2|Cone%x3|Polyheder%x4",
|
||||
28, 120, 100, 18, &ob->boundtype, 0, 0, 0, 0, "Selects the boundary display type");
|
||||
uiDefButBitC(block, TOG, OB_DRAWWIRE, REDRAWVIEW3D, "Wire", 28, 100, 100, 18, &ob->dtx, 0, 0, 0, 0, "Displays the active object's wireframe in shaded drawing modes");
|
||||
uiDefButBitC(block, TOG, OB_AXIS, REDRAWVIEW3D, "Axis", 28, 80, 100, 18, &ob->dtx, 0, 0, 0, 0, "Displays the active object's centre and axis");
|
||||
uiDefButBitC(block, TOG, OB_TEXSPACE, REDRAWVIEW3D, "TexSpace", 28, 60, 100, 18, &ob->dtx, 0, 0, 0, 0, "Displays the active object's texture space");
|
||||
uiDefButBitC(block, TOG, OB_DRAWNAME, REDRAWVIEW3D, "Name", 28, 40, 100, 18, &ob->dtx, 0, 0, 0, 0, "Displays the active object's name");
|
||||
120, 80, 90, 20, &ob->boundtype, 0, 0, 0, 0, "Selects the boundary display type");
|
||||
uiDefButBitC(block, TOG, OB_AXIS, REDRAWVIEW3D, "Axis", 210, 80, 90, 20, &ob->dtx, 0, 0, 0, 0, "Displays the active object's centre and axis");
|
||||
|
||||
uiDefButBitC(block, TOG, OB_TEXSPACE, REDRAWVIEW3D, "TexSpace", 120, 60, 90, 20, &ob->dtx, 0, 0, 0, 0, "Displays the active object's texture space");
|
||||
uiDefButBitC(block, TOG, OB_DRAWWIRE, REDRAWVIEW3D, "Wire", 210, 60, 90, 20, &ob->dtx, 0, 0, 0, 0, "Adds the active object's wireframe over solid drawing");
|
||||
|
||||
uiDefButBitC(block, TOG, OB_DRAWTRANSP, REDRAWVIEW3D, "Transp", 120, 40, 90, 20, &ob->dtx, 0, 0, 0, 0, "Enables transparent materials for the active object (Mesh only)");
|
||||
uiDefButBitC(block, TOG, OB_DRAWXRAY, REDRAWVIEW3D, "X-ray", 210, 40, 90, 20, &ob->dtx, 0, 0, 0, 0, "Makes the active object draw in front of others");
|
||||
|
||||
}
|
||||
|
||||
void object_panel_hooks(Object *ob)
|
||||
|
||||
Reference in New Issue
Block a user