03 Mar 2015
This commit is contained in:
parent
dc1d56ed74
commit
171038bec5
|
@ -558,6 +558,9 @@ typedef struct
|
|||
GLfloat max_texture_anisotropy;
|
||||
GLfloat max_texture_lodbias;
|
||||
|
||||
GLint max_vertex_uniforms;
|
||||
GLint max_vertex_attribs;
|
||||
|
||||
int color_bits;
|
||||
int alpha_bits;
|
||||
int depth_bits;
|
||||
|
|
|
@ -19,9 +19,10 @@ GNU General Public License for more details.
|
|||
#include "mod_local.h"
|
||||
#include "input.h"
|
||||
|
||||
#define VID_DEFAULTMODE "1"
|
||||
#define VID_AUTOMODE "-1"
|
||||
#define VID_DEFAULTMODE 2.0f
|
||||
#define DISP_CHANGE_BADDUALVIEW -6 // MSVC 6.0 doesn't
|
||||
#define num_vidmodes ((int)(sizeof(vidmode) / sizeof(vidmode[0])) - 1)
|
||||
#define num_vidmodes ( sizeof( vidmode ) / sizeof( vidmode[0] ))
|
||||
#define WINDOW_STYLE (WS_OVERLAPPED|WS_BORDER|WS_SYSMENU|WS_CAPTION|WS_VISIBLE)
|
||||
#define WINDOW_EX_STYLE (0)
|
||||
#define WINDOW_NAME "Xash Window" // Half-Life
|
||||
|
@ -1362,9 +1363,30 @@ qboolean VID_SetMode( void )
|
|||
qboolean fullscreen;
|
||||
rserr_t err;
|
||||
|
||||
fullscreen = vid_fullscreen->integer;
|
||||
gl_swapInterval->modified = true;
|
||||
|
||||
if( vid_mode->integer == -1 ) // trying to get resolution automatically by default
|
||||
{
|
||||
HDC hDCScreen = GetDC( NULL );
|
||||
int iScreenWidth = GetDeviceCaps( hDCScreen, HORZRES );
|
||||
int iScreenHeight = GetDeviceCaps( hDCScreen, VERTRES );
|
||||
|
||||
ReleaseDC( NULL, hDCScreen );
|
||||
|
||||
if( R_DescribeVIDMode( iScreenWidth, iScreenHeight ))
|
||||
{
|
||||
MsgDev( D_NOTE, "found specified vid mode %i [%ix%i]\n", vid_mode->integer, iScreenWidth, iScreenHeight );
|
||||
Cvar_SetFloat( "fullscreen", 1 );
|
||||
}
|
||||
else
|
||||
{
|
||||
MsgDev( D_NOTE, "failed to set specified vid mode [%ix%i]\n", iScreenWidth, iScreenHeight );
|
||||
Cvar_SetFloat( "vid_mode", VID_DEFAULTMODE );
|
||||
}
|
||||
}
|
||||
|
||||
fullscreen = vid_fullscreen->integer;
|
||||
|
||||
if(( err = R_ChangeDisplaySettings( vid_mode->integer, fullscreen )) == rserr_ok )
|
||||
{
|
||||
glConfig.prev_mode = vid_mode->integer;
|
||||
|
@ -1541,7 +1563,10 @@ void R_RenderInfo_f( void )
|
|||
Msg( "GL_VENDOR: %s\n", glConfig.vendor_string );
|
||||
Msg( "GL_RENDERER: %s\n", glConfig.renderer_string );
|
||||
Msg( "GL_VERSION: %s\n", glConfig.version_string );
|
||||
Msg( "GL_EXTENSIONS: %s\n", glConfig.extensions_string );
|
||||
|
||||
// don't spam about extensions
|
||||
if( host.developer >= 4 )
|
||||
Msg( "GL_EXTENSIONS: %s\n", glConfig.extensions_string );
|
||||
|
||||
Msg( "GL_MAX_TEXTURE_SIZE: %i\n", glConfig.max_2d_texture_size );
|
||||
|
||||
|
@ -1557,6 +1582,8 @@ void R_RenderInfo_f( void )
|
|||
{
|
||||
Msg( "GL_MAX_TEXTURE_COORDS_ARB: %i\n", glConfig.max_texture_coords );
|
||||
Msg( "GL_MAX_TEXTURE_IMAGE_UNITS_ARB: %i\n", glConfig.max_teximage_units );
|
||||
Msg( "GL_MAX_VERTEX_UNIFORM_COMPONENTS_ARB: %i\n", glConfig.max_vertex_uniforms );
|
||||
Msg( "GL_MAX_VERTEX_ATTRIBS_ARB: %i\n", glConfig.max_vertex_attribs );
|
||||
}
|
||||
|
||||
Msg( "\n" );
|
||||
|
@ -1642,7 +1669,7 @@ void GL_InitCommands( void )
|
|||
|
||||
vid_gamma = Cvar_Get( "gamma", "1.0", CVAR_ARCHIVE, "gamma amount" );
|
||||
vid_texgamma = Cvar_Get( "texgamma", "2.2", CVAR_GLCONFIG, "texgamma amount (default Half-Life artwork gamma)" );
|
||||
vid_mode = Cvar_Get( "vid_mode", VID_DEFAULTMODE, CVAR_RENDERINFO, "display resolution mode" );
|
||||
vid_mode = Cvar_Get( "vid_mode", VID_AUTOMODE, CVAR_RENDERINFO, "display resolution mode" );
|
||||
vid_fullscreen = Cvar_Get( "fullscreen", "0", CVAR_RENDERINFO, "set in 1 to enable fullscreen mode" );
|
||||
vid_displayfrequency = Cvar_Get ( "vid_displayfrequency", "0", CVAR_RENDERINFO, "fullscreen refresh rate" );
|
||||
|
||||
|
@ -1810,6 +1837,9 @@ void GL_InitExtensions( void )
|
|||
Cvar_Get( "gl_max_texture_size", "0", CVAR_INIT, "opengl texture max dims" );
|
||||
Cvar_Set( "gl_max_texture_size", va( "%i", glConfig.max_2d_texture_size ));
|
||||
|
||||
pglGetIntegerv( GL_MAX_VERTEX_UNIFORM_COMPONENTS_ARB, &glConfig.max_vertex_uniforms );
|
||||
pglGetIntegerv( GL_MAX_VERTEX_ATTRIBS_ARB, &glConfig.max_vertex_attribs );
|
||||
|
||||
// MCD has buffering issues
|
||||
if(Q_strstr( glConfig.renderer_string, "gdi" ))
|
||||
Cvar_SetFloat( "gl_finish", 1 );
|
||||
|
|
Reference in New Issue