Browse Source

ref: allow to use shortened name when specifying -ref in command line

pull/2/head
Alibek Omarov 6 years ago
parent
commit
d62a12dd9a
  1. 2
      common/defaults.h
  2. 39
      engine/client/ref_common.c

2
common/defaults.h

@ -147,7 +147,7 @@ Default build-depended cvar and constant values
#endif #endif
#ifndef DEFAULT_RENDERER #ifndef DEFAULT_RENDERER
#define DEFAULT_RENDERER "ref_gl" #define DEFAULT_RENDERER "gl"
#endif #endif
#if TARGET_OS_IPHONE #if TARGET_OS_IPHONE

39
engine/client/ref_common.c

@ -481,21 +481,38 @@ void R_Shutdown( void )
ref.initialized = false; ref.initialized = false;
} }
qboolean R_Init( void ) void R_GetRendererName( char *dest, size_t size, const char *refdll )
{ {
char refdll[64]; Q_snprintf( dest, size, "%sref_%s.%s",
refdll[0] = 0;
if( !Sys_GetParmFromCmdLine( "-ref", refdll ) )
{
Q_snprintf( refdll, sizeof( refdll ), "%s%s.%s",
#ifdef OS_LIB_PREFIX #ifdef OS_LIB_PREFIX
OS_LIB_PREFIX, OS_LIB_PREFIX,
#else #else
"", "",
#endif #endif
DEFAULT_RENDERER, OS_LIB_EXT ); refdll, OS_LIB_EXT );
}
qboolean R_Init( void )
{
string refopt, refdll;
if( !Sys_GetParmFromCmdLine( "-ref", refopt ) )
{
// compile-time defaults
R_GetRendererName( refdll, sizeof( refdll ), DEFAULT_RENDERER );
Con_Printf( "Loading default renderer: %s\n", refdll );
}
else if( !Q_strstr( refopt, va( ".%s", OS_LIB_EXT ) ) )
{
// shortened renderer name
R_GetRendererName( refdll, sizeof( refdll ), refopt );
Con_Printf( "Loading renderer by short name: %s\n", refdll );
}
else
{
// full path
Q_strcpy( refdll, refopt );
Con_Printf( "Loading renderer: %s\n", refdll );
} }
gl_vsync = Cvar_Get( "gl_vsync", "0", FCVAR_ARCHIVE, "enable vertical syncronization" ); gl_vsync = Cvar_Get( "gl_vsync", "0", FCVAR_ARCHIVE, "enable vertical syncronization" );

Loading…
Cancel
Save