mirror of
				https://github.com/f4exb/sdrangel.git
				synced 2025-11-03 21:20:31 -05:00 
			
		
		
		
	Create VAOs properly
This commit is contained in:
		
							parent
							
								
									74d61855e4
								
							
						
					
					
						commit
						0a91c30038
					
				@ -51,6 +51,10 @@ void GLShaderSimple::initializeGL(int majorVersion, int minorVersion)
 | 
				
			|||||||
        if (!m_program->addShaderFromSourceCode(QOpenGLShader::Fragment, m_fragmentShaderSourceColored)) {
 | 
					        if (!m_program->addShaderFromSourceCode(QOpenGLShader::Fragment, m_fragmentShaderSourceColored)) {
 | 
				
			||||||
            qDebug() << "GLShaderSimple::initializeGL: error in fragment shader: " << m_program->log();
 | 
					            qDebug() << "GLShaderSimple::initializeGL: error in fragment shader: " << m_program->log();
 | 
				
			||||||
        }
 | 
					        }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        m_vao = new QOpenGLVertexArrayObject();
 | 
				
			||||||
 | 
					        m_vao->create();
 | 
				
			||||||
 | 
					        m_vao->bind();
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
    else
 | 
					    else
 | 
				
			||||||
    {
 | 
					    {
 | 
				
			||||||
@ -74,9 +78,6 @@ void GLShaderSimple::initializeGL(int majorVersion, int minorVersion)
 | 
				
			|||||||
	m_colorLoc = m_program->uniformLocation("uColour");
 | 
						m_colorLoc = m_program->uniformLocation("uColour");
 | 
				
			||||||
    if (m_vao)
 | 
					    if (m_vao)
 | 
				
			||||||
    {
 | 
					    {
 | 
				
			||||||
        m_vao = new QOpenGLVertexArrayObject();
 | 
					 | 
				
			||||||
        m_vao->create();
 | 
					 | 
				
			||||||
        m_vao->bind();
 | 
					 | 
				
			||||||
        m_verticesBuf = new QOpenGLBuffer(QOpenGLBuffer::VertexBuffer);
 | 
					        m_verticesBuf = new QOpenGLBuffer(QOpenGLBuffer::VertexBuffer);
 | 
				
			||||||
        m_verticesBuf->setUsagePattern(QOpenGLBuffer::DynamicDraw);
 | 
					        m_verticesBuf->setUsagePattern(QOpenGLBuffer::DynamicDraw);
 | 
				
			||||||
        m_verticesBuf->create();
 | 
					        m_verticesBuf->create();
 | 
				
			||||||
 | 
				
			|||||||
@ -32,9 +32,9 @@ GLShaderTextured::GLShaderTextured() :
 | 
				
			|||||||
    m_verticesBuf(nullptr),
 | 
					    m_verticesBuf(nullptr),
 | 
				
			||||||
    m_textureCoordsBuf(nullptr),
 | 
					    m_textureCoordsBuf(nullptr),
 | 
				
			||||||
	m_texture(nullptr),
 | 
						m_texture(nullptr),
 | 
				
			||||||
 | 
					    m_textureId(0),
 | 
				
			||||||
    m_vertexLoc(0),
 | 
					    m_vertexLoc(0),
 | 
				
			||||||
    m_texCoordLoc(0),
 | 
					    m_texCoordLoc(0),
 | 
				
			||||||
    m_textureId(0),
 | 
					 | 
				
			||||||
	m_matrixLoc(0),
 | 
						m_matrixLoc(0),
 | 
				
			||||||
	m_textureLoc(0),
 | 
						m_textureLoc(0),
 | 
				
			||||||
    m_useImmutableStorage(true)
 | 
					    m_useImmutableStorage(true)
 | 
				
			||||||
@ -60,6 +60,10 @@ void GLShaderTextured::initializeGL(int majorVersion, int minorVersion)
 | 
				
			|||||||
        if (!m_program->addShaderFromSourceCode(QOpenGLShader::Fragment, m_fragmentShaderSourceTextured)) {
 | 
					        if (!m_program->addShaderFromSourceCode(QOpenGLShader::Fragment, m_fragmentShaderSourceTextured)) {
 | 
				
			||||||
            qDebug() << "GLShaderTextured::initializeGL: error in fragment shader: " << m_program->log();
 | 
					            qDebug() << "GLShaderTextured::initializeGL: error in fragment shader: " << m_program->log();
 | 
				
			||||||
        }
 | 
					        }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        m_vao = new QOpenGLVertexArrayObject();
 | 
				
			||||||
 | 
					        m_vao->create();
 | 
				
			||||||
 | 
					        m_vao->bind();
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
    else
 | 
					    else
 | 
				
			||||||
    {
 | 
					    {
 | 
				
			||||||
@ -85,9 +89,6 @@ void GLShaderTextured::initializeGL(int majorVersion, int minorVersion)
 | 
				
			|||||||
	m_textureLoc = m_program->uniformLocation("uTexture");
 | 
						m_textureLoc = m_program->uniformLocation("uTexture");
 | 
				
			||||||
    if (m_vao)
 | 
					    if (m_vao)
 | 
				
			||||||
    {
 | 
					    {
 | 
				
			||||||
        m_vao = new QOpenGLVertexArrayObject();
 | 
					 | 
				
			||||||
        m_vao->create();
 | 
					 | 
				
			||||||
        m_vao->bind();
 | 
					 | 
				
			||||||
        m_verticesBuf = new QOpenGLBuffer(QOpenGLBuffer::VertexBuffer);
 | 
					        m_verticesBuf = new QOpenGLBuffer(QOpenGLBuffer::VertexBuffer);
 | 
				
			||||||
        m_verticesBuf->setUsagePattern(QOpenGLBuffer::DynamicDraw);
 | 
					        m_verticesBuf->setUsagePattern(QOpenGLBuffer::DynamicDraw);
 | 
				
			||||||
        m_verticesBuf->create();
 | 
					        m_verticesBuf->create();
 | 
				
			||||||
 | 
				
			|||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user