glerminal/examples/basic.cpp

59 lines
947 B
C++

#include <glerminal.h>
#include <cstdlib>
namespace
{
void init()
{
glerminal_update_palette(0, 0x00000000);
glerminal_update_palette(1, 0xFF00007F);
glerminal_update_palette(2, 0x00FF007F);
glerminal_update_sprite(1, {
2, 2, 2, 2, 2, 2, 2, 2,
2, 1, 1, 1, 1, 1, 1, 2,
2, 1, 1, 1, 1, 1, 1, 2,
2, 1, 1, 1, 1, 1, 1, 2,
2, 1, 1, 1, 1, 1, 1, 2,
2, 1, 1, 1, 1, 1, 1, 2,
2, 1, 1, 1, 1, 1, 1, 2,
2, 2, 2, 2, 2, 2, 2, 2
});
}
void mainloop(float dt)
{
static float time = 1;
time += dt;
if (time < 0.2f)
{
return;
}
else
{
time = 0;
}
for (int i = 0; i < 40; i++)
{
for (int j = 0; j < 25; j++)
{
for (int k = 0; k < 8; k++)
{
glerminal_set(i, j, k, rand() % 2);
glerminal_offset(i, j, k, (rand() * rand()) % 100 - 50, (rand() * rand()) % 100 - 50);
}
}
}
glerminal_flush();
}
}
int main(int argc, char** argv)
{
glerminal_run(init, mainloop);
}