GLint maxSamples;
glGetIntegerv(GL_MAX_SAMPLES_EXT, &maxSamples);
glGenRenderbuffersEXT ( 1, &mColourBuffer );
glBindRenderbufferEXT ( GL_RENDERBUFFER_EXT, mColourBuffer);
glRenderbufferStorageMultisampleEXT(GL_RENDERBUFFER_EXT, maxSamples, GL_RGBA, mFBOTextureWidth, mFBOTextureHeight );
glGenRenderbuffersEXT ( 1, &mDepthBuffer );
glBindRenderbufferEXT ( GL_RENDERBUFFER_EXT, mDepthBuffer );
glRenderbufferStorageMultisampleEXT( GL_RENDERBUFFER_EXT, maxSamples, GL_DEPTH_COMPONENT, mFBOTextureWidth, mFBOTextureHeight );
glGenFramebuffersEXT ( 1, &mFrameBufferMulti );
glBindFramebufferEXT ( GL_FRAMEBUFFER_EXT, mFrameBufferMulti );
glFramebufferRenderbufferEXT( GL_FRAMEBUFFER_EXT, GL_COLOR_ATTACHMENT0_EXT, GL_RENDERBUFFER_EXT, mColourBuffer );
glFramebufferRenderbufferEXT( GL_FRAMEBUFFER_EXT, GL_DEPTH_ATTACHMENT_EXT, GL_RENDERBUFFER_EXT, mDepthBuffer );
GLenum status = glCheckFramebufferStatusEXT( GL_FRAMEBUFFER_EXT );