Panda3D
|
00001 // Filename: config_gobj.h 00002 // Created by: drose (01Oct99) 00003 // 00004 //////////////////////////////////////////////////////////////////// 00005 // 00006 // PANDA 3D SOFTWARE 00007 // Copyright (c) Carnegie Mellon University. All rights reserved. 00008 // 00009 // All use of this software is subject to the terms of the revised BSD 00010 // license. You should have received a copy of this license along 00011 // with this source code in a file named "LICENSE." 00012 // 00013 //////////////////////////////////////////////////////////////////// 00014 00015 #ifndef CONFIG_GOBJ_H 00016 #define CONFIG_GOBJ_H 00017 00018 #include "pandabase.h" 00019 #include "notifyCategoryProxy.h" 00020 #include "configVariableBool.h" 00021 #include "configVariableInt.h" 00022 #include "configVariableEnum.h" 00023 #include "configVariableDouble.h" 00024 #include "configVariableFilename.h" 00025 #include "configVariableString.h" 00026 #include "autoTextureScale.h" 00027 00028 NotifyCategoryDecl(gobj, EXPCL_PANDA_GOBJ, EXPTP_PANDA_GOBJ); 00029 00030 BEGIN_PUBLISH 00031 enum ShaderUtilization { 00032 SUT_none, 00033 SUT_basic, 00034 SUT_advanced, 00035 SUT_unspecified, 00036 }; 00037 END_PUBLISH 00038 00039 EXPCL_PANDA_GOBJ ostream &operator << (ostream &out, ShaderUtilization sut); 00040 EXPCL_PANDA_GOBJ istream &operator >> (istream &in, ShaderUtilization &sut); 00041 00042 // Configure variables for gobj package. 00043 extern EXPCL_PANDA_GOBJ ConfigVariableInt max_texture_dimension; 00044 extern EXPCL_PANDA_GOBJ ConfigVariableDouble texture_scale; 00045 extern EXPCL_PANDA_GOBJ ConfigVariableInt texture_scale_limit; 00046 extern EXPCL_PANDA_GOBJ ConfigVariableList exclude_texture_scale; 00047 00048 00049 extern EXPCL_PANDA_GOBJ ConfigVariableBool keep_texture_ram; 00050 extern EXPCL_PANDA_GOBJ ConfigVariableBool compressed_textures; 00051 extern EXPCL_PANDA_GOBJ ConfigVariableBool driver_compress_textures; 00052 extern EXPCL_PANDA_GOBJ ConfigVariableBool driver_generate_mipmaps; 00053 extern EXPCL_PANDA_GOBJ ConfigVariableBool vertex_buffers; 00054 extern EXPCL_PANDA_GOBJ ConfigVariableBool vertex_arrays; 00055 extern EXPCL_PANDA_GOBJ ConfigVariableBool display_lists; 00056 extern EXPCL_PANDA_GOBJ ConfigVariableBool hardware_animated_vertices; 00057 extern EXPCL_PANDA_GOBJ ConfigVariableBool hardware_point_sprites; 00058 extern EXPCL_PANDA_GOBJ ConfigVariableBool hardware_points; 00059 extern EXPCL_PANDA_GOBJ ConfigVariableBool singular_points; 00060 extern EXPCL_PANDA_GOBJ ConfigVariableBool matrix_palette; 00061 extern EXPCL_PANDA_GOBJ ConfigVariableBool display_list_animation; 00062 extern EXPCL_PANDA_GOBJ ConfigVariableBool connect_triangle_strips; 00063 extern EXPCL_PANDA_GOBJ ConfigVariableBool preserve_triangle_strips; 00064 extern EXPCL_PANDA_GOBJ ConfigVariableBool dump_generated_shaders; 00065 extern EXPCL_PANDA_GOBJ ConfigVariableBool enforce_attrib_lock; 00066 extern EXPCL_PANDA_GOBJ ConfigVariableBool vertices_float64; 00067 extern EXPCL_PANDA_GOBJ ConfigVariableInt vertex_column_alignment; 00068 extern EXPCL_PANDA_GOBJ ConfigVariableBool vertex_animation_align_16; 00069 00070 extern EXPCL_PANDA_GOBJ ConfigVariableEnum<AutoTextureScale> textures_power_2; 00071 extern EXPCL_PANDA_GOBJ ConfigVariableEnum<AutoTextureScale> textures_square; 00072 extern EXPCL_PANDA_GOBJ ConfigVariableBool textures_auto_power_2; 00073 extern EXPCL_PANDA_GOBJ ConfigVariableBool textures_header_only; 00074 extern EXPCL_PANDA_GOBJ ConfigVariableInt simple_image_size; 00075 extern EXPCL_PANDA_GOBJ ConfigVariableDouble simple_image_threshold; 00076 00077 extern EXPCL_PANDA_GOBJ ConfigVariableEnum<ShaderUtilization> shader_utilization; 00078 extern EXPCL_PANDA_GOBJ ConfigVariableBool shader_auto_utilization; 00079 00080 extern EXPCL_PANDA_GOBJ ConfigVariableInt geom_cache_size; 00081 extern EXPCL_PANDA_GOBJ ConfigVariableInt geom_cache_min_frames; 00082 extern EXPCL_PANDA_GOBJ ConfigVariableInt released_vbuffer_cache_size; 00083 extern EXPCL_PANDA_GOBJ ConfigVariableInt released_ibuffer_cache_size; 00084 00085 extern EXPCL_PANDA_GOBJ ConfigVariableDouble default_near; 00086 extern EXPCL_PANDA_GOBJ ConfigVariableDouble default_far; 00087 extern EXPCL_PANDA_GOBJ ConfigVariableDouble default_fov; 00088 extern EXPCL_PANDA_GOBJ ConfigVariableDouble default_iod; 00089 extern EXPCL_PANDA_GOBJ ConfigVariableDouble default_converge; 00090 extern EXPCL_PANDA_GOBJ ConfigVariableDouble default_keystone; 00091 00092 extern EXPCL_PANDA_GOBJ ConfigVariableFilename vertex_save_file_directory; 00093 extern EXPCL_PANDA_GOBJ ConfigVariableString vertex_save_file_prefix; 00094 extern EXPCL_PANDA_GOBJ ConfigVariableInt vertex_data_small_size; 00095 extern EXPCL_PANDA_GOBJ ConfigVariableInt vertex_data_page_threads; 00096 extern EXPCL_PANDA_GOBJ ConfigVariableInt graphics_memory_limit; 00097 extern EXPCL_PANDA_GOBJ ConfigVariableDouble adaptive_lru_weight; 00098 extern EXPCL_PANDA_GOBJ ConfigVariableInt adaptive_lru_max_updates_per_frame; 00099 extern EXPCL_PANDA_GOBJ ConfigVariableDouble async_load_delay; 00100 extern EXPCL_PANDA_GOBJ ConfigVariableInt lens_geom_segments; 00101 00102 #endif 00103 00104