RENDERPATH_D3D10,
RENDERPATH_D3D11,
RENDERPATH_SOFT,
+ RENDERPATH_GLES1,
RENDERPATH_GLES2
}
renderpath_t;
qboolean ext_texture_compression_s3tc;
qboolean ext_texture_edge_clamp;
qboolean ext_texture_filter_anisotropic;
+ qboolean ext_texture_srgb;
+ qboolean arb_multisample;
}
viddef_support_t;
qboolean stereobuffer;
int samples;
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)
renderpath_t renderpath;
qboolean forcevbo; // some renderpaths can not operate without it
// blit to the window)
unsigned int *softpixels;
unsigned int *softdepthpixels;
+
+ int forcetextype; // always use GL_BGRA for D3D, always use GL_RGBA for GLES, etc
} viddef_t;
// global video state
extern qboolean vid_usinghwgamma;
extern qboolean vid_supportrefreshrate;
+extern cvar_t vid_soft;
+extern cvar_t vid_soft_threads;
+extern cvar_t vid_soft_interlace;
+
extern cvar_t vid_fullscreen;
extern cvar_t vid_width;
extern cvar_t vid_height;
extern cvar_t vid_bitsperpixel;
extern cvar_t vid_samples;
+extern cvar_t vid_multisampling;
extern cvar_t vid_refreshrate;
extern cvar_t vid_userefreshrate;
extern cvar_t vid_vsync;
vid_mode_t;
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);
#endif