Page MenuHome

duplitransparency.patch

duplitransparency.patch

Index: source/blender/editors/space_view3d/drawobject.c
===================================================================
--- source/blender/editors/space_view3d/drawobject.c (revision 28685)
+++ source/blender/editors/space_view3d/drawobject.c (working copy)
@@ -218,9 +218,6 @@
static int check_material_alpha(Base *base, Mesh *me, int glsl)
{
- if(base->flag & OB_FROMDUPLI)
- return 0;
-
if(G.f & G_PICKSEL)
return 0;
@@ -2781,7 +2778,20 @@
}
/* GPU_begin_object_materials checked if this is needed */
- if(do_alpha_pass) add_view3d_after(v3d, base, V3D_TRANSP, flag);
+ if(do_alpha_pass)
+ {
+ if (!(base->flag & OB_FROMDUPLI)) {
+ add_view3d_after(v3d, base, V3D_TRANSP, flag);
+ }
+ else {
+ /* afterdraw doesn't support dupli objects, do alpha pass immediately */
+ glDepthMask(0);
+ v3d->transp = TRUE;
+ draw_mesh_object(scene, ar, v3d, rv3d, base, dt, flag);
+ v3d->transp = FALSE;
+ glDepthMask(1);
+ }
+ }
return retval;
}

File Metadata

Mime Type
text/x-diff
Storage Engine
local-disk
Storage Format
Raw Data
Storage Handle
cd/a4/e2ef14dc8f0644a8ca55cd4b7221

Event Timeline