From 79a354172a84eabf4e0a2e91577bdc60e209f640 Mon Sep 17 00:00:00 2001 From: Brecht Van Lommel Date: Wed, 20 Feb 2008 14:17:53 +0000 Subject: Negative zmask rendering: now there is a setting to render everything behind the zmask instead of in front. Might need tweaks, and doesn't work with halo yet. --- source/blender/render/intern/include/render_types.h | 1 + source/blender/render/intern/include/rendercore.h | 2 +- source/blender/render/intern/include/zbuf.h | 1 + 3 files changed, 3 insertions(+), 1 deletion(-) (limited to 'source/blender/render/intern/include') diff --git a/source/blender/render/intern/include/render_types.h b/source/blender/render/intern/include/render_types.h index 9fc1e56a081..e1f454ade1d 100644 --- a/source/blender/render/intern/include/render_types.h +++ b/source/blender/render/intern/include/render_types.h @@ -85,6 +85,7 @@ typedef struct RenderPart int *recto; /* object table for objects */ int *rectp; /* polygon index table */ int *rectz; /* zbuffer */ + int *rectmask; /* negative zmask */ long *rectdaps; /* delta acum buffer for pixel structs */ int *rectbacko; /* object table for backside sss */ int *rectbackp; /* polygon index table for backside sss */ diff --git a/source/blender/render/intern/include/rendercore.h b/source/blender/render/intern/include/rendercore.h index 4ca644c6381..cf1eeae58ec 100644 --- a/source/blender/render/intern/include/rendercore.h +++ b/source/blender/render/intern/include/rendercore.h @@ -57,7 +57,7 @@ struct ListBase; typedef struct PixStr { struct PixStr *next; - int obi, facenr, z; + int obi, facenr, z, maskz; unsigned short mask; short shadfac; } PixStr; diff --git a/source/blender/render/intern/include/zbuf.h b/source/blender/render/intern/include/zbuf.h index 2a16bde829b..346ed653977 100644 --- a/source/blender/render/intern/include/zbuf.h +++ b/source/blender/render/intern/include/zbuf.h @@ -96,6 +96,7 @@ typedef struct ZSpan { int *rectz1; /* seconday z buffer for shadowbuffer (2nd closest z) */ int *rectp; /* polygon index buffer */ int *recto; /* object buffer */ + int *rectmask; /* negative zmask buffer */ APixstr *apixbuf, *curpstr; /* apixbuf for transparent */ APixstrand *curpstrand; /* same for strands */ struct ListBase *apsmbase; -- cgit v1.2.3