14 #ifndef __diguyGraphicsShape_H
15 #define __diguyGraphicsShape_H
20 #define CPLUSPLUS_ONLY
81 const char* get_name();
135 const char* get_shape_set_name();
148 const char* get_shape_set_shape_name();
163 const char* get_recommended_attachment_link_name();
177 #ifdef CPLUSPLUS_ONLY
192 float* get_lod_ranges();
207 int get_graphics_lod();
210 float get_graphics_lod_fraction();
213 bool get_lod_fades_out(
int lod);
229 const char* get_shape_set_filename_for_lod(
int lod);
245 int get_num_meshes(
int lod);
296 const char* get_switch_var_name();
312 int get_switch_value();
325 int get_is_hidden()
const;
328 int set_is_hidden(
int hidden);
332 const char * get_class_type()
const;
336 const char * get_object_type()
const;
339 const char * get_material_type()
const;
342 int get_is_pbr_ready()
const;
365 #ifdef CPLUSPLUS_ONLY
390 void* get_diguy_graphics_file_part(
int lod);
410 int get_graphics_state_switch_index();
422 int get_num_switched_graphics_states();
436 int set_state_switch_index(
int index);
454 int get_unique_color(
unsigned char* r,
unsigned char* g,
unsigned char* b);
467 int get_contains_skinned_file();
492 int set_material_parameter_4f(
const char* parameter_name,
493 float x,
float y,
float z,
float w,
494 float blend_time = 0.0);
502 int get_material_parameter_4f(
const char* parameter_name,
503 float* x,
float* y,
float* z,
float* w);
518 unsigned char * get_variation_texture();
521 int get_variation_texture_size();
524 static int get_shared_variation_texture_size();
527 int get_num_variations();
530 const char * get_variation_name(
int variation_index);
533 int set_variation_index(
int variation_index);
536 int get_has_custom_variation();
539 int get_num_variation_components();
542 const char * get_variation_component_name(
int index);
545 int get_variation_component_row(
const char * name);
549 int set_variation_component_value(
int index,
float color_shift_r,
float color_shift_g,
float color_shift_b);
553 int get_variation_texture_row();
556 void set_variation_texture_data(
unsigned char * texture_data);
558 #ifdef CPLUSPLUS_ONLY
576 int get_shader_matrix_data(
int* num_matrixes,
const float** matrix_data);
589 int get_are_shader_matrices_transposed();
604 #ifdef CPLUSPLUS_ONLY
651 virtual void build();
678 virtual void unbuild();
711 virtual void update();
783 virtual void draw(
int lod);
824 virtual void set_graphics_lod_ranges(
float* ranges);
852 virtual void set_graphics_lod(
int lod);
869 virtual void update_variation_texture(
int num_pixels,
unsigned char * pixel_data);
877 virtual void update_name_texture();
885 int get_decal_index()
const;
889 void set_decal_index(
int index);
892 const char* get_decal_text();
909 int get_bind_color_array(
int* num_colors,
const float** color_data);
917 virtual void instancing_state_changed(
int val);
921 #ifdef CPLUSPLUS_ONLY
926 int get_link_to_matrix_table(
int* num_matrices,
const float** lookup_data);
929 int get_bone_index_from_link_index(
int link_index);
934 int get_has_offset_matrix()
const;
937 int get_offset_matrix_4x4_ptr(
float* matrix,
int transpose = 0)
const;
947 int get_local_transformation_matrix_4x4_ptr(
float* matrix,
int transpose = 0)
const;
950 int get_bounding_box(
float * bbox_min_x,
float * bbox_min_y,
float * bbox_min_z,
951 float * bbox_max_x,
float * bbox_max_y,
float * bbox_max_z);
961 #ifdef CPLUSPLUS_ONLY
963 bdiShape* get_scripted_object() {
return m_scripted_object;}
984 bdiShape* m_scripted_object;
986 friend class bdiShape;
987 friend class bdiGraphicsFactory;
A class that represents a shared material/textures combination.
Definition: diguyGraphicsState.h:45
Definition: diguyGraphicsFile.h:35
A class that represents a shared mesh object.
Definition: diguyGraphicsMesh.h:92
The class that represents a DI-Guy Entity in the world.
Definition: diguyCharacter.h:80
A class that represents the unique per-character non-shared joint of a character. A diguyCharacter is...
Definition: diguyGraphicsLink.h:47
A class that represents the unique per-character non-shared mesh object. DI-Guy encapsulates its text...
Definition: diguyGraphicsShape.h:51