Upload
melia
View
37
Download
0
Embed Size (px)
DESCRIPTION
Formato OBJ. Leandro Tonietto Computação Gráfica. Formato OBJ - Geral. O formato OBJ carrega informações sobre a malha poligonal, sobre o mapeamento de texturas e uso de materiais. - PowerPoint PPT Presentation
Citation preview
Formato OBJ
Leandro Tonietto
Computação Gráfica
Formato OBJ - Geral• O formato OBJ carrega informações sobre a malha poligonal, sobre
o mapeamento de texturas e uso de materiais.• No formato mais básico, o arquivo é composto por um conjunto de
vértices (linhas que começam com “v”), conjunto de normais (linhas que começam com “vn”), conjunto de mapeamentos de texturas (linhas que começam com “vt”) e conjunto de faces (linhas que começam com “f”). É possível ainda que o arquivo seja formado grupos. Neste caso, cada grupo delimita o seu subconjunto de vértices, normais, mapeamentos e faces.
• Os dados de um grupo são delimitados por uma linha com instrução: “g <identificador nominal>” até encontrar um novo “g”.
• Na estrutura de dados do programa, é importante guardar informações sobre o grupo, inclusive, atribuindo um tipo relacionado ao seu nome, para futura classificação e facilitação de mapeamento (textura certa para cada tipo).
Formato OBJ - Geral
• Formato para leitura das faces:Somente vértices:f v1 v2 v3
Completo:f v1/t1/n1 v2/t2/n2 v3/t3/n3
Vértices e normais:f v1//n1 v2//n2 v3//n3
Vértices e texturas:f v1/t1 v2/t2 v3/t3
Formato OBJ - Geral
• Dicas:– As faces não apontam diretamente para os vértices, mas sim
para o seu índice no array de vértices do arquivo.– Os índices começam por 1 no arquivo, no entanto, no array
C/C++, eles começam em 0. Então, na leitura, diminua 1 do valor lido para o índice do vértice da face.
– As faces podem sem triângulos, quadriláteros ou polígonos quaisquer; portanto, não possível prever a quantidade de vértices que terá antes de ler o arquivo. Use vector de GLint.
– Linhas que começam com “#” são comentários e devem ser ignoradas.
– Mais informações podem ser obtidas a partir de: http://www.fileformat.info/format/wavefrontobj/egff.htm
Formato OBJ - Geralgv -0.4389 0.9144 -0.9910v -0.4389 0.8128 -0.9910v -0.4770 0.8128 -0.9910v -0.4770 0.9144 -0.9910v -0.4770 0.9144 0.9902v -0.4770 0.8128 0.9902v -0.4389 0.8128 0.9902v -0.4389 0.9144 0.9902
g U16f 1 2 3f 3 4 1f 4 3 5f 3 6 5f 5 7 8f 5 6 7f 7 2 1f 1 8 7f 1 4 5f 5 8 1f 6 3 7f 3 2 7
Vértices do grupo
Faces do grupo
Formato OBJ - Geral
Diagrama de classes para representar o sistema