X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=src%2FMain%2Fsplash.cxx;h=202b47c49d100fcada72367ec2996516965e0499;hb=ebe5fc30927a6b828577239b42ba65f520ac8775;hp=2f71c4155dd537b16dea3def47ebd6bae098776f;hpb=97811e883270f3db606a9bd6af048abfa36bcd6a;p=flightgear.git diff --git a/src/Main/splash.cxx b/src/Main/splash.cxx index 2f71c4155..202b47c49 100644 --- a/src/Main/splash.cxx +++ b/src/Main/splash.cxx @@ -46,10 +46,13 @@ #include #include +#include + #include "globals.hxx" #include "fg_props.hxx" #include "splash.hxx" #include "fg_os.hxx" +#include "renderer.hxx" static const int fontsize = 19; static const char fontname[] = "default.txf"; @@ -65,9 +68,6 @@ static fntRenderer info; void fgSplashInit ( const char *splash_texture ) { fgRequestRedraw(); - if (!fgGetBool("/sim/startup/splash-screen")) - return; - SG_LOG( SG_GENERAL, SG_INFO, "Initializing splash screen" ); @@ -82,11 +82,16 @@ void fgSplashInit ( const char *splash_texture ) { SGPath path(fontpath); path.append(fontname); - font.load((char *)path.c_str()); + if (!font.load((char *)path.c_str())) { + SG_LOG( SG_GENERAL, SG_ALERT, "Error loading font " << path.str() ); + return; + } info.setFont(&font); info.setPointSize(fontsize); + if (!fgGetBool("/sim/startup/splash-screen")) + return; splash.bind(); @@ -138,6 +143,7 @@ void fgSplashUpdate ( float alpha ) { if (!screen_width || !screen_height) return; + globals->get_renderer()->resize(screen_width, screen_height); int size = screen_width < (screen_height - 5 * fontsize) ? screen_width : screen_height - 5 * fontsize; if (size > 512) @@ -185,7 +191,7 @@ void fgSplashUpdate ( float alpha ) { glEnd(); } - if (progress_text && fgGetBool("/sim/startup/splash-progress", true)) { + if (info.getFont() && progress_text && fgGetBool("/sim/startup/splash-progress", true)) { glEnable(GL_ALPHA_TEST); glEnable(GL_BLEND); glAlphaFunc(GL_GREATER, 0.1f); @@ -195,7 +201,10 @@ void fgSplashUpdate ( float alpha ) { float left, right, bot, top; info.begin(); - glColor4f(1.0, 0.9, 0.0, alpha); + FGColor c(1.0, 0.9, 0.0); + c.merge(fgGetNode("/sim/gui/colors/splash")); + glColor4f(c.red(), c.green(), c.blue(), alpha); + font.getBBox(progress_text, fontsize, 0, &left, &right, &bot, &top); info.start2f((screen_width - right) / 2.0, 10.0 - bot); info.puts(progress_text);