pass time to draw_logo(); draw in one for() loop

This commit is contained in:
Josh Holtrop 2014-01-27 21:49:53 -05:00
parent 288434562a
commit 17c5f7dd1a

View File

@ -48,11 +48,11 @@ class FadingLogos : Mode
foreach (LogoParams lp; m_logos) foreach (LogoParams lp; m_logos)
{ {
draw_logo(lp, ss); draw_logo(lp, ss, ms);
} }
} }
protected void draw_logo(LogoParams lp, ScreenSaver ss) protected void draw_logo(LogoParams lp, ScreenSaver ss, uint ms)
{ {
mat4 matrix; mat4 matrix;
matrix.make_identity(); matrix.make_identity();
@ -63,14 +63,11 @@ class FadingLogos : Mode
matrix.translate(lp.c_x, lp.c_y, 0); matrix.translate(lp.c_x, lp.c_y, 0);
glUniformMatrix4fv(m_shader.view_idx, 1, GL_TRUE, matrix.value_ptr); glUniformMatrix4fv(m_shader.view_idx, 1, GL_TRUE, matrix.value_ptr);
for (int i = 0; i < logo.N_GENTEX; i++) for (int i = 0; i < logo.N_GENTEX + logo.N_CORPORATION; i++)
{ {
draw_letter(logo.GENTEX, i); int word = i < logo.N_GENTEX ? logo.GENTEX : logo.CORPORATION;
} int character = i < logo.N_GENTEX ? i : i - logo.N_GENTEX;
draw_letter(word, character);
for (int i = 0; i < logo.N_CORPORATION; i++)
{
draw_letter(logo.CORPORATION, i);
} }
} }
@ -115,6 +112,7 @@ class FadingLogos : Mode
if ((ms - m_logos[i].character_create_time) >= CHARACTER_FLY_TIME) if ((ms - m_logos[i].character_create_time) >= CHARACTER_FLY_TIME)
{ {
m_logos[i].character_direction = uniform(0.0, math.PI * 2.0); m_logos[i].character_direction = uniform(0.0, math.PI * 2.0);
m_logos[i].character_create_time = ms;
} }
i++; i++;
} }