Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- void Engine::initializeGL( void )
- {
- glEnable( GL_DEPTH_TEST );
- glEnable( GL_BLEND );
- glEnable( GL_POLYGON_SMOOTH );
- glBlendFunc( GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA );
- glClearColor( 0, 0, 0, 0 );
- glm::mat4 projection = glm::perspective( 45.0f, (float)( width() / height() ), 0.1f, 100.0f );
- glm::mat4 view = glm::mat4( 1 );
- view = glm::translate( view, glm::vec3( 1, 1, 1 ) );
- glm::mat4 model = glm::mat4( 1 );
- model = glm::translate( model, glm::vec3( 0.5f ) );
- glm::mat4 mvp = projection * view * model;
- glLoadMatrixf( glm::value_ptr( mvp ) );
- mShapes = new QVector< Shape* >;
- QVector< Shader > shaders;
- Shader tVert = mShaderHandler->getShader( "Triangle Vertex Shader", "Shaders/Position.vert", GL_VERTEX_SHADER );
- Shader tFrag = mShaderHandler->getShader( "Triangle Fragment Shader", "Shaders/GenericColor.frag", GL_FRAGMENT_SHADER );
- shaders.push_back( tVert );
- shaders.push_back( tFrag );
- mShaderHandler->createShaders(shaders);
- mShaderHandler->compileAndLink();
- mProgram = mShaderHandler->getProgram( 0 );
- mShapes->push_back( new Circle( glm::vec4( 1 ), 5 ) );
- glUseProgram( mProgram );
- }
- //---------------------------
- void Engine::paintGL( void )
- {
- QVectorIterator< Shape* > iShapes( *mShapes );
- glVertexAttribPointer( 0, 4, GL_FLOAT, GL_FALSE, 0, 0 );
- while( iShapes.hasNext() )
- {
- iShapes.next()->draw( mProgram );
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement