Marcio Bueno

Criando uma Aplicação OpenGL com o Qt Creator

Ao se desenvolver uma aplicação OpenGL é preciso utilizar em conjunto alguma outra biblioteca para tratar de tarefas específicas como abrir uma janela e interagir com mouse e teclado. O problema é que normalmente estas outras bibliotecas são dependentes de sistema operacional.

Existem algumas alternativas para não ficar dependente de sistema operacional, das quais a mais conhecida é utilizar a GLUT, porém ela possui vários problemas. Dentre estes problemas, um dos piores é a necessidade de utilizar variáveis globais para criar a sua aplicação. Portanto, descartando a utilização da GLUT, uma outra abordagem é utilizar o framework Qt da Nokia.

Para contextualizar, será criada uma aplicação gráfica com OpenGL e Qt, onde a interface gráfica será criada utilizando o Qt Creator, que é uma IDE de código aberto que possui uma licença gratuita, inclusive para desenvolver aplicações comerciais.

A aplicação pode ser vista na figura abaixo e é bem simples. É basicamente um visualizador de polígonos, onde o usuário informa a quantidade de lados e o tamanho do raio através de dois sliders.

Aplicação OpenGL com Qt

Este tutorial está dividido em três partes e como ele foi gravado em 720p é recomendado que você selecione esta opção e visualize em tela cheia.

Tutorial de OpenGL com Qt Creator (Parte 1)

Tutorial de OpenGL com Qt Creator (Parte 2)

Tutorial de OpenGL com Qt Creator (Parte 3)

Você pode baixar o código fonte do Projeto OpenGL com Qt. Atualização: Se você não estiver conseguindo compilar o código, tente dar um #include <GL/glu.h>

Espero que tenham gostado deste tutorial. Comentários são bem vindos!

