Esempio n. 1
0
int Level::loadFrom(const Loader& loader) {
    cameras.clear();
    meshes.clear();
    materials.clear();
    lights.clear();

	for (auto e : mesh_objects) {
		delete e;
	}

    mesh_objects.clear();

	for (auto e : game_objects) {
		delete e;
	}

	game_objects.clear();

	if (physics_world != nullptr) delete physics_world;
	physics_world = new b2World(b2Vec2(0.0f, -9.81f));
	physics_world->SetContinuousPhysics(true);
	physics_world->SetContactListener(new DungeonContactListener());

    return loader.processScene(*this);
}