Clean up shapes and lights lists
This commit is contained in:
		
							parent
							
								
									fcd2781cc7
								
							
						
					
					
						commit
						cae8b21068
					
				
					 1 changed files with 16 additions and 0 deletions
				
			
		
							
								
								
									
										16
									
								
								src/scene.cc
									
										
									
									
									
								
							
							
						
						
									
										16
									
								
								src/scene.cc
									
										
									
									
									
								
							| 
						 | 
					@ -20,6 +20,8 @@ Scene::Scene()
 | 
				
			||||||
    : width(640), height(480),
 | 
					    : width(640), height(480),
 | 
				
			||||||
      max_depth(5),
 | 
					      max_depth(5),
 | 
				
			||||||
      ambient(NULL),
 | 
					      ambient(NULL),
 | 
				
			||||||
 | 
					      shapes(),
 | 
				
			||||||
 | 
					      lights(),
 | 
				
			||||||
      nrays(0),
 | 
					      nrays(0),
 | 
				
			||||||
      pixels(NULL)
 | 
					      pixels(NULL)
 | 
				
			||||||
{ }
 | 
					{ }
 | 
				
			||||||
| 
						 | 
					@ -27,6 +29,20 @@ Scene::Scene()
 | 
				
			||||||
 | 
					
 | 
				
			||||||
Scene::~Scene()
 | 
					Scene::~Scene()
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
 | 
					    if (ambient != NULL) {
 | 
				
			||||||
 | 
					        delete ambient;
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    for (Shape *s : shapes) {
 | 
				
			||||||
 | 
					        delete s;
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					    shapes.clear();
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    for (PointLight *l : lights) {
 | 
				
			||||||
 | 
					        delete l;
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					    lights.clear();
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    if (pixels != NULL) {
 | 
					    if (pixels != NULL) {
 | 
				
			||||||
        delete[] pixels;
 | 
					        delete[] pixels;
 | 
				
			||||||
        _is_rendered = false;
 | 
					        _is_rendered = false;
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue