13 #ifndef __diguyViewLight_H
14 #define __diguyViewLight_H
19 #define CPLUSPLUS_ONLY
62 const char* get_name();
74 const char* get_type_name();
85 void set_direction(
float x,
float y,
float z);
97 void get_direction(
float* x,
float* y,
float* z);
108 void set_position(
float x,
float y,
float z);
120 void get_position(
float* x,
float* y,
float* z);
131 void set_ambient_color(
float r,
float g,
float b,
float a);
143 void get_ambient_color(
float* r,
float* g,
float* b,
float* a);
154 void set_diffuse_color(
float r,
float g,
float b,
float a);
166 void get_diffuse_color(
float* r,
float* g,
float* b,
float* a);
177 void set_specular_color(
float r,
float g,
float b,
float a);
189 void get_specular_color(
float* r,
float* g,
float* b,
float* a);
192 int get_casts_shadows();
195 int set_scene_objects_cast_shadows(
int value);
196 int get_scene_objects_cast_shadows();
200 int set_brightness_multiplier(
float multiplier);
201 float get_brightness_multiplier();
222 int load_settings(
const char* settings_name);
244 void apply(
int i = 0);
266 CALLBACK_ID_SETTINGS_CHANGED = 1
269 #ifdef CPLUSPLUS_ONLY
312 int add_callback(
int callback_id,
314 void* callback_params = 0,
315 void* callback_user_data = 0);
337 int remove_callback(
int callback_id,
360 int remove_callback_with_user_data(
int callback_id,
361 void* callback_user_data);
398 int add_callback_script(
int callback_id,
399 const char* callback_script,
400 const char* callback_script_type = NULL);
436 int remove_callback_script(
int callback_id,
437 const char* callback_script,
438 const char* callback_script_type = NULL);
462 void set_casts_shadows(
int casts_shadows);
466 void set_shadow_volume_size(
float volume);
467 float get_shadow_volume_size();
471 void set_shadow_offset_multiplier(
float multiplier);
472 float get_shadow_offset_multiplier();
475 void set_spotlight_angle(
float angle);
476 float get_spotlight_angle();
479 void set_texture_name(
const char* name);
483 void set_active(
int active);
489 int set_shadow_map_update_paused(
int pause);
490 int get_shadow_map_update_paused();
492 int set_shadow_map_update_frequency(
int frame_frequency);
493 int get_shadow_map_update_frequency();
496 void set_near_plane(
float near_plane);
497 float get_near_plane();
499 void set_far_plane(
float far_plane);
500 float get_far_plane();
506 #ifdef CPLUSPLUS_ONLY
508 bdiLight* get_scripted_object() {
return m_light;}
518 friend class bdiLight;