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)
{
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;
matrix.make_identity();
@ -63,14 +63,11 @@ class FadingLogos : Mode
matrix.translate(lp.c_x, lp.c_y, 0);
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);
}
for (int i = 0; i < logo.N_CORPORATION; i++)
{
draw_letter(logo.CORPORATION, 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);
}
}
@ -115,6 +112,7 @@ class FadingLogos : Mode
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_create_time = ms;
}
i++;
}