fullscreen
[andemo] / src / demo.c
index cebac7c..4acbb8c 100644 (file)
@@ -37,6 +37,14 @@ int demo_init(void)
        if(dsys_init("data/demoscript") == -1) {
                return -1;
        }
+       if(opt.scrname) {
+               struct demoscreen *scr = dsys_find_screen(opt.scrname);
+               if(scr) {
+                       dsys_run_screen(scr);
+               } else {
+                       fprintf(stderr, "ignoring screen option, no such screen: %s\n", opt.scrname);
+               }
+       }
 
        return 0;
 }
@@ -51,6 +59,25 @@ void demo_display(void)
        dsys_update();
 
        glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);
+
+       glEnable(GL_BLEND);
+       glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA);
+
+       glBindTexture(GL_TEXTURE_2D, tex_logo);
+       glUseProgram(sdr_foo);
+       gl_begin(GL_QUADS);
+       gl_color4f(1, 1, 1, dsys_value("flashlogo"));
+       gl_texcoord2f(0, 1);
+       gl_vertex2f(-1, -1);
+       gl_texcoord2f(1, 1);
+       gl_vertex2f(1, -1);
+       gl_texcoord2f(1, 0);
+       gl_vertex2f(1, 1);
+       gl_texcoord2f(0, 0);
+       gl_vertex2f(-1, 1);
+       gl_end();
+       glDisable(GL_BLEND);
+
        dsys_draw();
 }