Fixed texture freeing. Destructor was never called because base destructors weren't virtual.

This commit is contained in:
2016-03-12 17:45:43 +01:00
parent 068e151741
commit ce0d3b9fbe
7 changed files with 16 additions and 13 deletions
+1
View File
@@ -19,6 +19,7 @@ class Resource
protected:
Resource() { }
virtual ~Resource() = default;
public:
//Should be thrown in a Resource's constructor if it cannot complete because another resource is still loading.
+2 -1
View File
@@ -3,6 +3,7 @@
#include "IRenderer.h"
#include "ShaderProgram.h"
#include "PNG.h"
class CubeMapPass
{
@@ -21,7 +22,7 @@ private:
IRenderer* m_Renderer;
std::string m_PreviusCubeMapTexture;
std::vector<Texture*> m_CubeMapTextures;
std::vector<std::string> m_CubeMapTextures;
};
#endif
+2
View File
@@ -3,6 +3,8 @@
struct Image
{
virtual ~Image() = default;
enum class ImageFormat
{
Unknown,
-2
View File
@@ -14,8 +14,6 @@ protected:
TextureSprite(std::string path);
public:
~TextureSprite();
void Bind(GLenum textureUnit = GL_TEXTURE0);
GLuint m_Texture = 0;