metadata, walk polygons, stuff...
[laserbrain_demo] / src / app.cc
index 2501415..6020947 100644 (file)
@@ -15,6 +15,7 @@ static void draw_scene();
 long time_msec;
 int win_width, win_height;
 bool opt_gear_wireframe;
+bool show_walk_mesh;
 
 static float cam_dist = 0.0;
 static float cam_theta, cam_phi = 20;
@@ -50,20 +51,6 @@ bool app_init()
                return false;
        }
 
-       /*
-       datamap_set_path("data");
-       if(!datamap_load_map("data.map")) {
-               fprintf(stderr, "failed to load datafile mappings\n");
-       }
-
-       unsigned int sflags = SCNLOAD_FLIPTEX;
-       if(!(scn->load("data/testscene/patoma.fbx", sflags)) ||
-                       !(scn->load("data/testscene/kolones.fbx", sflags))) {
-               fprintf(stderr, "failed to load test scene\n");
-               return false;
-       }
-       */
-
        if(!(sdr = create_program_load("sdr/test.v.glsl", "sdr/test.p.glsl"))) {
                fprintf(stderr, "failed to load test shaders\n");
                return false;
@@ -170,6 +157,18 @@ static void draw_scene()
        glUseProgram(sdr);
        scn->draw();
        glUseProgram(0);
+
+       if(show_walk_mesh && scn->walk_mesh) {
+               glPushAttrib(GL_ENABLE_BIT);
+               glEnable(GL_BLEND);
+               glBlendFunc(GL_ONE, GL_ONE);
+               glDisable(GL_LIGHTING);
+
+               glColor3f(0.5, 0.4, 0.05);
+               scn->walk_mesh->draw();
+
+               glPopAttrib();
+       }
 }
 
 
@@ -185,10 +184,17 @@ void app_reshape(int x, int y)
 void app_keyboard(int key, bool pressed)
 {
        if(pressed) {
+               printf("key: %d (mod: %x)\n", key, app_get_modifiers());
                switch(key) {
                case 27:
                        app_quit();
                        break;
+
+               case 'w':
+                       if(app_get_modifiers() & MOD_CTRL) {
+                               show_walk_mesh = !show_walk_mesh;
+                       }
+                       break;
                }
        }