diff --git a/src/app.cpp b/src/app.cpp index f9cd33d..99be8f3 100644 --- a/src/app.cpp +++ b/src/app.cpp @@ -15,6 +15,8 @@ App::App() portal100x200.half_frame_thickness = 0.1f; // 10cm offset towards the second sector auto room001 = assets::SectorDef::LoadFromFile("data/room_001"); + auto room002 = assets::SectorDef::LoadFromFile("data/room_002"); + auto room003 = assets::SectorDef::LoadFromFile("data/room_003"); size_t s1i = world_.AddSector(room001); game::Sector& s1 = world_.GetSector(s1i); @@ -26,11 +28,19 @@ App::App() s2.AddLight(glm::vec3(0.0f, 2.0f, 1.8f), glm::vec3(1.0f, 1.0f, 0.9f), 6.0f); s2.AddLight(glm::vec3(2.0f, -0.0f, 1.0f), glm::vec3(0.0f, 1.0f, 0.0f), 3.0f); - world_.LinkPortals(s1i, "EDoor", s1i, "EDoor", 0); + size_t s3i = world_.AddSector(room003); + game::Sector& s3 = world_.GetSector(s3i); + s3.AddLight(glm::vec3(0.0f, 0.0f, 1.8f), glm::vec3(1.0f, 0.0f, 0.0f), 3.0f); + + //world_.LinkPortals(s1i, "EDoor", s1i, "EDoor", 0); world_.LinkPortals(s1i, "NDoor", s2i, "WDoor", 0); world_.LinkPortals(s2i, "NDoor", s2i, "SDoor", 0); world_.LinkPortals(s2i, "EDoor", s2i, "EDoor", game::LINK_ROTATE180); + // scaling hallway + world_.LinkPortals(s1i, "EDoor", s3i, "BigDoor", 0); + world_.LinkPortals(s1i, "WDoor", s3i, "SmallDoor", 0); + world_.Bake(); player_ = world_.Spawn(s1i, glm::vec3(0.0f, 0.0f, 1.0f));