Blender V2.61 - r43446
Defines | Functions | Variables

pixelblending.c File Reference

#include <math.h>
#include <string.h>
#include "BLI_math.h"
#include "BLI_rand.h"
#include "render_types.h"
#include "renderpipeline.h"
#include "pixelblending.h"
#include "gammaCorrectionTables.h"

Go to the source code of this file.

Defines

#define RE_ALPHA_CLIPPING
#define RE_FULL_COLOR_FLOAT   0.9998f
#define RE_EMPTY_COLOR_FLOAT   0.0002f
#define MASKFILT(i, j)   val= lfilt[i][j]; if(val!=0.0f) {float *fp= fpoin[i][j]; fp[0]+= val*r; fp[1]+= val*g; fp[2]+= val*b; fp[3]+= val*al; }

Functions

void addAlphaOverFloat (float *dest, float *source)
void addAlphaUnderFloat (float *dest, float *source)
void addalphaAddfacFloat (float *dest, float *source, char addfac)
void add_filt_fmask (unsigned int mask, float *col, float *rowbuf, int row_w)
void mask_array (unsigned int mask, float filt[][3])
void add_filt_fmask_coord (float filt[][3], float *col, float *rowbuf, int row_w, int col_h, int x, int y)
void add_filt_fmask_pixsize (unsigned int mask, float *in, float *rowbuf, int row_w, int pixsize)
void addalphaAddFloat (float *dest, float *source)

Variables

struct Render R

Detailed Description

Definition in file pixelblending.c.


Define Documentation

#define MASKFILT (   i,
 
)    val= lfilt[i][j]; if(val!=0.0f) {float *fp= fpoin[i][j]; fp[0]+= val*r; fp[1]+= val*g; fp[2]+= val*b; fp[3]+= val*al; }

Referenced by add_filt_fmask_coord().

#define RE_ALPHA_CLIPPING

Definition at line 64 of file pixelblending.c.

#define RE_EMPTY_COLOR_FLOAT   0.0002f

Definition at line 74 of file pixelblending.c.

Referenced by addalphaAddFloat().

#define RE_FULL_COLOR_FLOAT   0.9998f

Definition at line 70 of file pixelblending.c.

Referenced by addalphaAddfacFloat().


Function Documentation

void add_filt_fmask ( unsigned int  mask,
float *  col,
float *  rowbuf,
int  row_w 
)

add 1 pixel to into filtered three lines (float vecs to float vec)

Definition at line 154 of file pixelblending.c.

References g, Render::r, R, and simple_enum_gen::val.

Referenced by add_filt_passes(), and zbuffer_transp_shade().

void add_filt_fmask_coord ( float  filt[][3],
float *  col,
float *  rowbuf,
int  row_w,
int  col_h,
int  x,
int  y 
)

Definition at line 249 of file pixelblending.c.

References g, MASKFILT, Render::r, and simple_enum_gen::val.

Referenced by do_merge_fullsample().

void add_filt_fmask_pixsize ( unsigned int  mask,
float *  in,
float *  rowbuf,
int  row_w,
int  pixsize 
)

Definition at line 326 of file pixelblending.c.

References i, R, and simple_enum_gen::val.

Referenced by add_filt_passes().

void addalphaAddfacFloat ( float *  dest,
float *  source,
char  addfac 
)

Same for floats

Definition at line 110 of file pixelblending.c.

References RE_FULL_COLOR_FLOAT.

Referenced by halo_pixelstruct(), halo_tile(), and renderhalo_post().

void addalphaAddFloat ( float *  dest,
float *  source 
)

dest = dest + source

Definition at line 373 of file pixelblending.c.

References RE_EMPTY_COLOR_FLOAT.

void addAlphaOverFloat ( float *  dest,
float *  source 
)

Alpha-over blending for floats.

Definition at line 79 of file pixelblending.c.

References mul().

Referenced by add_transp_passes(), edge_enhance_add(), zbuffer_transp_shade(), zbufshade_tile(), and zbufshadeDA_tile().

void addAlphaUnderFloat ( float *  dest,
float *  source 
)

Alpha-under blending for floats.

Definition at line 96 of file pixelblending.c.

References mul().

Referenced by addtosamp_shr(), sky_tile(), and zbuffer_transp_shade().

void mask_array ( unsigned int  mask,
float  filt[][3] 
)

Definition at line 212 of file pixelblending.c.

References R.

Referenced by do_merge_fullsample().


Variable Documentation

struct Render R

Definition at line 127 of file pipeline.c.