00001 // Filename: config_dxgsg.h 00002 // Created by: drose (06Oct99) 00003 // 00004 //////////////////////////////////////////////////////////////////// 00005 // 00006 // PANDA 3D SOFTWARE 00007 // Copyright (c) 2001, Disney Enterprises, Inc. All rights reserved 00008 // 00009 // All use of this software is subject to the terms of the Panda 3d 00010 // Software license. You should have received a copy of this license 00011 // along with this source code; you will also find a current copy of 00012 // the license at http://www.panda3d.org/license.txt . 00013 // 00014 // To contact the maintainers of this program write to 00015 // panda3d@yahoogroups.com . 00016 // 00017 //////////////////////////////////////////////////////////////////// 00018 00019 #ifndef CONFIG_DXGSG8_H 00020 #define CONFIG_DXGSG8_H 00021 00022 #include "pandabase.h" 00023 #include "notifyCategoryProxy.h" 00024 #include "dxgsg8base.h" 00025 00026 NotifyCategoryDecl(dxgsg8, EXPCL_PANDADX, EXPTP_PANDADX); 00027 NotifyCategoryDecl(wdxdisplay8, EXPCL_PANDADX, EXPTP_PANDADX); 00028 00029 extern bool dx_full_screen; 00030 extern bool dx_sync_video; 00031 extern bool dx_cull_traversal; 00032 extern bool dx_show_fps_meter; 00033 extern bool dx_no_vertex_fog; 00034 extern bool dx_show_cursor_watermark; 00035 extern bool dx_full_screen_antialiasing; 00036 extern float dx_fps_meter_update_interval; 00037 extern bool dx_auto_normalize_lighting; 00038 extern bool dx_use_rangebased_fog; 00039 extern const bool link_tristrips; 00040 extern DWORD dx_multisample_antialiasing_level; 00041 extern bool dx_use_triangle_mipgen_filter; 00042 extern bool dx_use_dx_cursor; 00043 00044 00045 // debug flags we might want to use in full optimized build 00046 extern bool dx_ignore_mipmaps; 00047 extern bool dx_mipmap_everything; 00048 extern bool dx_show_transforms; 00049 extern bool dx_force_16bpptextures; 00050 extern bool dx_no_dithering; 00051 extern bool dx_force_anisotropic_filtering; 00052 extern bool dx_force_16bpp_zbuffer; 00053 extern bool dx_do_vidmemsize_check; 00054 extern bool dx_preserve_fpu_state; 00055 extern bool dx_pick_best_screenres; 00056 extern int dx_preferred_device_id; 00057 00058 extern string *pdx_vertexshader_filename; 00059 extern string *pdx_pixelshader_filename; 00060 extern string *pdx_globaltexture_filename; 00061 extern UINT dx_globaltexture_stagenum; 00062 00063 #ifndef NDEBUG 00064 extern int dx_force_backface_culling; 00065 #endif 00066 00067 #ifdef _DEBUG 00068 extern float dx_global_miplevel_bias; 00069 extern bool dx_debug_view_mipmaps; 00070 #endif 00071 00072 // Ways to implement decals. 00073 enum DXDecalType { 00074 GDT_mask, // GL 1.0 style, involving three steps and double-draw of polygon 00075 GDT_blend, // As above, but slower; use blending to disable colorbuffer writes 00076 GDT_offset // The fastest, using GL 1.1 style glPolygonOffset 00077 }; 00078 extern DXDecalType dx_decal_type; 00079 00080 extern EXPCL_PANDADX void init_libdxgsg8(); 00081 00082 #endif