35 Responses

  1. jusefinu
    jusefinu 31 de março de 2010 at 17:02 |

    mutxu boum, mim agudô baztantxi!!!1111

    Reply
  2. Leonardo
    Leonardo 14 de abril de 2010 at 11:20 |

    Excelente. Só não precisava falar tão baixinho. ;)

    Reply
  3. Crystian Leão
    Crystian Leão 21 de maio de 2010 at 1:29 |

    Massa o tutorial Marcio, ótimo pra conhecer o funcionamento da ferramenta :)

    Reply
  4. Cristiano
    Cristiano 25 de junho de 2010 at 20:22 |

    Muito bom mesmo. Fácil, bem explicado e direto. Há algum tempo que tento aprender o Qt, mas não consigo sair do lugar. Seu tutorial foi um divisor de águas pra mim. Valeu!

    Reply
  5. Cristiano
    Cristiano 25 de junho de 2010 at 20:53 |

    Tive uma dúvida agora: Após concluiro projeto, como faço para levar apaneas o executável e rodar em outra máquina? Na verdade, nem mesmo na própria máquina, o executável gerado no projeto roda.

    Reply
  6. Cristiano
    Cristiano 25 de junho de 2010 at 20:58 |

    Problema resolvido: Inclui as pastas bin do Qt no path das variáveis de ambiente.

    Reply
  7. Fabio Nunes
    Fabio Nunes 27 de junho de 2010 at 1:53 |

    Marcio muito bom o tutorial, estava procurando exatamente essa explicação que você deu a alguns meses pelo google, trabalhei com o devcpp porém ele não tem as mesmas opções que o QT proporciona e eu estava justamente atrás da utilização de Widget como ambiente OpenGL, queria saber se você tem algum tem um curso especifico de Computação Gráfica com OpenGL a distância, pois estou em brasilia mas me interesso muito pelo assunto.

    Reply
  8. alciso filho
    alciso filho 3 de agosto de 2010 at 23:15 |

    Marcio, show de bola a video aula!
    De fato, é bem melhor que usar GLUT! :D
    Abraços e até breve!!

    Reply
  9. Jefferson Oliveira
    Jefferson Oliveira 21 de agosto de 2010 at 20:47 |

    Mácio… Parabens pelo tutorial. =)

    Muito bom!

    Reply
  10. Rodrigo
    Rodrigo 22 de agosto de 2010 at 17:14 |

    Ótimo tutorial, parabens..

    Viva o Qt e Qt Creator.
    Pra mim são ás melhores ferramentas para c/c++ da atualidade..

    Abraço.

    Reply
  11. Joao
    Joao 22 de setembro de 2010 at 12:22 |

    Ola Marcio muito bom tutorial, estou a tentar configurar o meu widget no QT tal e qual como tu estas a ensinar, mas no fim esta-me a dar um erro e não consigo correr, será que te posso enviar o meu programa para o teu email e tentares-me ajudar por lá, dando uma vista de olhos no meu programa? Cumprimentos
    Joao

    Reply
  12. Carlos
    Carlos 4 de outubro de 2010 at 19:47 |

    ola pessoal, em que versão do QT creator foi feito o tutorial, o que acontece é que cuando eu tento criar o novo projeto não tenho as opções de incluir o QtOpenGl, ao proposito eu tenho a ultima versão do QT creator, obrigado pelas respostas

    Reply
  13. Carlos
    Carlos 8 de outubro de 2010 at 1:42 |

    Obrigado pela resposta, fiz o que vc diz e saiu tudo legal.

    Reply
  14. Fernando Sousa dos Santos
    Fernando Sousa dos Santos 26 de novembro de 2010 at 23:58 |

    Ei Marcio, qual é o link para aquele documento em pdf que aparece na parte 2 do tutorial WHITE PAPER que tem aqueles métodos que é para incrementar no código?

    Reply
  15. Fernando Sousa dos Santos
    Fernando Sousa dos Santos 5 de dezembro de 2010 at 16:13 |

    Marcio pode me ajudar?
    Toda vez que tento dar debug em qualquer código fonte(inclusive esse do opengl) dá esses erros:
    :: error: The Qt version is invalid: Could not determine the path to the binaries of the Qt installation, maybe the qmake path is wrong?
    e
    :: error: The qmake command “” was not found or is not executable.
    Sabe a solução pro meu problema?

    Reply
  16. Rogerio Pimentel
    Rogerio Pimentel 10 de dezembro de 2010 at 9:45 |

    Parabéns pelas apresentações !!!
    Um abraço!
    Rogerio

    Reply
  17. rique
    rique 12 de março de 2011 at 11:23 |

    amigo, otimo tutorial
    mas tenho uma duvida, eu estou tentando re-utilizar o seu trabalho para aprender mesmo e tentar modificado, so que quando edito o design dele, nao acontece nada; a figura do openGL eu edito normal, mas o design n.
    exemplo mudar o botao de lugar, quando executo continua no mesmo lugar.
    grato

    Reply
  18. Rique
    Rique 12 de março de 2011 at 22:30 |

    Ja esta tudo certo, muito obrigado cara!
    “Divisor de Aguas do QT”
    Vlw

    Reply
  19. Rique
    Rique 13 de março de 2011 at 1:45 |

    Parabéns pelo trabalho!

    Reply
  20. Joao
    Joao 13 de março de 2011 at 19:19 |

    Boa noite, alguem sabe quando sai ou se vai sair um aproximo video
    obrigado

    Reply
  21. Antonio dos Santos Reis
    Antonio dos Santos Reis 13 de março de 2011 at 19:31 |

    Boa noite, otimos videos!
    amigo tenho um projeto em OpenGL e o seu tutorial foi muito maravilhoso, mas a glRotatef nao funciona; coloco glRotatef(angulo,0,0,1) em cima do glBegin e simplesmente a figura nao gira; faço o mesmo no java e funciona; o amigo poderia me ajudar?
    desde ja obrigado

    Reply
  22. Lucas Cardoso
    Lucas Cardoso 29 de agosto de 2011 at 22:58 |

    Ola , eu tenho um projeto feito em opengl em que há eventos gerenciados pelos teclados, gostaria de criar um gui a partir do qt, como eu poderia alterar o codigo? o qt creator faz isso facilmente?

    Reply
  23. jose joan
    jose joan 20 de setembro de 2011 at 18:39 |

    como vai, estou com um problema. No Qt tenho um DoubleSpinBox,mas preciso tranformar ele em uma variável para que eu possa fazer calculos com ela, como devo fazer isso, já tentei usar Valuechange(double d) por exemplo, mas não funcionou.

    Reply

Leave a Reply