Blender V2.61 - r43446
|
Go to the source code of this file.
Classes | |
struct | APixstr |
struct | APixstrand |
struct | APixstrMain |
struct | ZSpan |
Typedefs | |
typedef struct APixstr | APixstr |
typedef struct APixstrand | APixstrand |
typedef struct APixstrMain | APixstrMain |
typedef struct ZSpan | ZSpan |
Functions | |
void | fillrect (int *rect, int x, int y, int val) |
void | projectvert (const float v1[3], float winmat[][4], float adr[4]) |
void | projectverto (const float v1[3], float winmat[][4], float adr[4]) |
int | testclip (const float v[3]) |
void | zbuffer_shadow (struct Render *re, float winmat[][4], struct LampRen *lar, int *rectz, int size, float jitx, float jity) |
void | zbuffer_abuf_shadow (struct Render *re, struct LampRen *lar, float winmat[][4], struct APixstr *APixbuf, struct APixstrand *apixbuf, struct ListBase *apsmbase, int size, int samples, float(*jit)[2]) |
void | zbuffer_solid (struct RenderPart *pa, struct RenderLayer *rl, void(*fillfunc)(struct RenderPart *, struct ZSpan *, int, void *), void *data) |
unsigned short * | zbuffer_transp_shade (struct RenderPart *pa, struct RenderLayer *rl, float *pass, struct ListBase *psmlist) |
void | zbuffer_sss (RenderPart *pa, unsigned int lay, void *handle, void(*func)(void *, int, int, int, int, int)) |
int | zbuffer_strands_abuf (struct Render *re, struct RenderPart *pa, struct APixstrand *apixbuf, struct ListBase *apsmbase, unsigned int lay, int negzmask, float winmat[][4], int winx, int winy, int sample, float(*jit)[2], float clipcrop, int shadow, struct StrandShadeCache *cache) |
void | zbufclip4 (struct ZSpan *zspan, int obi, int zvlnr, float *f1, float *f2, float *f3, float *f4, int c1, int c2, int c3, int c4) |
void | zbuf_free_span (struct ZSpan *zspan) |
void | freepsA (struct ListBase *lb) |
void | zspan_scanconvert (struct ZSpan *zpan, void *handle, float *v1, float *v2, float *v3, void(*func)(void *, int, int, float, float)) |
void | zbufclip (struct ZSpan *zspan, int obi, int zvlnr, float *f1, float *f2, float *f3, int c1, int c2, int c3) |
void | zbuf_alloc_span (struct ZSpan *zspan, int rectx, int recty, float clipcrop) |
void | zbufclipwire (struct ZSpan *zspan, int obi, int zvlnr, int ec, float *ho1, float *ho2, float *ho3, float *ho4, int c1, int c2, int c3, int c4) |
void | zbuf_make_winmat (Render *re, float winmat[][4]) |
void | zbuf_render_project (float winmat[][4], const float co[3], float ho[4]) |
Definition in file zbuf.h.
typedef struct APixstrand APixstrand |
typedef struct APixstrMain APixstrMain |
void fillrect | ( | int * | rect, |
int | x, | ||
int | y, | ||
int | val | ||
) |
Definition at line 201 of file zbuf.c.
References len(), and simple_enum_gen::val.
Referenced by copyto_abufz(), zbuffer_shadow(), zbuffer_solid(), and zbuffer_sss().
void freepsA | ( | struct ListBase * | lb | ) |
Definition at line 278 of file zbuf.c.
References ListBase::first, MEM_freeN(), APixstrMain::next, and APixstrMain::ps.
Referenced by makedeepshadowbuf(), and zbuffer_transp_shade().
void projectvert | ( | const float | v1[3], |
float | winmat[][4], | ||
float | adr[4] | ||
) |
Converts a world coordinate into a homogenous coordinate in view coordinates.
Definition at line 1717 of file zbuf.c.
Referenced by calculate_speedvectors(), calculate_strandsurface_speedvectors(), copy_dbase_object_vectors(), do_strand_point_project(), isb_bsp_fillfaces(), load_fluidsimspeedvectors(), render_strand_segment(), strand_project_point(), strand_render(), strand_segment_recursive(), strand_test_clip(), zbuf_part_project(), zbuf_render_project(), and zbuf_shadow_project().
void projectverto | ( | const float | v1[3], |
float | winmat[][4], | ||
float | adr[4] | ||
) |
Definition at line 1699 of file zbuf.c.
Referenced by add_halo_flare(), database_fromscene_vectors(), find_next_pano_slice(), initstar(), RE_DataBase_ApplyWindow(), RE_Database_FromScene(), RE_inithalo(), RE_inithalo_particle(), RE_make_sticky(), render_envmap(), and zbuffer_abuf().
int testclip | ( | const float | v[3] | ) |
void zbuf_alloc_span | ( | struct ZSpan * | zspan, |
int | rectx, | ||
int | recty, | ||
float | clipcrop | ||
) |
Definition at line 89 of file zbuf.c.
References ZSpan::clipcrop, Render::clipcrop, MEM_mallocN(), Render::rectx, ZSpan::rectx, Render::recty, ZSpan::recty, ZSpan::span1, and ZSpan::span2.
Referenced by isb_bsp_fillfaces(), RE_zbuf_accumulate_vecblur(), shade_tface(), zbuffer_abuf(), zbuffer_shadow(), zbuffer_solid(), zbuffer_sss(), and zbuffer_strands_abuf().
void zbuf_free_span | ( | struct ZSpan * | zspan | ) |
Definition at line 102 of file zbuf.c.
References MEM_freeN(), NULL, ZSpan::span1, and ZSpan::span2.
Referenced by isb_bsp_fillfaces(), RE_bake_shade_all_selected(), RE_zbuf_accumulate_vecblur(), shade_tface(), zbuffer_abuf(), zbuffer_shadow(), zbuffer_solid(), zbuffer_sss(), and zbuffer_strands_abuf().
void zbuf_make_winmat | ( | Render * | re, |
float | winmat[][4] | ||
) |
Definition at line 1818 of file zbuf.c.
References copy_m4_m4(), MAT4_UNITY, RenderData::mode, mult_m4_m4m4(), Render::panoco, Render::panosi, Render::r, R_PANORAMA, and Render::winmat.
Referenced by shade_input_set_shade_texco(), zbuffer_abuf_render(), zbuffer_solid(), and zbuffer_sss().
void zbuf_render_project | ( | float | winmat[][4], |
const float | co[3], | ||
float | ho[4] | ||
) |
Definition at line 1810 of file zbuf.c.
References copy_v3_v3(), and projectvert().
Referenced by shade_input_set_shade_texco().
void zbufclip | ( | struct ZSpan * | zspan, |
int | obi, | ||
int | zvlnr, | ||
float * | f1, | ||
float * | f2, | ||
float * | f3, | ||
int | c1, | ||
int | c2, | ||
int | c3 | ||
) |
Definition at line 1836 of file zbuf.c.
References ZSpan::clipcrop, clippyra(), hoco_to_zco(), makevertpyra(), NULL, testclip(), and ZSpan::zbuffunc.
Referenced by isb_bsp_fillfaces(), zbufclip4(), zbuffer_abuf(), zbuffer_shadow(), zbuffer_solid(), and zbuffer_sss().
void zbufclip4 | ( | struct ZSpan * | zspan, |
int | obi, | ||
int | zvlnr, | ||
float * | f1, | ||
float * | f2, | ||
float * | f3, | ||
float * | f4, | ||
int | c1, | ||
int | c2, | ||
int | c3, | ||
int | c4 | ||
) |
Definition at line 1949 of file zbuf.c.
References hoco_to_zco(), zbufclip(), and ZSpan::zbuffunc.
Referenced by isb_bsp_fillfaces(), strand_render(), zbuffer_abuf(), zbuffer_shadow(), and zbuffer_solid().
void zbufclipwire | ( | struct ZSpan * | zspan, |
int | obi, | ||
int | zvlnr, | ||
int | ec, | ||
float * | ho1, | ||
float * | ho2, | ||
float * | ho3, | ||
float * | ho4, | ||
int | c1, | ||
int | c2, | ||
int | c3, | ||
int | c4 | ||
) |
Definition at line 905 of file zbuf.c.
References clipline(), copy_v4_v4(), hoco_to_zco(), ME_V1V2, ME_V2V3, ME_V3V1, ME_V3V4, ME_V4V1, and ZSpan::zbuflinefunc.
Referenced by isb_bsp_fillfaces(), zbuffer_abuf(), zbuffer_shadow(), and zbuffer_solid().
void zbuffer_abuf_shadow | ( | struct Render * | re, |
struct LampRen * | lar, | ||
float | winmat[][4], | ||
struct APixstr * | APixbuf, | ||
struct APixstrand * | apixbuf, | ||
struct ListBase * | apsmbase, | ||
int | size, | ||
int | samples, | ||
float(*) | jit[2] | ||
) |
Definition at line 3443 of file zbuf.c.
References RenderPart::disprect, jit, LA_LAYER, LampRen::lay, LampRen::mode, NULL, RenderPart::rectx, RenderPart::recty, size(), rcti::xmax, rcti::xmin, rcti::ymax, rcti::ymin, zbuffer_abuf(), and zbuffer_strands_abuf().
Referenced by makedeepshadowbuf().
void zbuffer_shadow | ( | struct Render * | re, |
float | winmat[][4], | ||
struct LampRen * | lar, | ||
int * | rectz, | ||
int | size, | ||
float | jitx, | ||
float | jity | ||
) |
Definition at line 2281 of file zbuf.c.
References StrandBuffer::adaptcos, StrandBuffer::bound, StrandBound::boundbox, ObjectRen::boundbox, StrandSegment::buffer, StrandRen::buffer, LampRen::buftype, clip_render_object(), VertRen::co, StrandVert::co, copy_m4_m4(), VlakRen::ec, Render::excludeob, fillrect(), ListBase::first, ObjectInstanceRen::flag, VlakRen::flag, i, VertRen::index, Render::instancetable, LA_LAYER, LA_LAYER_SHADOW, LA_SHADBUF_HALFWAY, LampRen::lay, ObjectInstanceRen::lay, StrandBuffer::lay, StrandBuffer::ma, MA_SHADBUF, MA_TYPE_WIRE, ObjectInstanceRen::mat, VlakRen::mat, Material::material_type, MEM_freeN(), MEM_mallocN(), LampRen::mode, Material::mode, mult_m4_m4m4(), ObjectInstanceRen::next, NULL, ObjectRen::ob, StrandSegment::obi, ObjectInstanceRen::obr, R_HIDDEN, R_STRAND, R_TRANSFORMED, RE_findOrAddStrand(), ZSpan::rectz, ZSpan::rectz1, render_strand_segment(), StrandSegment::sqadaptcos, StrandBound::start, StrandSegment::strand, ObjectRen::strandbuf, Render::tbh, Render::test_break, StrandBuffer::totbound, StrandRen::totvert, ObjectRen::totvert, ObjectRen::totvlak, StrandSegment::v, VlakRen::v1, VlakRen::v2, VlakRen::v3, VlakRen::v4, StrandRen::vert, VlakTableNode::vlak, ObjectRen::vlaknodes, zbuf_alloc_span(), zbuf_free_span(), zbuf_project_cache_clear(), ZBUF_PROJECT_CACHE_SIZE, zbuf_shadow_project(), zbufclip(), zbufclip4(), zbufclipwire(), zbuffillGL_onlyZ(), ZSpan::zbuffunc, zbufline_onlyZ(), ZSpan::zbuflinefunc, ZSpan::zmulx, ZSpan::zmuly, ZSpan::zofsx, and ZSpan::zofsy.
Referenced by makeflatshadowbuf().
void zbuffer_solid | ( | struct RenderPart * | pa, |
struct RenderLayer * | rl, | ||
void(*)(struct RenderPart *, struct ZSpan *, int, void *) | fillfunc, | ||
void * | data | ||
) |
Referenced by zbufshade_tile(), and zbufshadeDA_tile().
void zbuffer_sss | ( | RenderPart * | pa, |
unsigned int | lay, | ||
void * | handle, | ||
void(*)(void *, int, int, int, int, int) | func | ||
) |
Definition at line 2515 of file zbuf.c.
References ObjectRen::boundbox, bounds(), clip_render_object(), VertRen::co, copy_m4_m4(), RenderPart::disprect, fillrect(), ObjectInstanceRen::flag, i, VertRen::index, ObjectInstanceRen::lay, MA_ENV, MA_ONLYCAST, MA_TYPE_WIRE, ObjectInstanceRen::mat, VlakRen::mat, material_in_material(), Material::material_type, Material::mode, mult_m4_m4m4(), ObjectInstanceRen::next, NULL, ObjectInstanceRen::obr, R, R_TRANSFORMED, RE_QUAD_OFFS, RenderPart::rectbacko, RenderPart::rectbackp, RenderPart::rectbackz, RenderPart::recto, RenderPart::rectp, RenderPart::rectx, RenderPart::recty, RenderPart::rectz, ZSpan::sss_func, ZSpan::sss_handle, testclip(), ObjectRen::totvert, ObjectRen::totvlak, VlakRen::v1, VlakRen::v2, VlakRen::v3, VlakRen::v4, VlakTableNode::vlak, ObjectRen::vlaknodes, rcti::xmin, rcti::ymin, zbuf_alloc_span(), zbuf_free_span(), zbuf_make_winmat(), zbuf_part_project(), zbuf_project_cache_clear(), ZBUF_PROJECT_CACHE_SIZE, zbufclip(), zbuffer_part_bounds(), zbuffill_sss(), ZSpan::zbuffunc, ZSpan::zmulx, ZSpan::zmuly, ZSpan::zofsx, and ZSpan::zofsy.
Referenced by zbufshade_sss_tile().
int zbuffer_strands_abuf | ( | struct Render * | re, |
struct RenderPart * | pa, | ||
struct APixstrand * | apixbuf, | ||
struct ListBase * | apsmbase, | ||
unsigned int | lay, | ||
int | negzmask, | ||
float | winmat[][4], | ||
int | winx, | ||
int | winy, | ||
int | sample, | ||
float(*) | jit[2], | ||
float | clipcrop, | ||
int | shadow, | ||
struct StrandShadeCache * | cache | ||
) |
Referenced by zbuffer_abuf_render(), and zbuffer_abuf_shadow().
unsigned short* zbuffer_transp_shade | ( | struct RenderPart * | pa, |
struct RenderLayer * | rl, | ||
float * | pass, | ||
struct ListBase * | psmlist | ||
) |
Referenced by zbufshade_tile(), and zbufshadeDA_tile().
void zspan_scanconvert | ( | struct ZSpan * | zpan, |
void * | handle, | ||
float * | v1, | ||
float * | v2, | ||
float * | v3, | ||
void(*)(void *, int, int, float, float) | func | ||
) |
Definition at line 1503 of file zbuf.c.
References ZSpan::maxp2, ZSpan::maxy1, ZSpan::maxy2, ZSpan::minp2, ZSpan::miny1, ZSpan::miny2, NULL, Render::rectx, ZSpan::rectx, ZSpan::span1, ZSpan::span2, zbuf_add_to_span(), and zbuf_init_span().
Referenced by shade_tface().