14 #ifndef __diguyGraphicsShape_H
15 #define __diguyGraphicsShape_H
20 #define CPLUSPLUS_ONLY
84 const char* get_name();
138 const char* get_shape_set_name();
151 const char* get_shape_set_shape_name();
166 const char* get_recommended_attachment_link_name();
180 #ifdef CPLUSPLUS_ONLY
195 float* get_lod_ranges();
210 int get_graphics_lod();
226 const char* get_shape_set_filename_for_lod(
int lod);
242 int get_num_meshes(
int lod);
291 const char* get_switch_var_name();
307 int get_switch_value();
323 int set_is_hidden(
int hidden);
346 #ifdef CPLUSPLUS_ONLY
371 void* get_diguy_graphics_file_part(
int lod);
391 int get_graphics_state_switch_index();
403 int get_num_switched_graphics_states();
432 int get_unique_color(
unsigned char* r,
447 int get_contains_skinned_file();
470 int set_material_parameter_4f(
const char* parameter_name,
471 float x,
float y,
float z,
float w,
472 float blend_time = 0.0);
480 int get_material_parameter_4f(
const char* parameter_name,
481 float* x,
float* y,
float* z,
float* w);
492 unsigned char * get_variation_texture();
495 int get_variation_texture_size();
498 int get_num_variations();
501 const char * get_variation_name(
int variation_index);
504 int set_variation_index(
int variation_index);
507 int get_has_custom_variation();
510 int get_num_variation_components();
513 const char * get_variation_component_name(
int index);
516 int get_variation_component_index(
const char * name);
520 int set_variation_component_value(
int index,
float color_shift_r,
float color_shift_g,
float color_shift_b);
523 int set_state_switch_index(
int index);
526 #ifdef CPLUSPLUS_ONLY
544 int get_shader_matrix_data(
int* num_matrixes,
const float** matrix_data);
557 int get_are_shader_matrices_transposed();
572 #ifdef CPLUSPLUS_ONLY
619 virtual void build();
646 virtual void unbuild();
679 virtual void update();
730 virtual void instancing_state_changed(
int val);
752 virtual void draw(
int lod);
793 virtual void set_graphics_lod_ranges(
float* ranges);
821 virtual void set_graphics_lod(
int lod);
838 virtual void update_variation_texture(
int num_pixels,
unsigned char * pixel_data);
855 int get_bind_color_array(
int* num_colors,
const float** color_data);
859 #ifdef CPLUSPLUS_ONLY
864 int get_link_to_matrix_table(
int* num_matrices,
const float** lookup_data);
866 int get_bone_index_from_link_index(
int link_index);
871 int get_has_offset_matrix();
873 int get_offset_matrix_4x4_ptr(
float* matrix,
int transpose = 0);
889 int get_has_offset_translation();
891 int get_offset_translation(
float* tx,
float* ty,
float* tz);
893 int get_has_offset_rotation();
895 int get_offset_rotation(
float* rz,
float* rx,
float* ry);
897 int get_has_offset_scale();
899 int get_offset_scale(
float* sx,
float* sy,
float* sz);
908 #ifdef CPLUSPLUS_ONLY
910 bdiShape* get_scripted_object() {
return m_scripted_object;}
931 bdiShape* m_scripted_object;
933 friend class bdiShape;
934 friend class bdiGraphicsFactory;
A class that represents a shared material/textures combination.
Definition: diguyGraphicsState.h:37
Definition: diguyGraphicsFile.h:35
A class that represents a shared mesh object.
Definition: diguyGraphicsMesh.h:36
The class that represents a DI-Guy Entity in the world.
Definition: diguyCharacter.h:78
A class that represents the unique per-character non-shared joint of a character. A diguyCharacter is...
Definition: diguyGraphicsLink.h:49
A class that represents the unique per-character non-shared mesh object. DI-Guy encapsulates its text...
Definition: diguyGraphicsShape.h:53