qboolean arb_framebuffer_object;
qboolean arb_multitexture;
qboolean arb_occlusion_query;
+ qboolean arb_query_buffer_object;
qboolean arb_shadow;
qboolean arb_texture_compression;
qboolean arb_texture_cube_map;
qboolean ext_texture_edge_clamp;
qboolean ext_texture_filter_anisotropic;
qboolean ext_texture_srgb;
+ qboolean arb_texture_float;
+ qboolean arb_half_float_pixel;
+ qboolean arb_half_float_vertex;
qboolean arb_multisample;
}
viddef_support_t;
extern cvar_t vid_touchscreen_supportshowkeyboard;
extern cvar_t vid_stick_mouse;
extern cvar_t vid_resizable;
+extern cvar_t vid_desktopfullscreen;
extern cvar_t vid_minwidth;
extern cvar_t vid_minheight;
extern cvar_t vid_sRGB;
extern unsigned int vid_gammatables_serial; // so other subsystems can poll if gamma parameters have changed; this starts with 0 and gets increased by 1 each time the gamma parameters get changed and VID_BuildGammaTables should be called again
extern qboolean vid_gammatables_trivial; // this is set to true if all color control values are at default setting, and it therefore would make no sense to use the gamma table
void VID_BuildGammaTables(unsigned short *ramps, int rampsize); // builds the current gamma tables into an array (needs 3*rampsize items)
+void VID_ApplyGammaToColor(const float *rgb, float *out); // applies current gamma settings to a color (0-1 range)
typedef struct
{
int pixelheight_num, pixelheight_denom;
}
vid_mode_t;
+vid_mode_t *VID_GetDesktopMode(void);
size_t VID_ListModes(vid_mode_t *modes, size_t maxcount);
size_t VID_SortModes(vid_mode_t *modes, size_t count, qboolean usebpp, qboolean userefreshrate, qboolean useaspect);
void VID_Soft_SharedSetup(void);