Shader now passed by shared pointer.

This commit is contained in:
David Williams
2014-05-25 23:40:55 +02:00
parent b97bf52214
commit 9e835a1110
3 changed files with 23 additions and 21 deletions

View File

@ -61,10 +61,7 @@ public:
// For our purposes we use a single shader for the whole volume, and
// this example framework is only meant to show a single volume at a time
void setShader(QGLShaderProgram* shader)
{
this->shader = shader;
}
void setShader(QSharedPointer<QGLShaderProgram> shader);
// Convert a SurfaceMesh to OpenGL index/vertex buffers. Inlined because it's templatised.
template <typename MeshType>
@ -127,7 +124,7 @@ private:
// Index/vertex buffer data
std::vector<OpenGLMeshData> mMeshData;
QGLShaderProgram* shader;
QSharedPointer<QGLShaderProgram> mShader;
// Matrices
QMatrix4x4 worldToCameraMatrix;