Segunda Lista - Cor


Aquecimento

  1. Inclua no Makefile os comandos necessários para gerar os executáveis dos seguintes programas adaptados do livro OpenGL Programming Guide
    1. smooth.c
    2. bounce.c
    Execute-os. Identifique os trechos de código que definem e manipulam as cores. Explique ainda
    1. o papel de glShadeModel(GL_FLAT) nestes programas; e
    2. os atributos GLUT_INDEX ou GLUT_RGB na chamada da rotina glutInitDisplayMode.
    Observação: A biblioteca GLUT provê a rotina glutSetColor(i, R, G, B) para atribuir ao índice i do mapa de cores os valores R, G e B. Verifique ainda que atribuições "conflitantes" de índices às cores podem afetar as cores de outros aplicativos simultaneamente em execução (Por que?).
  2. Inclua no Makefile os comandos necessários para gerar o executável do programa polys.c. Execute-o atribuindo valores distintos aos argumentos R, G e B da função glColor3f(R,G,B). Visualmente, qual foi a faixa de cores que você conseguiu obter?
  3. Inclua no Makefile os comandos necessários para gerar o executável do programa bezsurf2.c adaptado do programa bezsurf.c pelo Marcelo Malheiros. O novo programa possibilita a alteração da cor da malha pelas teclas R(+vermelho)r(-vermelho)G(+verde)g(-verde)B(+azul)b(-azul).
    Identifique os trechos de código que possibilitam esta manipulação.
  4. Inclua no Makefile os comandos necessários para gerar o executável do programa olympic.c. Este programa suporta dois modos de alocação de cores - indexado e direto (rgb), através das opções -ci e -rgb, respectivamente, no comando de chamada olympic. Compare e justifique os resultados visuais obtidos nos dois modos de operação.

Programação

  1. Altere o modo de definição RGB do programa smooth.c para o Indexado. Compare os resultados visuais.
    Siga a dica dada nas páginas 154-155 do livro OpenGL Programming Guide para melhorar a qualidade da imagem gerada com o modo Indexado. Comente sobre os resultados visuais.
    Pelas constatações, quando você recomendaria o uso do modo Indexado?
  2. Implemente uma interface de definição de cor, segundo o modelo HSV, para modificar iterativamente as cores da superfície de Bézier do programa bezsurf.c. Considere que ao entrar, pelo teclado, O passo de in/decremento deve ser configurável.
    Dica: Consulte a seção 13.3.4 do livro Computer Graphics: Principles and Practice.
  3. Utilize as rotinas providas pelo Mesa/OpenGL para colorir, a seu gosto, a cena que vocês definiram na primeira lista.

Contribuições dos seus colegas ...

  1. Rogério E. Trevisan (1o Semestre de 1999):
    Teste sua percepção visual!
    "Ting vc tem que achar nove faces nesta imagem. Boa sorte!"
    Dica: Procure ver a imagem num monitor TrueColor
  2. Roseane Marcílio de Freitas" (1o Semestre de 2000):
    Teste sua percepção visual!
    "Olá pessoal, achei o recurso utilizado na imagem muito interessante. O objetivo é identificar onde estão os pontos negros."

Voltar para a lista anterior.
Avançar para a próxima lista.