4
* These functions determine what actual colour a pixel will have.
6
* $Id: pixelshading.h,v 1.9 2005/04/18 15:30:49 ton Exp $
8
* ***** BEGIN GPL/BL DUAL LICENSE BLOCK *****
2
* $Id: pixelshading.h,v 1.10 2006/01/28 18:33:16 hos Exp $
4
* ***** BEGIN GPL LICENSE BLOCK *****
10
6
* This program is free software; you can redistribute it and/or
11
7
* modify it under the terms of the GNU General Public License
12
8
* as published by the Free Software Foundation; either version 2
13
* of the License, or (at your option) any later version. The Blender
14
* Foundation also sells licenses for use in proprietary software under
15
* the Blender License. See http://www.blender.org/BL/ for information
9
* of the License, or (at your option) any later version.
18
11
* This program is distributed in the hope that it will be useful,
19
12
* but WITHOUT ANY WARRANTY; without even the implied warranty of
27
20
* The Original Code is Copyright (C) 2001-2002 by NaN Holding BV.
28
21
* All rights reserved.
30
* The Original Code is: all of this file.
32
* Contributor(s): none yet.
34
* ***** END GPL/BL DUAL LICENSE BLOCK *****
23
* Contributor(s): 2004-2006, Blender Foundation, full recode
25
* ***** END GPL LICENSE BLOCK *****
30
* These functions determine what actual colour a pixel will have.
37
34
#ifndef PIXELSHADING_H
38
35
#define PIXELSHADING_H
41
#include "vanillaRenderPipe_types.h"
44
38
* Render the pixel at (x,y) for object ap. Apply the jitter mask.
45
39
* Output is given in float collector[4]. The type vector:
51
45
* mask is pixel coverage in bits
52
46
* @return pointer to the object
54
void *renderPixel(RE_COLBUFTYPE *collector, float x, float y, int *t, int mask);
57
void setSkyBlendingMode(enum RE_SkyAlphaBlendingType mode);
59
48
void shadeHaloFloat(HaloRen *har,
60
49
float *col, int zz,
61
50
float dist, float xn,
62
51
float yn, short flarec);
65
* Get the sky blending mode.
67
enum RE_SkyAlphaBlendingType getSkyBlendingMode(void);
69
54
* Render the sky at pixel (x, y).
71
void renderSkyPixelFloat(RE_COLBUFTYPE *collector, float x, float y);
73
/* used by shadeSkyPixel: */
74
void shadeSkyPixelFloat(float *colf, float *view, float *dxyview);
75
void renderSpotHaloPixel(float x, float y, float *target);
76
void shadeSkyPixel(RE_COLBUFTYPE *collector, float fx, float fy);
77
void fillBackgroundImage(RE_COLBUFTYPE *collector, float x, float y);
78
void fillBackgroundImageChar(char *col, float x, float y);
56
void renderSkyPixelFloat(float *collector, float x, float y, float *rco);
57
void shadeSkyPixel(float *collector, float fx, float fy, float *rco);
58
void shadeSkyPixelFloat(float *colf, float *rco, float *view, float *dxyview);
80
60
/* ------------------------------------------------------------------------- */