13 #ifndef __diguyViewLight_H
14 #define __diguyViewLight_H
19 #define CPLUSPLUS_ONLY
39 diguyLightRenderDesc() : m_radius(1.0f), m_spot_angle(0.0f), m_spot_exponent(1.0f), m_falloff_r(.1f), m_falloff_rsq(.1f)
51 float m_spot_exponent;
82 const char* get_name();
94 const char* get_type_name();
105 void set_direction(
float x,
float y,
float z);
117 void get_direction(
float* x,
float* y,
float* z);
128 void set_position(
float x,
float y,
float z);
140 void get_position(
float* x,
float* y,
float* z);
151 void set_ambient_color(
float r,
float g,
float b,
float a);
163 void get_ambient_color(
float* r,
float* g,
float* b,
float* a);
174 void set_diffuse_color(
float r,
float g,
float b,
float a);
186 void get_diffuse_color(
float* r,
float* g,
float* b,
float* a);
197 void set_specular_color(
float r,
float g,
float b,
float a);
209 void get_specular_color(
float* r,
float* g,
float* b,
float* a);
212 int get_casts_shadows();
215 int set_scene_objects_cast_shadows(
int value);
216 int get_scene_objects_cast_shadows();
220 int set_brightness_multiplier(
float multiplier);
221 float get_brightness_multiplier();
224 void set_spot_exponent(
float exponent);
225 float get_spot_exponent();
228 void set_falloff_const(
float falloff_const);
229 float get_falloff_const();
232 void set_falloff_rsq(
float falloff_rsq);
233 float get_falloff_rsq();
255 int load_settings(
const char* settings_name);
277 void apply(
int i = 0);
299 CALLBACK_ID_SETTINGS_CHANGED = 1
302 #ifdef CPLUSPLUS_ONLY
345 int add_callback(
int callback_id,
347 void* callback_params = 0,
348 void* callback_user_data = 0);
370 int remove_callback(
int callback_id,
393 int remove_callback_with_user_data(
int callback_id,
394 void* callback_user_data);
431 int add_callback_script(
int callback_id,
432 const char* callback_script,
433 const char* callback_script_type = NULL);
469 int remove_callback_script(
int callback_id,
470 const char* callback_script,
471 const char* callback_script_type = NULL);
495 void set_casts_shadows(
int casts_shadows);
499 void set_shadow_volume_size(
float volume);
500 float get_shadow_volume_size();
504 void set_shadow_offset_multiplier(
float multiplier);
505 float get_shadow_offset_multiplier();
508 void set_spotlight_angle(
float angle);
509 float get_spotlight_angle();
512 void bind_shadow_map(
int shadow_map_size);
513 void clear_shadow_map();
514 void unbind_shadow_map();
518 void set_active(
int active);
522 int set_shadow_map_update_paused(
int pause);
523 int get_shadow_map_update_paused();
525 int set_shadow_map_update_frequency(
int frame_frequency);
526 int get_shadow_map_update_frequency();
529 void set_near_plane(
float near_plane);
530 float get_near_plane();
532 void set_far_plane(
float far_plane);
533 float get_far_plane();
539 #ifdef CPLUSPLUS_ONLY
541 bdiLight* get_scripted_object() {
return m_light;}
551 friend class bdiLight;
Summary:
Definition: diguyViewLightSettings.h:45
Definition: diguyViewLight.h:55
This class is a simple structure for transmitting diguy lights down to the uniform buffer system this...
Definition: diguyViewLight.h:36
diguyCallbackReturn diguyViewLightCallback(diguyViewLight *light, int callback_id, void *callback_params, void *callback_user_data)
Definition: diguy_typedefs.h:172