Desenho de objetos em OpenGL -- Computação Gráfica

jSSeção 5.1  

 

 

         5.1. Iluminação em OpenGL



A abordagem de iluminação em OpenGL será realizada da seguinte forma. Primeiro, serão mostrados os comandos necessários para se criar um modelo de iluminação em OpenGL. E em seguida, serão mostrados os conceitos a respeito de cada modelo de iluminação e também como encaixar os comandos OpenGL dentro destes modelos.

Basicamente existem dois comandos que serão utilizados na criação de um modelo de iluminação:

  • Light - define as características da fonte de luz
  • Material - define as propriedades do material do objeto

Inicialmente será mostrado o comando Light, responsável em definir as características de uma fonte de luz. Veja abaixo:

   >> glLightfv ( source , parameter , pointer_to_array)      
   >> glLightf   ( source , parameter , value)

A diferença entre as duas está nos parâmetro parameter. Alguns  exigem seus atributos como um ponteiro para um vetor e outros exigem um valor . 

O parâmetro source indica qual a fonte de luz que está sendo definida. Em OpenGL é possível definir até 8 fontes de luzes distintas. Elas devem ser nomeadas por constantes da seguinte forma:

    >> GL_LIGHT0
    >> GL_LIGHT1
    >> ...
    >> GL_LIGHTn   >> n  máximo = 7

O parâmetro parameter especifica as características da fonte de luz. 

E por fim o parâmetro pointer_to_array significa os atributos referentes a características.

Por outro lado temos que o comando Material define as propriedades do material do objeto. Abaixo segue a sintaxe para o mesmo:

   >> glMaterialfv(face, type, pointer_to_array) ; ou 
   >> glMaterialf ( face, type, value);  onde:

face -> indica quais as faces (face frontal, face de trás ou ambas).
type -> indica qual propriedade será configurada
pointer_to_array -> indica os atributos referentes a propriedade
value -> atributo referente ao tipo 

As faces podem ser especificadas pelas constantes:

GL_FRONT -> somente as faces da frente
GL_BACK   -> somente as faces de trás 
GL_FRONT_AND_BACK -> ambas

Agora vocês sabem quais comandos serão utilizados na criação de um modelo de iluminação. Não se preocupe em relação a exemplos ou detalhes dos comandos, pois os mesmos serão abordados em tópicos posteriores.

 

 

[principal]

[anterior]

[próxima]