|
Blender
V2.59
|
#include <math.h>#include <float.h>#include <stdlib.h>#include <limits.h>#include <string.h>#include "BLI_math.h"#include "BLI_blenlib.h"#include "BLI_jitter.h"#include "BLI_threads.h"#include "BLI_utildefines.h"#include "MEM_guardedalloc.h"#include "DNA_lamp_types.h"#include "DNA_mesh_types.h"#include "DNA_node_types.h"#include "DNA_meshdata_types.h"#include "DNA_material_types.h"#include "BKE_global.h"#include "BKE_material.h"#include "RE_render_ext.h"#include "gammaCorrectionTables.h"#include "pixelblending.h"#include "render_types.h"#include "renderpipeline.h"#include "renderdatabase.h"#include "rendercore.h"#include "shadbuf.h"#include "shading.h"#include "sss.h"#include "strand.h"#include "zbuf.h"Go to the source code of this file.
Classes | |
| struct | ZbufProjectCache |
| struct | DrawBufPixel |
| struct | ZTranspRow |
Defines | |
| #define | ZBUF_PROJECT_CACHE_SIZE 256 |
| #define | EXTEND_PIXEL(a) if(temprectp[a]) {z+= rectz[a]; tot++;} |
| #define | MAX_ZROW 2000 |
Typedefs | |
| typedef struct ZbufProjectCache | ZbufProjectCache |
| typedef struct DrawBufPixel | DrawBufPixel |
| typedef struct ZTranspRow | ZTranspRow |
Functions | |
| void | zbuf_alloc_span (ZSpan *zspan, int rectx, int recty, float clipcrop) |
| void | zbuf_free_span (ZSpan *zspan) |
| static void | zbuf_init_span (ZSpan *zspan) |
| static void | zbuf_add_to_span (ZSpan *zspan, float *v1, float *v2) |
| void | fillrect (int *rect, int x, int y, int val) |
| static short | cliptestf (float p, float q, float *u1, float *u2) |
| int | testclip (float *v) |
| static APixstr * | addpsmainA (ListBase *lb) |
| void | freepsA (ListBase *lb) |
| static APixstr * | addpsA (ZSpan *zspan) |
| static void | zbuffillAc4 (ZSpan *zspan, int obi, int zvlnr, float *v1, float *v2, float *v3, float *v4) |
| static void | zbuflineAc (ZSpan *zspan, int obi, int zvlnr, float *vec1, float *vec2) |
| static void | zbufline (ZSpan *zspan, int obi, int zvlnr, float *vec1, float *vec2) |
| static void | zbufline_onlyZ (ZSpan *zspan, int UNUSED(obi), int UNUSED(zvlnr), float *vec1, float *vec2) |
| static int | clipline (float *v1, float *v2) |
| void | hoco_to_zco (ZSpan *zspan, float *zco, float *hoco) |
| void | zbufclipwire (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 | zbufsinglewire (ZSpan *zspan, int obi, int zvlnr, float *ho1, float *ho2) |
| static void | zbuffillGLinv4 (ZSpan *zspan, int obi, int zvlnr, float *v1, float *v2, float *v3, float *v4) |
| static void | zbuffillGL4 (ZSpan *zspan, int obi, int zvlnr, float *v1, float *v2, float *v3, float *v4) |
| static void | zbuffillGL_onlyZ (ZSpan *zspan, int UNUSED(obi), int UNUSED(zvlnr), float *v1, float *v2, float *v3, float *v4) |
| void | zspan_scanconvert_strand (ZSpan *zspan, void *handle, float *v1, float *v2, float *v3, void(*func)(void *, int, int, float, float, float)) |
| void | zspan_scanconvert (ZSpan *zspan, void *handle, float *v1, float *v2, float *v3, void(*func)(void *, int, int, float, float)) |
| static void | clippyra (float *labda, float *v1, float *v2, int *b2, int *b3, int a, float clipcrop) |
| static void | makevertpyra (float *vez, float *labda, float **trias, float *v1, float *v2, int *b1, int *clve) |
| void | projectverto (float *v1, float winmat[][4], float *adr) |
| void | projectvert (float *v1, float winmat[][4], float *adr) |
| static void | zbuf_project_cache_clear (ZbufProjectCache *cache, int size) |
| static int | zbuf_shadow_project (ZbufProjectCache *cache, int index, float winmat[][4], float *co, float *ho) |
| static void | zbuffer_part_bounds (int winx, int winy, RenderPart *pa, float *bounds) |
| static int | zbuf_part_project (ZbufProjectCache *cache, int index, float winmat[][4], float *bounds, float *co, float *ho) |
| void | zbuf_render_project (float winmat[][4], float *co, float *ho) |
| void | zbuf_make_winmat (Render *re, float winmat[][4]) |
| void | zbufclip (ZSpan *zspan, int obi, int zvlnr, float *f1, float *f2, float *f3, int c1, int c2, int c3) |
| void | zbufclip4 (ZSpan *zspan, int obi, int zvlnr, float *f1, float *f2, float *f3, float *f4, int c1, int c2, int c3, int c4) |
| static void | zmask_rect (int *rectz, int *rectp, int xs, int ys, int neg) |
| void | zbuffer_solid (RenderPart *pa, RenderLayer *rl, void(*fillfunc)(RenderPart *, ZSpan *, int, void *), void *data) |
| void | zbuffer_shadow (Render *re, float winmat[][4], LampRen *lar, int *rectz, int size, float jitx, float jity) |
| static void | zbuffill_sss (ZSpan *zspan, int obi, int zvlnr, float *v1, float *v2, float *v3, float *v4) |
| void | zbuffer_sss (RenderPart *pa, unsigned int lay, void *handle, void(*func)(void *, int, int, int, int, int)) |
| static void | zbuf_fill_in_rgba (ZSpan *zspan, DrawBufPixel *col, float *v1, float *v2, float *v3, float *v4) |
| void | antialias_tagbuf (int xsize, int ysize, char *rectmove) |
| static void | quad_bezier_2d (float *result, float *v1, float *v2, float *ipodata) |
| static void | set_quad_bezier_ipo (float fac, float *data) |
| void | RE_zbuf_accumulate_vecblur (NodeBlurData *nbd, int xsize, int ysize, float *newrect, float *imgrect, float *vecbufrect, float *zbufrect) |
| static void | copyto_abufz (RenderPart *pa, int *arectz, int *rectmask, int sample) |
| static int | zbuffer_abuf (Render *re, RenderPart *pa, APixstr *APixbuf, ListBase *apsmbase, unsigned int lay, int negzmask, float winmat[][4], int winx, int winy, int samples, float(*jit)[2], float UNUSED(clipcrop), int shadow) |
| static int | zbuffer_abuf_render (RenderPart *pa, APixstr *APixbuf, APixstrand *APixbufstrand, ListBase *apsmbase, RenderLayer *rl, StrandShadeCache *sscache) |
| void | zbuffer_abuf_shadow (Render *re, LampRen *lar, float winmat[][4], APixstr *APixbuf, APixstrand *APixbufstrand, ListBase *apsmbase, int size, int samples, float(*jit)[2]) |
| void | add_transp_speed (RenderLayer *rl, int offset, float *speed, float alpha, intptr_t *rdrect) |
| static void | add_transp_obindex (RenderLayer *rl, int offset, Object *ob) |
| void | merge_transp_passes (RenderLayer *rl, ShadeResult *shr) |
| void | add_transp_passes (RenderLayer *rl, int offset, ShadeResult *shr, float alpha) |
| static int | vergzvlak (const void *a1, const void *a2) |
| static void | shade_strand_samples (StrandShadeCache *cache, ShadeSample *ssamp, int UNUSED(x), int UNUSED(y), ZTranspRow *row, int addpassflag) |
| static void | unref_strand_samples (StrandShadeCache *cache, ZTranspRow *row, int totface) |
| static void | shade_tra_samples_fill (ShadeSample *ssamp, int x, int y, int z, int obi, int facenr, int curmask) |
| static int | shade_tra_samples (ShadeSample *ssamp, StrandShadeCache *cache, int x, int y, ZTranspRow *row, int addpassflag) |
| static void | addvecmul (float *v1, float *v2, float fac) |
| static int | addtosamp_shr (ShadeResult *samp_shr, ShadeSample *ssamp, int addpassflag) |
| static void | reset_sky_speedvectors (RenderPart *pa, RenderLayer *rl, float *rectf) |
| unsigned short * | zbuffer_transp_shade (RenderPart *pa, RenderLayer *rl, float *pass, ListBase *UNUSED(psmlist)) |
Variables | |
| struct Render | R |
Definition in file zbuf.c.
| #define EXTEND_PIXEL | ( | a | ) | if(temprectp[a]) {z+= rectz[a]; tot++;} |
Definition at line 1967 of file zbuf.c.
Referenced by zmask_rect().
| #define MAX_ZROW 2000 |
Definition at line 3940 of file zbuf.c.
Referenced by zbuffer_transp_shade().
| #define ZBUF_PROJECT_CACHE_SIZE 256 |
Definition at line 1729 of file zbuf.c.
Referenced by zbuf_project_cache_clear(), zbuffer_abuf(), zbuffer_shadow(), zbuffer_solid(), and zbuffer_sss().
| typedef struct DrawBufPixel DrawBufPixel |
| typedef struct ZbufProjectCache ZbufProjectCache |
| typedef struct ZTranspRow ZTranspRow |
| static void add_transp_obindex | ( | RenderLayer * | rl, |
| int | offset, | ||
| Object * | ob | ||
| ) | [static] |
Definition at line 3495 of file zbuf.c.
References ListBase::first, Object::index, RenderPass::next, RenderLayer::passes, RenderPass::passtype, RenderPass::rect, SCE_PASS_INDEXMA, and SCE_PASS_INDEXOB.
Referenced by zbuffer_transp_shade().
| void add_transp_passes | ( | RenderLayer * | rl, |
| int | offset, | ||
| ShadeResult * | shr, | ||
| float | alpha | ||
| ) |
Definition at line 3612 of file zbuf.c.
References addAlphaOverFloat(), ShadeResult::ao, ShadeResult::col, ShadeResult::diff, ShadeResult::emit, ShadeResult::env, ListBase::first, ShadeResult::indirect, ShadeResult::mist, RenderPass::next, ShadeResult::nor, NULL, RenderLayer::passes, RenderPass::passtype, RenderPass::rect, ShadeResult::refl, ShadeResult::refr, SCE_PASS_AO, SCE_PASS_DIFFUSE, SCE_PASS_EMIT, SCE_PASS_ENVIRONMENT, SCE_PASS_INDIRECT, SCE_PASS_MIST, SCE_PASS_NORMAL, SCE_PASS_REFLECT, SCE_PASS_REFRACT, SCE_PASS_RGBA, SCE_PASS_SHADOW, SCE_PASS_SPEC, SCE_PASS_Z, ShadeResult::shad, ShadeResult::spec, and ShadeResult::z.
Referenced by zbuffer_transp_shade().
| void add_transp_speed | ( | RenderLayer * | rl, |
| int | offset, | ||
| float * | speed, | ||
| float | alpha, | ||
| intptr_t * | rdrect | ||
| ) |
Definition at line 3461 of file zbuf.c.
References ABS, ListBase::first, RenderPass::next, NULL, PASS_VECTOR_MAX, RenderLayer::passes, RenderPass::passtype, QUATCOPY, RenderPass::rect, and SCE_PASS_VECTOR.
Referenced by zbuffer_transp_shade().
Definition at line 291 of file zbuf.c.
References addpsmainA(), ZSpan::apsmbase, ZSpan::apsmcounter, and ZSpan::curpstr.
Referenced by zbuffillAc4(), and zbuflineAc().
Definition at line 268 of file zbuf.c.
References BLI_addtail(), MEM_callocN(), MEM_mallocN(), and APixstrMain::ps.
Referenced by addpsA().
| static int addtosamp_shr | ( | ShadeResult * | samp_shr, |
| ShadeSample * | ssamp, | ||
| int | addpassflag | ||
| ) | [static] |
Definition at line 3851 of file zbuf.c.
References addAlphaUnderFloat(), addvecmul(), ShadeResult::ao, ShadeResult::col, ShadeResult::combined, ShadeResult::diff, ShadeResult::emit, ShadeResult::env, ShadeResult::indirect, MIN2, ShadeResult::mist, ShadeResult::nor, QUATCOPY, R, ShadeResult::refl, ShadeResult::refr, SCE_PASS_AO, SCE_PASS_DIFFUSE, SCE_PASS_EMIT, SCE_PASS_ENVIRONMENT, SCE_PASS_INDIRECT, SCE_PASS_MIST, SCE_PASS_NORMAL, SCE_PASS_REFLECT, SCE_PASS_REFRACT, SCE_PASS_RGBA, SCE_PASS_SHADOW, SCE_PASS_SPEC, SCE_PASS_VECTOR, ShadeResult::shad, ShadeSample::shi, ShadeSample::shr, ShadeResult::spec, ShadeSample::tot, ShadeResult::winspeed, and ShadeResult::z.
Referenced by zbuffer_transp_shade().
| static void addvecmul | ( | float * | v1, |
| float * | v2, | ||
| float | fac | ||
| ) | [static] |
Definition at line 3844 of file zbuf.c.
Referenced by addtosamp_shr().
| void antialias_tagbuf | ( | int | xsize, |
| int | ysize, | ||
| char * | rectmove | ||
| ) |
Definition at line 2733 of file zbuf.c.
References next.
Referenced by do_idmask(), node_composit_exec_zcombine(), and RE_zbuf_accumulate_vecblur().
| static int clipline | ( | float * | v1, |
| float * | v2 | ||
| ) | [static] |
Definition at line 846 of file zbuf.c.
References cliptestf().
Referenced by zbufclipwire(), and zbufsinglewire().
| static void clippyra | ( | float * | labda, |
| float * | v1, | ||
| float * | v2, | ||
| int * | b2, | ||
| int * | b3, | ||
| int | a, | ||
| float | clipcrop | ||
| ) | [static] |
(clip pyramid) Sets labda: flag, and parametrize the clipping of vertices in viewspace coordinates. labda = -1 means no clipping, labda in [0, 1] means a clipping. Note: uses globals.
| v1 | start coordinate s |
| v2 | target coordinate t |
| b1 | |
| b2 | |
| b3 | |
| a | index for coordinate (x, y, or z) |
Definition at line 1601 of file zbuf.c.
References cliptestf().
Referenced by zbufclip().
| static short cliptestf | ( | float | p, |
| float | q, | ||
| float * | u1, | ||
| float * | u2 | ||
| ) | [static] |
Definition at line 216 of file zbuf.c.
Referenced by clipline(), and clippyra().
| static void copyto_abufz | ( | RenderPart * | pa, |
| int * | arectz, | ||
| int * | rectmask, | ||
| int | sample | ||
| ) | [static] |
Copy results from the solid face z buffering to the transparent buffer.
Definition at line 3183 of file zbuf.c.
References fillrect(), PixStr::mask, PixStr::maskz, PixStr::next, R, RenderPart::rectdaps, RenderPart::rectmask, RenderPart::rectx, RenderPart::recty, RenderPart::rectz, and PixStr::z.
Referenced by zbuffer_abuf().
| void fillrect | ( | int * | rect, |
| int | x, | ||
| int | y, | ||
| int | val | ||
| ) |
Definition at line 202 of file zbuf.c.
References simple_enum_gen::val.
Referenced by copyto_abufz(), zbuffer_shadow(), zbuffer_solid(), and zbuffer_sss().
| void freepsA | ( | ListBase * | lb | ) |
Definition at line 279 of file zbuf.c.
References ListBase::first, MEM_freeN(), APixstrMain::next, and APixstrMain::ps.
Referenced by makedeepshadowbuf(), and zbuffer_transp_shade().
| void hoco_to_zco | ( | ZSpan * | zspan, |
| float * | zco, | ||
| float * | hoco | ||
| ) |
Definition at line 896 of file zbuf.c.
References div, ZSpan::zmulx, ZSpan::zmuly, ZSpan::zofsx, and ZSpan::zofsy.
Referenced by do_strand_point_project(), zbufclip(), zbufclip4(), zbufclipwire(), and zbufsinglewire().
| static void makevertpyra | ( | float * | vez, |
| float * | labda, | ||
| float ** | trias, | ||
| float * | v1, | ||
| float * | v2, | ||
| int * | b1, | ||
| int * | clve | ||
| ) | [static] |
(make vertex pyramide clip) Checks labda and uses this to make decision about clipping the line segment from v1 to v2. labda is the factor by which the vector is cut. ( calculate s + l * ( t - s )). The result is appended to the vertex list of this face.
| v1 | start coordinate s |
| v2 | target coordinate t |
| b1 | |
| b2 | |
| clve | vertex vector. |
Definition at line 1658 of file zbuf.c.
Referenced by zbufclip().
| void merge_transp_passes | ( | RenderLayer * | rl, |
| ShadeResult * | shr | ||
| ) |
Definition at line 3510 of file zbuf.c.
References ABS, ShadeResult::ao, ShadeResult::col, ShadeResult::combined, ShadeResult::diff, ShadeResult::emit, ShadeResult::env, ListBase::first, ShadeResult::indirect, ShadeResult::mist, RenderPass::next, ShadeResult::nor, NULL, RenderLayer::passes, RenderPass::passtype, R, ShadeResult::refl, ShadeResult::refr, SCE_PASS_AO, SCE_PASS_DIFFUSE, SCE_PASS_EMIT, SCE_PASS_ENVIRONMENT, SCE_PASS_INDIRECT, SCE_PASS_MIST, SCE_PASS_NORMAL, SCE_PASS_REFLECT, SCE_PASS_REFRACT, SCE_PASS_RGBA, SCE_PASS_SHADOW, SCE_PASS_SPEC, SCE_PASS_VECTOR, SCE_PASS_Z, ShadeResult::shad, ShadeResult::spec, ShadeResult::winspeed, and ShadeResult::z.
Referenced by zbuffer_transp_shade().
| void projectvert | ( | float * | v1, |
| float | winmat[][4], | ||
| float * | adr | ||
| ) |
Converts a world coordinate into a homogenous coordinate in view coordinates.
Definition at line 1713 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 | ( | float * | v1, |
| float | winmat[][4], | ||
| float * | adr | ||
| ) |
Definition at line 1695 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().
| static void quad_bezier_2d | ( | float * | result, |
| float * | v1, | ||
| float * | v2, | ||
| float * | ipodata | ||
| ) | [static] |
Definition at line 2832 of file zbuf.c.
Referenced by RE_zbuf_accumulate_vecblur().
| void RE_zbuf_accumulate_vecblur | ( | NodeBlurData * | nbd, |
| int | xsize, | ||
| int | ysize, | ||
| float * | newrect, | ||
| float * | imgrect, | ||
| float * | vecbufrect, | ||
| float * | zbufrect | ||
| ) |
Definition at line 2859 of file zbuf.c.
References ABS, DrawBufPixel::alpha, antialias_tagbuf(), BLI_initjit(), DrawBufPixel::colpoin, NodeBlurData::curved, div, NodeBlurData::fac, jit, MAX2, NodeBlurData::maxspeed, MEM_freeN(), MEM_mapallocN(), NodeBlurData::minspeed, NULL, PASS_VECTOR_MAX, pow(), quad_bezier_2d(), ZSpan::rectp, ZSpan::rectz, NodeBlurData::samples, set_quad_bezier_ipo(), sqrt(), SWAP, zbuf_alloc_span(), zbuf_fill_in_rgba(), zbuf_free_span(), ZSpan::zmulx, ZSpan::zmuly, ZSpan::zofsx, and ZSpan::zofsy.
Referenced by node_composit_exec_vecblur().
| static void reset_sky_speedvectors | ( | RenderPart * | pa, |
| RenderLayer * | rl, | ||
| float * | rectf | ||
| ) | [static] |
Definition at line 3919 of file zbuf.c.
References NULL, PASS_VECTOR_MAX, RE_RenderLayerGetPass(), RenderPart::rectx, RenderPart::recty, and SCE_PASS_VECTOR.
Referenced by zbuffer_transp_shade().
| static void set_quad_bezier_ipo | ( | float | fac, |
| float * | data | ||
| ) | [static] |
Definition at line 2850 of file zbuf.c.
Referenced by RE_zbuf_accumulate_vecblur().
| static void shade_strand_samples | ( | StrandShadeCache * | cache, |
| ShadeSample * | ssamp, | ||
| int | UNUSEDx, | ||
| int | UNUSEDy, | ||
| ZTranspRow * | row, | ||
| int | addpassflag | ||
| ) | [static] |
Definition at line 3695 of file zbuf.c.
References StrandSegment::buffer, StrandRen::buffer, ShadeInput::mask, ZTranspRow::mask, StrandSegment::obi, ZTranspRow::obi, ObjectInstanceRen::obr, ZTranspRow::p, R, RE_findOrAddStrand(), ZTranspRow::segment, ShadeSample::shi, StrandSegment::strand, strand_shade_segment(), ShadeSample::tot, StrandRen::totvert, ZTranspRow::u, StrandSegment::v, ZTranspRow::v, and StrandRen::vert.
Referenced by shade_tra_samples().
| static int shade_tra_samples | ( | ShadeSample * | ssamp, |
| StrandShadeCache * | cache, | ||
| int | x, | ||
| int | y, | ||
| ZTranspRow * | row, | ||
| int | addpassflag | ||
| ) | [static] |
Definition at line 3805 of file zbuf.c.
References ShadeResult::combined, ZTranspRow::mask, ZTranspRow::obi, ZTranspRow::p, ShadeInput::passflag, R, R_LAMPHALO, renderspothalo(), SCE_LAY_HALO, SCE_PASS_INDEXMA, SCE_PASS_INDEXOB, SCE_PASS_Z, ZTranspRow::segment, shade_input_do_shade(), shade_input_set_shade_texco(), shade_samples_do_AO(), shade_strand_samples(), shade_tra_samples_fill(), ShadeSample::shi, ShadeSample::shr, ShadeSample::tot, ShadeResult::z, and ZTranspRow::z.
Referenced by zbuffer_transp_shade().
| static void shade_tra_samples_fill | ( | ShadeSample * | ssamp, |
| int | x, | ||
| int | y, | ||
| int | z, | ||
| int | obi, | ||
| int | facenr, | ||
| int | curmask | ||
| ) | [static] |
Definition at line 3745 of file zbuf.c.
References VlakRen::flag, ShadeInput::mask, R, R_FULL_OSA, ShadeInput::sample, ShadeInput::samplenr, shade_input_copy_triangle(), shade_input_set_normals(), shade_input_set_triangle(), shade_input_set_uv(), shade_input_set_vertex_normals(), shade_input_set_viewco(), ShadeSample::shi, ShadeInput::thread, ShadeSample::tot, and ShadeInput::vlr.
Referenced by shade_tra_samples().
| int testclip | ( | float * | v | ) |
Definition at line 242 of file zbuf.c.
References fabs().
Referenced by isb_bsp_fillfaces(), panotestclip(), render_strand_segment(), strand_segment_recursive(), strand_test_clip(), zbuf_shadow_project(), zbufclip(), zbuffer_abuf(), zbuffer_solid(), zbuffer_sss(), and zbufsinglewire().
| static void unref_strand_samples | ( | StrandShadeCache * | cache, |
| ZTranspRow * | row, | ||
| int | totface | ||
| ) | [static] |
Definition at line 3720 of file zbuf.c.
References ZTranspRow::obi, ObjectInstanceRen::obr, p, R, RE_findOrAddStrand(), ZTranspRow::segment, strand_shade_unref(), and StrandRen::vert.
Referenced by zbuffer_transp_shade().
| static int vergzvlak | ( | const void * | a1, |
| const void * | a2 | ||
| ) | [static] |
Definition at line 3686 of file zbuf.c.
References ZTranspRow::z.
Referenced by zbuffer_transp_shade().
| static void zbuf_add_to_span | ( | ZSpan * | zspan, |
| float * | v1, | ||
| float * | v2 | ||
| ) | [static] |
Definition at line 120 of file zbuf.c.
References ZSpan::maxp1, ZSpan::maxp2, ZSpan::maxy1, ZSpan::maxy2, MIN2, ZSpan::minp1, ZSpan::minp2, ZSpan::miny1, ZSpan::miny2, NULL, ZSpan::recty, ZSpan::span1, and ZSpan::span2.
Referenced by zbuf_fill_in_rgba(), zbuffill_sss(), zbuffillAc4(), zbuffillGL4(), zbuffillGL_onlyZ(), zbuffillGLinv4(), zspan_scanconvert(), and zspan_scanconvert_strand().
| void zbuf_alloc_span | ( | ZSpan * | zspan, |
| int | rectx, | ||
| int | recty, | ||
| float | clipcrop | ||
| ) |
Definition at line 90 of file zbuf.c.
References ZSpan::clipcrop, Render::clipcrop, MEM_mallocN(), ZSpan::rectx, Render::rectx, ZSpan::recty, Render::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().
| static void zbuf_fill_in_rgba | ( | ZSpan * | zspan, |
| DrawBufPixel * | col, | ||
| float * | v1, | ||
| float * | v2, | ||
| float * | v3, | ||
| float * | v4 | ||
| ) | [static] |
Definition at line 2634 of file zbuf.c.
References ZSpan::maxp2, ZSpan::maxy1, ZSpan::maxy2, ZSpan::minp2, ZSpan::miny1, ZSpan::miny2, NULL, ZSpan::rectp, ZSpan::rectx, ZSpan::rectz, ZSpan::span1, ZSpan::span2, zbuf_add_to_span(), and zbuf_init_span().
Referenced by RE_zbuf_accumulate_vecblur().
| void zbuf_free_span | ( | ZSpan * | zspan | ) |
Definition at line 103 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().
| static void zbuf_init_span | ( | ZSpan * | zspan | ) | [static] |
Definition at line 113 of file zbuf.c.
References ZSpan::maxp1, ZSpan::maxp2, ZSpan::maxy1, ZSpan::maxy2, ZSpan::minp1, ZSpan::minp2, ZSpan::miny1, ZSpan::miny2, NULL, and ZSpan::recty.
Referenced by zbuf_fill_in_rgba(), zbuffill_sss(), zbuffillAc4(), zbuffillGL4(), zbuffillGL_onlyZ(), zbuffillGLinv4(), zspan_scanconvert(), and zspan_scanconvert_strand().
| void zbuf_make_winmat | ( | Render * | re, |
| float | winmat[][4] | ||
| ) |
Definition at line 1811 of file zbuf.c.
References copy_m4_m4(), MAT4_UNITY, RenderData::mode, mul_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().
| static int zbuf_part_project | ( | ZbufProjectCache * | cache, |
| int | index, | ||
| float | winmat[][4], | ||
| float * | bounds, | ||
| float * | co, | ||
| float * | ho | ||
| ) | [static] |
Definition at line 1776 of file zbuf.c.
References ZbufProjectCache::clip, ZbufProjectCache::index, projectvert(), QUATCOPY, and VECCOPY.
Referenced by zbuffer_abuf(), zbuffer_solid(), and zbuffer_sss().
| static void zbuf_project_cache_clear | ( | ZbufProjectCache * | cache, |
| int | size | ||
| ) | [static] |
Definition at line 1736 of file zbuf.c.
References i, size(), and ZBUF_PROJECT_CACHE_SIZE.
Referenced by zbuffer_abuf(), zbuffer_shadow(), zbuffer_solid(), and zbuffer_sss().
| void zbuf_render_project | ( | float | winmat[][4], |
| float * | co, | ||
| float * | ho | ||
| ) |
Definition at line 1803 of file zbuf.c.
References projectvert(), and VECCOPY.
Referenced by shade_input_set_shade_texco().
| static int zbuf_shadow_project | ( | ZbufProjectCache * | cache, |
| int | index, | ||
| float | winmat[][4], | ||
| float * | co, | ||
| float * | ho | ||
| ) | [static] |
Definition at line 1748 of file zbuf.c.
References ZbufProjectCache::clip, ZbufProjectCache::index, projectvert(), QUATCOPY, and testclip().
Referenced by zbuffer_shadow().
| void zbufclip | ( | ZSpan * | zspan, |
| int | obi, | ||
| int | zvlnr, | ||
| float * | f1, | ||
| float * | f2, | ||
| float * | f3, | ||
| int | c1, | ||
| int | c2, | ||
| int | c3 | ||
| ) |
Definition at line 1829 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 | ( | 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 1942 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 | ( | 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 906 of file zbuf.c.
References clipline(), hoco_to_zco(), ME_V1V2, ME_V2V3, ME_V3V1, ME_V3V4, ME_V4V1, QUATCOPY, and ZSpan::zbuflinefunc.
Referenced by isb_bsp_fillfaces(), zbuffer_abuf(), zbuffer_shadow(), and zbuffer_solid().
| static int zbuffer_abuf | ( | Render * | re, |
| RenderPart * | pa, | ||
| APixstr * | APixbuf, | ||
| ListBase * | apsmbase, | ||
| unsigned int | lay, | ||
| int | negzmask, | ||
| float | winmat[][4], | ||
| int | winx, | ||
| int | winy, | ||
| int | samples, | ||
| float(*) | jit[2], | ||
| float | UNUSEDclipcrop, | ||
| int | shadow | ||
| ) | [static] |
Do accumulation z buffering.
Definition at line 3239 of file zbuf.c.
References ZSpan::apixbuf, ZSpan::apsmbase, ZSpan::arectz, ObjectRen::boundbox, bounds(), clip_render_object(), Render::clipcrop, VertRen::co, copy_m4_m4(), copyto_abufz(), RenderPart::disprect, VlakRen::ec, fabs(), ListBase::first, ObjectInstanceRen::flag, VlakRen::flag, i, VertRen::index, Render::instancetable, jit, ObjectInstanceRen::lay, MA_ONLYCAST, MA_SHADBUF, MA_TRANSP, MA_TYPE_WIRE, MA_ZTRANSP, ZSpan::mask, ObjectInstanceRen::mat, VlakRen::mat, Material::material_type, MEM_freeN(), MEM_mallocN(), Material::mode, mul(), mul_m4_m4m4(), ObjectInstanceRen::next, NULL, ObjectInstanceRen::obr, ZSpan::polygon_offset, projectverto(), R_HIDDEN, R_STRAND, R_TRANSFORMED, RE_QUAD_OFFS, ZSpan::rectmask, RenderPart::rectx, RenderPart::recty, Render::tbh, Render::test_break, testclip(), ObjectRen::totvert, ObjectRen::totvlak, VlakRen::v1, VlakRen::v2, VlakRen::v3, VlakRen::v4, VECCOPY, VlakTableNode::vlak, ObjectRen::vlaknodes, rcti::xmin, rcti::ymin, zbuf_alloc_span(), zbuf_free_span(), zbuf_part_project(), zbuf_project_cache_clear(), ZBUF_PROJECT_CACHE_SIZE, zbufclip(), zbufclip4(), zbufclipwire(), zbuffer_part_bounds(), zbuffillAc4(), ZSpan::zbuffunc, zbuflineAc(), ZSpan::zbuflinefunc, ZSpan::zmulx, ZSpan::zmuly, Material::zoffs, ZSpan::zofsx, and ZSpan::zofsy.
Referenced by zbuffer_abuf_render(), and zbuffer_abuf_shadow().
| static int zbuffer_abuf_render | ( | RenderPart * | pa, |
| APixstr * | APixbuf, | ||
| APixstrand * | APixbufstrand, | ||
| ListBase * | apsmbase, | ||
| RenderLayer * | rl, | ||
| StrandShadeCache * | sscache | ||
| ) | [static] |
Definition at line 3412 of file zbuf.c.
References RenderLayer::lay, RenderLayer::layflag, NULL, R, SCE_LAY_NEG_ZMASK, SCE_LAY_STRAND, SCE_LAY_ZMASK, SCE_LAY_ZTRA, zbuf_make_winmat(), zbuffer_abuf(), and zbuffer_strands_abuf().
Referenced by zbuffer_transp_shade().
| void zbuffer_abuf_shadow | ( | Render * | re, |
| LampRen * | lar, | ||
| float | winmat[][4], | ||
| APixstr * | APixbuf, | ||
| APixstrand * | APixbufstrand, | ||
| ListBase * | apsmbase, | ||
| int | size, | ||
| int | samples, | ||
| float(*) | jit[2] | ||
| ) |
Definition at line 3437 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().
| static void zbuffer_part_bounds | ( | int | winx, |
| int | winy, | ||
| RenderPart * | pa, | ||
| float * | bounds | ||
| ) | [static] |
Definition at line 1768 of file zbuf.c.
References RenderPart::disprect, rcti::xmax, rcti::xmin, rcti::ymax, and rcti::ymin.
Referenced by zbuffer_abuf(), zbuffer_solid(), and zbuffer_sss().
| void zbuffer_shadow | ( | Render * | re, |
| float | winmat[][4], | ||
| LampRen * | lar, | ||
| int * | rectz, | ||
| int | size, | ||
| float | jitx, | ||
| float | jity | ||
| ) |
Definition at line 2274 of file zbuf.c.
References StrandBuffer::adaptcos, StrandBuffer::bound, ObjectRen::boundbox, StrandBound::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, ObjectInstanceRen::lay, StrandBuffer::lay, LampRen::lay, StrandBuffer::ma, MA_SHADBUF, MA_TYPE_WIRE, ObjectInstanceRen::mat, VlakRen::mat, Material::material_type, MEM_freeN(), MEM_mallocN(), Material::mode, LampRen::mode, mul_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, ObjectRen::totvert, StrandRen::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 | ( | RenderPart * | pa, |
| RenderLayer * | rl, | ||
| void(*)(RenderPart *, ZSpan *, int, void *) | fillfunc, | ||
| void * | data | ||
| ) |
Definition at line 2040 of file zbuf.c.
References ObjectRen::boundbox, bounds(), clip_render_object(), VertRen::co, copy_m4_m4(), RenderPart::disprect, VlakRen::ec, fillrect(), ObjectInstanceRen::flag, VlakRen::flag, i, VertRen::index, RenderLayer::lay, ObjectInstanceRen::lay, RenderLayer::lay_zmask, RenderLayer::layflag, MA_ENV, MA_ONLYCAST, MA_TRANSP, MA_TYPE_WIRE, MA_ZINV, MA_ZTRANSP, ObjectInstanceRen::mat, VlakRen::mat, Material::material_type, MEM_freeN(), MEM_mallocN(), MIN2, Material::mode, mul_m4_m4m4(), ObjectInstanceRen::next, NULL, ObjectInstanceRen::obr, R, R_HIDDEN, R_STRAND, R_TRANSFORMED, RE_QUAD_OFFS, RenderPart::rectmask, ZSpan::rectmask, RenderPart::recto, ZSpan::recto, RenderPart::rectp, ZSpan::rectp, RenderPart::rectx, RenderPart::recty, RenderPart::rectz, ZSpan::rectz, RenderPart::sample, SCE_LAY_ALL_Z, SCE_LAY_NEG_ZMASK, SCE_LAY_ZMASK, 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(), zbufclip4(), zbufclipwire(), zbuffer_part_bounds(), zbuffillGL4(), zbuffillGLinv4(), ZSpan::zbuffunc, zbufline(), ZSpan::zbuflinefunc, zmask_rect(), ZSpan::zmulx, ZSpan::zmuly, ZSpan::zofsx, and ZSpan::zofsy.
| void zbuffer_sss | ( | RenderPart * | pa, |
| unsigned int | lay, | ||
| void * | handle, | ||
| void(*)(void *, int, int, int, int, int) | func | ||
| ) |
Definition at line 2508 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, mul_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().
| unsigned short* zbuffer_transp_shade | ( | RenderPart * | pa, |
| RenderLayer * | rl, | ||
| float * | pass, | ||
| ListBase * | UNUSEDpsmlist | ||
| ) |
Definition at line 3944 of file zbuf.c.
References RenderLayer::acolrect, add_filt_fmask(), add_transp_obindex(), add_transp_passes(), add_transp_speed(), addAlphaOverFloat(), addAlphaUnderFloat(), addtosamp_shr(), Global::afbreek, ShadeResult::combined, RenderPart::crop, RenderPart::disprect, ListBase::first, freepsA(), RenderPart::fullresult, G, get_sample_layers(), ISB_create(), ISB_free(), RenderLayer::layflag, APixstr::mask, APixstrand::mask, ZTranspRow::mask, MAX_ZROW, MEM_callocN(), MEM_freeN(), merge_transp_passes(), APixstr::next, APixstrand::next, NULL, ObjectRen::ob, APixstr::obi, APixstrand::obi, ZTranspRow::obi, offs, APixstr::p, APixstrand::p, ZTranspRow::p, PASS_VECTOR_MAX, RenderLayer::passflag, R, R_SHADOW, RE_MAX_OSA, RenderPart::rectdaps, RenderLayer::rectf, RenderResult::rectx, RenderPart::rectx, RenderPart::recty, RenderResult::renlay, RenderResult::renrect, reset_sky_speedvectors(), RenderPart::result, ShadeSample::rlpp, SCE_LAY_SOLID, SCE_LAY_STRAND, SCE_PASS_COMBINED, SCE_PASS_INDEXMA, SCE_PASS_INDEXOB, SCE_PASS_VECTOR, APixstrand::seg, ZTranspRow::segment, shade_sample_initialize(), shade_tra_samples(), ShadeSample::shr, strand_shade_cache_create(), strand_shade_cache_free(), SWAP, APixstrand::u, ZTranspRow::u, unref_strand_samples(), APixstrand::v, ZTranspRow::v, vergzvlak(), ShadeResult::winspeed, rcti::xmin, rcti::ymax, rcti::ymin, ShadeResult::z, APixstr::z, APixstrand::z, ZTranspRow::z, and zbuffer_abuf_render().
| static void zbuffill_sss | ( | ZSpan * | zspan, |
| int | obi, | ||
| int | zvlnr, | ||
| float * | v1, | ||
| float * | v2, | ||
| float * | v3, | ||
| float * | v4 | ||
| ) | [static] |
Definition at line 2435 of file zbuf.c.
References ZSpan::maxp2, ZSpan::maxy1, ZSpan::maxy2, ZSpan::minp2, ZSpan::miny1, ZSpan::miny2, NULL, ZSpan::rectx, ZSpan::span1, ZSpan::span2, ZSpan::sss_func, ZSpan::sss_handle, zbuf_add_to_span(), and zbuf_init_span().
Referenced by zbuffer_sss().
| static void zbuffillAc4 | ( | ZSpan * | zspan, |
| int | obi, | ||
| int | zvlnr, | ||
| float * | v1, | ||
| float * | v2, | ||
| float * | v3, | ||
| float * | v4 | ||
| ) | [static] |
Definition at line 305 of file zbuf.c.
References addpsA(), ZSpan::apixbuf, ZSpan::arectz, CLAMPIS, APixstr::mask, ZSpan::mask, ZSpan::maxp2, ZSpan::maxy1, ZSpan::maxy2, ZSpan::minp2, ZSpan::miny1, ZSpan::miny2, APixstr::next, NULL, APixstr::obi, APixstr::p, ZSpan::polygon_offset, ZSpan::rectmask, ZSpan::rectx, Render::rectx, ZSpan::span1, ZSpan::span2, APixstr::z, zbuf_add_to_span(), and zbuf_init_span().
Referenced by zbuffer_abuf().
| static void zbuffillGL4 | ( | ZSpan * | zspan, |
| int | obi, | ||
| int | zvlnr, | ||
| float * | v1, | ||
| float * | v2, | ||
| float * | v3, | ||
| float * | v4 | ||
| ) | [static] |
Definition at line 1160 of file zbuf.c.
References CLAMPIS, ZSpan::maxp2, ZSpan::maxy1, ZSpan::maxy2, ZSpan::minp2, ZSpan::miny1, ZSpan::miny2, NULL, ZSpan::rectmask, ZSpan::recto, ZSpan::rectp, ZSpan::rectx, Render::rectx, ZSpan::rectz, ZSpan::span1, ZSpan::span2, zbuf_add_to_span(), and zbuf_init_span().
Referenced by zbuffer_solid().
| static void zbuffillGL_onlyZ | ( | ZSpan * | zspan, |
| int | UNUSEDobi, | ||
| int | UNUSEDzvlnr, | ||
| float * | v1, | ||
| float * | v2, | ||
| float * | v3, | ||
| float * | v4 | ||
| ) | [static] |
Fill the z buffer. The face buffer is not operated on!
This is one of the z buffer fill functions called in zbufclip() and zbufwireclip().
| v1 | [4 floats, world coordinates] first vertex |
| v2 | [4 floats, world coordinates] second vertex |
| v3 | [4 floats, world coordinates] third vertex |
Definition at line 1290 of file zbuf.c.
References CLAMPIS, ZSpan::maxp2, ZSpan::maxy1, ZSpan::maxy2, ZSpan::minp2, ZSpan::miny1, ZSpan::miny2, NULL, ZSpan::rectx, Render::rectx, ZSpan::rectz, ZSpan::rectz1, ZSpan::span1, ZSpan::span2, zbuf_add_to_span(), and zbuf_init_span().
Referenced by zbuffer_shadow().
| static void zbuffillGLinv4 | ( | ZSpan * | zspan, |
| int | obi, | ||
| int | zvlnr, | ||
| float * | v1, | ||
| float * | v2, | ||
| float * | v3, | ||
| float * | v4 | ||
| ) | [static] |
Fill the z buffer, but invert z order, and add the face index to the corresponing face buffer.
This is one of the z buffer fill functions called in zbufclip() and zbufwireclip().
| v1 | [4 floats, world coordinates] first vertex |
| v2 | [4 floats, world coordinates] second vertex |
| v3 | [4 floats, world coordinates] third vertex |
Definition at line 1040 of file zbuf.c.
References CLAMPIS, ZSpan::maxp2, ZSpan::maxy1, ZSpan::maxy2, ZSpan::minp2, ZSpan::miny1, ZSpan::miny2, NULL, ZSpan::rectmask, ZSpan::recto, ZSpan::rectp, ZSpan::rectx, Render::rectx, ZSpan::rectz, ZSpan::span1, ZSpan::span2, zbuf_add_to_span(), and zbuf_init_span().
Referenced by zbuffer_solid().
| static void zbufline | ( | ZSpan * | zspan, |
| int | obi, | ||
| int | zvlnr, | ||
| float * | vec1, | ||
| float * | vec2 | ||
| ) | [static] |
Definition at line 588 of file zbuf.c.
References fabs(), ZSpan::rectmask, ZSpan::recto, ZSpan::rectp, ZSpan::rectx, Render::rectx, ZSpan::recty, Render::recty, ZSpan::rectz, and VECCOPY.
Referenced by zbuffer_solid().
| static void zbufline_onlyZ | ( | ZSpan * | zspan, |
| int | UNUSEDobi, | ||
| int | UNUSEDzvlnr, | ||
| float * | vec1, | ||
| float * | vec2 | ||
| ) | [static] |
Definition at line 718 of file zbuf.c.
References fabs(), NULL, ZSpan::rectx, Render::rectx, ZSpan::recty, Render::recty, ZSpan::rectz, ZSpan::rectz1, and VECCOPY.
Referenced by zbuffer_shadow().
| static void zbuflineAc | ( | ZSpan * | zspan, |
| int | obi, | ||
| int | zvlnr, | ||
| float * | vec1, | ||
| float * | vec2 | ||
| ) | [static] |
Definition at line 431 of file zbuf.c.
References addpsA(), ZSpan::apixbuf, ZSpan::arectz, fabs(), APixstr::mask, ZSpan::mask, APixstr::next, APixstr::obi, APixstr::p, ZSpan::polygon_offset, ZSpan::rectmask, ZSpan::rectx, Render::rectx, ZSpan::recty, Render::recty, VECCOPY, and APixstr::z.
Referenced by zbuffer_abuf().
| void zbufsinglewire | ( | ZSpan * | zspan, |
| int | obi, | ||
| int | zvlnr, | ||
| float * | ho1, | ||
| float * | ho2 | ||
| ) |
Definition at line 1001 of file zbuf.c.
References clipline(), hoco_to_zco(), QUATCOPY, testclip(), and ZSpan::zbuflinefunc.
Referenced by strand_render().
| static void zmask_rect | ( | int * | rectz, |
| int * | rectp, | ||
| int | xs, | ||
| int | ys, | ||
| int | neg | ||
| ) | [static] |
Definition at line 1970 of file zbuf.c.
References EXTEND_PIXEL, MEM_dupallocN(), and MEM_freeN().
Referenced by zbuffer_solid().
| void zspan_scanconvert | ( | ZSpan * | zspan, |
| void * | handle, | ||
| float * | v1, | ||
| float * | v2, | ||
| float * | v3, | ||
| void(*)(void *, int, int, float, float) | func | ||
| ) |
Definition at line 1499 of file zbuf.c.
References ZSpan::maxp2, ZSpan::maxy1, ZSpan::maxy2, ZSpan::minp2, ZSpan::miny1, ZSpan::miny2, NULL, ZSpan::rectx, Render::rectx, ZSpan::span1, ZSpan::span2, zbuf_add_to_span(), and zbuf_init_span().
Referenced by shade_tface().
| void zspan_scanconvert_strand | ( | ZSpan * | zspan, |
| void * | handle, | ||
| float * | v1, | ||
| float * | v2, | ||
| float * | v3, | ||
| void(*)(void *, int, int, float, float, float) | func | ||
| ) |
Definition at line 1399 of file zbuf.c.
References ZSpan::maxp2, ZSpan::maxy1, ZSpan::maxy2, ZSpan::minp2, ZSpan::miny1, ZSpan::miny2, NULL, ZSpan::rectx, Render::rectx, ZSpan::span1, ZSpan::span2, zbuf_add_to_span(), and zbuf_init_span().
Referenced by do_scanconvert_strand().
Definition at line 127 of file pipeline.c.