added IBR lighting from irradiance maps
[demo] / src / main.cc
index cbe6ed6..491dd9c 100644 (file)
@@ -69,6 +69,7 @@ static MorphRenderer *cow_rend;
 static Terrain terrain;
 static TerrainParams p;
 static Texture *skybox_tex;
+static Texture *irradiance_tex;
 static Texture *terrain_tex;
 static Material terrain_mat;
 static Renderer *terrain_rend;
@@ -170,9 +171,12 @@ static bool init(Gfx_API api)
 
        skybox_tex = gfx_create_texture();
        skybox_tex->load("data/cubemap/cubemap.hdr");
-       //irr_tex->load("data/cubemap/irradiance.hdr");
        terrain_rend->set_sky_tex(skybox_tex);
 
+       irradiance_tex = gfx_create_texture();
+       irradiance_tex->load("data/cubemap/irradiance.hdr");
+       terrain_rend->set_diffuse_sky_tex(irradiance_tex);
+
        if(!terrain_rend->create()) {
                fprintf(stderr, "terrain fail\n");
                return false;
@@ -230,8 +234,11 @@ static void cleanup()
        delete cow_scene;
        delete cow_rend;
 
+       delete skybox_tex;
+       delete irradiance_tex;
        delete terrain_tex;
        delete terrain_rend;
+
        gfx_cleanup();
 }