| 
    FS2_Open
    
   Open source remastering of the Freespace 2 engine 
   | 
 
#include "cmdline/cmdline.h"#include "debugconsole/console.h"#include "globalincs/systemvars.h"#include "graphics/2d.h"#include "graphics/gropengldraw.h"#include "graphics/gropengllight.h"#include "lighting/lighting.h"#include "math/vecmat.h"#include "model/modelrender.h"#include "render/3d.h"Go to the source code of this file.
Macros | |
| #define | MAX_LIGHT_LEVELS 16 | 
| #define | LM_BRIGHTEN 0 | 
| #define | LM_DARKEN 1 | 
| #define | MIN_LIGHT 0.03f | 
| #define | AMBIENT_LIGHT_DEFAULT 0.15f | 
| #define | REFLECTIVE_LIGHT_DEFAULT 0.75f | 
Functions | |
| DCF (light,"Changes lighting parameters") | |
| void | light_reset () | 
| void | light_set_ambient (float ambient_light) | 
| void | light_add_directional (const vec3d *dir, float intensity, float r, float g, float b, float spec_r, float spec_g, float spec_b, bool specular) | 
| void | light_add_point (const vec3d *pos, float r1, float r2, float intensity, float r, float g, float b, int light_ignore_objnum, float spec_r, float spec_g, float spec_b, bool specular) | 
| void | light_add_point_unique (const vec3d *pos, float r1, float r2, float intensity, float r, float g, float b, int affected_objnum, float spec_r, float spec_g, float spec_b, bool specular) | 
| void | light_add_tube (const vec3d *p0, const vec3d *p1, float r1, float r2, float intensity, float r, float g, float b, int affected_objnum, float spec_r, float spec_g, float spec_b, bool specular) | 
| int | light_filter_push (int objnum, const vec3d *pos, float rad) | 
| int | light_filter_push_box (const vec3d *min, const vec3d *max) | 
| void | light_filter_pop () | 
| void | light_rotate_all () | 
| int | light_get_global_count () | 
| int | light_get_global_dir (vec3d *pos, int n) | 
| void | light_set_shadow (int state) | 
| void | light_set_all_relevent () | 
| ubyte | light_apply (const vec3d *pos, const vec3d *norm, float static_light_level) | 
| void | light_apply_specular (ubyte *param_r, ubyte *param_g, ubyte *param_b, const vec3d *pos, const vec3d *norm, const vec3d *cam) | 
| void | light_apply_rgb (ubyte *param_r, ubyte *param_g, ubyte *param_b, const vec3d *pos, const vec3d *norm, float static_light_level) | 
| void | light_add_cone (const vec3d *pos, const vec3d *dir, float angle, float inner_angle, bool dual_cone, float r1, float r2, float intensity, float r, float g, float b, int light_ignore_objnum, float spec_r, float spec_g, float spec_b, bool specular) | 
| bool | light_compare_by_type (const light &a, const light &b) | 
Variables | |
| light | Lights [MAX_LIGHTS] | 
| int | Num_lights =0 | 
| int | Cmdline_nohtl | 
| SCP_vector< light * > | Static_light | 
| int | Lighting_flag = 1 | 
| vec3d | Object_position | 
| float | static_light_factor = 1.0f | 
| float | static_tube_factor = 1.0f | 
| float | static_point_factor = 1.0f | 
| double | specular_exponent_value = 16.0 | 
| #define AMBIENT_LIGHT_DEFAULT 0.15f | 
Definition at line 52 of file lighting.cpp.
| #define LM_BRIGHTEN 0 | 
Definition at line 40 of file lighting.cpp.
| #define LM_DARKEN 1 | 
Definition at line 41 of file lighting.cpp.
| #define MAX_LIGHT_LEVELS 16 | 
Definition at line 25 of file lighting.cpp.
| #define MIN_LIGHT 0.03f | 
Definition at line 43 of file lighting.cpp.
| #define REFLECTIVE_LIGHT_DEFAULT 0.75f | 
Definition at line 53 of file lighting.cpp.
| DCF | ( | light | , | 
| "Changes lighting parameters" | |||
| ) | 
Definition at line 67 of file lighting.cpp.
| void light_add_cone | ( | const vec3d * | pos, | 
| const vec3d * | dir, | ||
| float | angle, | ||
| float | inner_angle, | ||
| bool | dual_cone, | ||
| float | r1, | ||
| float | r2, | ||
| float | intensity, | ||
| float | r, | ||
| float | g, | ||
| float | b, | ||
| int | light_ignore_objnum, | ||
| float | spec_r, | ||
| float | spec_g, | ||
| float | spec_b, | ||
| bool | specular | ||
| ) | 
Definition at line 1050 of file lighting.cpp.
| void light_add_directional | ( | const vec3d * | dir, | 
| float | intensity, | ||
| float | r, | ||
| float | g, | ||
| float | b, | ||
| float | spec_r, | ||
| float | spec_g, | ||
| float | spec_b, | ||
| bool | specular | ||
| ) | 
Definition at line 209 of file lighting.cpp.
| void light_add_point | ( | const vec3d * | pos, | 
| float | r1, | ||
| float | r2, | ||
| float | intensity, | ||
| float | r, | ||
| float | g, | ||
| float | b, | ||
| int | light_ignore_objnum, | ||
| float | spec_r, | ||
| float | spec_g, | ||
| float | spec_b, | ||
| bool | specular | ||
| ) | 
Definition at line 253 of file lighting.cpp.
| void light_add_point_unique | ( | const vec3d * | pos, | 
| float | r1, | ||
| float | r2, | ||
| float | intensity, | ||
| float | r, | ||
| float | g, | ||
| float | b, | ||
| int | affected_objnum, | ||
| float | spec_r, | ||
| float | spec_g, | ||
| float | spec_b, | ||
| bool | specular | ||
| ) | 
Definition at line 300 of file lighting.cpp.
| void light_add_tube | ( | const vec3d * | p0, | 
| const vec3d * | p1, | ||
| float | r1, | ||
| float | r2, | ||
| float | intensity, | ||
| float | r, | ||
| float | g, | ||
| float | b, | ||
| int | affected_objnum, | ||
| float | spec_r, | ||
| float | spec_g, | ||
| float | spec_b, | ||
| bool | specular | ||
| ) | 
Definition at line 343 of file lighting.cpp.
Definition at line 666 of file lighting.cpp.
| void light_apply_rgb | ( | ubyte * | param_r, | 
| ubyte * | param_g, | ||
| ubyte * | param_b, | ||
| const vec3d * | pos, | ||
| const vec3d * | norm, | ||
| float | static_light_level | ||
| ) | 
Definition at line 899 of file lighting.cpp.
| void light_apply_specular | ( | ubyte * | param_r, | 
| ubyte * | param_g, | ||
| ubyte * | param_b, | ||
| const vec3d * | pos, | ||
| const vec3d * | norm, | ||
| const vec3d * | cam | ||
| ) | 
Definition at line 749 of file lighting.cpp.
Definition at line 1101 of file lighting.cpp.
| void light_filter_pop | ( | ) | 
Definition at line 574 of file lighting.cpp.
Makes a list of only the lights that will affect the sphere specified by 'pos' and 'rad' and 'objnum'
| objnum | Object number | 
| pos | World position | 
| rad | Radius | 
Definition at line 416 of file lighting.cpp.
Definition at line 526 of file lighting.cpp.
| int light_get_global_count | ( | ) | 
Return the # of global light sources
Definition at line 608 of file lighting.cpp.
Fills direction of global light source N in pos.
| pos | Position | 
| n | Light source | 
Returns 0 if there is no global light.
Definition at line 621 of file lighting.cpp.
| void light_reset | ( | ) | 
Definition at line 150 of file lighting.cpp.
| void light_rotate_all | ( | ) | 
Definition at line 585 of file lighting.cpp.
| void light_set_all_relevent | ( | ) | 
Definition at line 644 of file lighting.cpp.
Definition at line 205 of file lighting.cpp.
Definition at line 638 of file lighting.cpp.
| int Cmdline_nohtl | 
Definition at line 438 of file cmdline.cpp.
| int Lighting_flag = 1 | 
Definition at line 63 of file lighting.cpp.
| light Lights[MAX_LIGHTS] | 
Definition at line 28 of file lighting.cpp.
| int Num_lights =0 | 
Definition at line 29 of file lighting.cpp.
| vec3d Object_position | 
Definition at line 42 of file 3dsetup.cpp.
| double specular_exponent_value = 16.0 | 
Definition at line 747 of file lighting.cpp.
| SCP_vector<light*> Static_light | 
Definition at line 36 of file lighting.cpp.
| float static_light_factor = 1.0f | 
Definition at line 744 of file lighting.cpp.
| float static_point_factor = 1.0f | 
Definition at line 746 of file lighting.cpp.
| float static_tube_factor = 1.0f | 
Definition at line 745 of file lighting.cpp.