X-Git-Url: https://git.xonotic.org/?a=blobdiff_plain;f=vid.h;h=91c42f0a932558b968e7a2d63a0373327cfe0cfb;hb=aed6d59ce519019ab557dd7316268df50ecb6e11;hp=37955e8c95670d785bd19b42b5a1499412ca4fc1;hpb=c5b7dc9addac09cbfab5e592e9b2feea8d7da241;p=xonotic%2Fdarkplaces.git diff --git a/vid.h b/vid.h index 37955e8c..91c42f0a 100644 --- a/vid.h +++ b/vid.h @@ -111,8 +111,8 @@ typedef struct viddef_s qboolean stencil; qboolean sRGB2D; // whether 2D rendering is sRGB corrected (based on sRGBcapable2D) qboolean sRGB3D; // whether 3D rendering is sRGB corrected (based on sRGBcapable3D) - qboolean sRGBcapable2D; // whether 2D rendering can be sRGB corrected (renderpath, v_hwgamma) - qboolean sRGBcapable3D; // whether 3D rendering can be sRGB corrected (renderpath, v_hwgamma) + qboolean sRGBcapable2D; // whether 2D rendering can be sRGB corrected (renderpath) + qboolean sRGBcapable3D; // whether 3D rendering can be sRGB corrected (renderpath) renderpath_t renderpath; qboolean forcevbo; // some renderpaths can not operate without it @@ -177,8 +177,6 @@ void VID_EnableJoystick(qboolean enable); extern qboolean vid_hidden; extern qboolean vid_activewindow; -extern cvar_t vid_hardwaregammasupported; -extern qboolean vid_usinghwgamma; extern qboolean vid_supportrefreshrate; extern cvar_t vid_soft; @@ -224,7 +222,6 @@ extern cvar_t v_color_grey_b; extern cvar_t v_color_white_r; extern cvar_t v_color_white_g; extern cvar_t v_color_white_b; -extern cvar_t v_hwgamma; // brand of graphics chip extern const char *gl_vendor; @@ -266,20 +263,9 @@ qboolean VID_InitMode(viddef_mode_t *mode); // allocates and opens an appropriate OpenGL context (and its window) -// sets hardware gamma correction, returns false if the device does not -// support gamma control -// (ONLY called by VID_UpdateGamma and VID_RestoreSystemGamma) -int VID_SetGamma(unsigned short *ramps, int rampsize); -// gets hardware gamma correction, returns false if the device does not -// support gamma control -// (ONLY called by VID_UpdateGamma and VID_RestoreSystemGamma) -int VID_GetGamma(unsigned short *ramps, int rampsize); -// makes sure ramp arrays are big enough and calls VID_GetGamma/VID_SetGamma +// updates cachegamma variables and bumps vid_gammatables_serial if anything changed // (ONLY to be called from VID_Finish!) -void VID_UpdateGamma(qboolean force, int rampsize); -// turns off hardware gamma ramps immediately -// (called from various shutdown/deactivation functions) -void VID_RestoreSystemGamma(void); +void VID_UpdateGamma(void); qboolean VID_HasScreenKeyboardSupport(void); void VID_ShowKeyboard(qboolean show); @@ -296,6 +282,7 @@ void VID_Stop(void); 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 {