Tachyon (current)  Current Main Branch
shade.h
Go to the documentation of this file.
1 /*
2  * shade.h - This file contains declarations and definitions for the shader.
3  *
4  * (C) Copyright 1994-2022 John E. Stone
5  * SPDX-License-Identifier: BSD-3-Clause
6  *
7  * $Id: shade.h,v 1.20 2022/02/18 17:55:28 johns Exp $
8  *
9  */
10 
11 #ifndef SHADE_H
12 #define SHADE_H
13 
14 color lowest_shader(ray *);
15 color low_shader(ray *);
16 color medium_shader(ray *);
17 color full_shader(ray *);
18 color shade_reflection(ray *, const shadedata *, flt);
19 color shade_transmission(ray *, const shadedata *, flt);
20 
21 
22 color shade_ambient_occlusion(ray * incident, const shadedata * shadevars);
23 flt shade_phong(const ray * incident, const shadedata * shadevars, flt specpower);
24 flt shade_nullphong(const ray * incident, const shadedata * shadevars, flt specpower);
25 flt shade_blinn(const ray * incident, const shadedata * shadevars, flt specpower);
26 flt shade_blinn_fast(const ray * incident, const shadedata * shadevars, flt specpower);
27 
28 
29 color fog_color(const ray * incident, color col, flt t);
30 color fog_color_linear(struct fogdata_t *, color col, flt z);
31 color fog_color_exp(struct fogdata_t *, color col, flt z);
32 color fog_color_exp2(struct fogdata_t *, color col, flt z);
33 
34 #endif
color lowest_shader(ray *)
Definition: shade.c:32
flt shade_nullphong(const ray *incident, const shadedata *shadevars, flt specpower)
Definition: shade.c:574
color low_shader(ray *)
Definition: shade.c:65
color shade_ambient_occlusion(ray *incident, const shadedata *shadevars)
Definition: shade.c:410
color fog_color_exp2(struct fogdata_t *, color col, flt z)
OpenGL-like exponential-squared fog.
Definition: shade.c:735
color shade_transmission(ray *, const shadedata *, flt)
Definition: shade.c:533
double flt
generic floating point number, using double
Definition: tachyon.h:47
flt shade_phong(const ray *incident, const shadedata *shadevars, flt specpower)
Definition: shade.c:646
color shade_reflection(ray *, const shadedata *, flt)
Definition: shade.c:489
color fog_color_exp(struct fogdata_t *, color col, flt z)
OpenGL-like exponential fog.
Definition: shade.c:715
color full_shader(ray *)
Definition: shade.c:233
color fog_color_linear(struct fogdata_t *, color col, flt z)
OpenGL-like linear fog.
Definition: shade.c:696
flt shade_blinn_fast(const ray *incident, const shadedata *shadevars, flt specpower)
Definition: shade.c:616
flt shade_blinn(const ray *incident, const shadedata *shadevars, flt specpower)
Definition: shade.c:583
color fog_color(const ray *incident, color col, flt t)
Compute the fog color, given the active fogging function and fog parameters.
Definition: shade.c:676
color medium_shader(ray *)
Definition: shade.c:93