| 1835 | } |
| 1836 | |
| 1837 | void SceneGraph::Dispose() { |
| 1838 | for (auto& object : objects_) { |
| 1839 | object->Dispose(); |
| 1840 | } |
| 1841 | for (auto& object : objects_) { |
| 1842 | delete object; |
| 1843 | } |
| 1844 | object_from_id_map_.clear(); |
| 1845 | if (bullet_world_) { |
| 1846 | bullet_world_->Dispose(); |
| 1847 | delete bullet_world_; |
| 1848 | bullet_world_ = NULL; |
| 1849 | } |
| 1850 | if (abstract_bullet_world_) { |
| 1851 | abstract_bullet_world_->Dispose(); |
| 1852 | delete abstract_bullet_world_; |
| 1853 | abstract_bullet_world_ = NULL; |
| 1854 | } |
| 1855 | if (plant_bullet_world_) { |
| 1856 | plant_bullet_world_->Dispose(); |
| 1857 | delete plant_bullet_world_; |
| 1858 | plant_bullet_world_ = NULL; |
| 1859 | } |
| 1860 | if (nav_mesh_) { |
| 1861 | delete nav_mesh_; |
| 1862 | nav_mesh_ = NULL; |
| 1863 | nav_mesh_renderer_.LoadNavMesh(nav_mesh_); |
| 1864 | } |
| 1865 | delete particle_system; |
| 1866 | particle_system = NULL; |
| 1867 | light_probe_collection.Dispose(); |
| 1868 | dynamic_light_collection.Dispose(); |
| 1869 | level->Dispose(); |
| 1870 | delete level; |
| 1871 | level = NULL; |
| 1872 | delete map_editor; |
| 1873 | map_editor = NULL; |
| 1874 | sky->Dispose(); |
| 1875 | delete sky; |
| 1876 | sky = NULL; |
| 1877 | flares.CleanupFlares(); |
| 1878 | DecalTextures::Instance()->Clear(); |
| 1879 | } |
| 1880 | |
| 1881 | void SceneGraph::SetNavMeshVisible(bool v) { |
| 1882 | nav_mesh_renderer_.SetNavMeshVisible(v); |
no test coverage detected