Wavefront OBJect (.obj)

76 / 100

Wavefront OBJect, frequentemente referido apeans como ‘OBJ‘ devida sua extensão praticada (.obj), é o mais popular (e possivelmente mais importante) formato de arquivo de dados de modelagem geométrica para aplicações de gráficos 3D e impressão 3D por várias razões que tentaremos justificar aqui. Este é o formato preferido para impressão multicolor e é amplamente usado como um formato neutro de intercâmbio para modelos 3D inanimados em aplicações de gráficos.

Efetivamente, este formato de arquivo armazena informação literal sobre modelos 3D. Armazena geometria de superfície de modelo 3D, e também, cor e mapeamento de textura (UVW). Contudo, este formato não armazena quaisquer dados sobre cena, isto é, luzes, câmeras, etc, e também não animações ou qualquer outra relação cinemática. Este formato é comumente gerado por estúdios de desenho auxiliado por computador (CAD), com extensão ‘.obj’, como um produto final, o que difere dos arquivos de projeto dos estúdios.

Uso

As duas maiores razões de vermos Wavefront OBJect em toda parte é mérito deste ser neutro e ser regido por uma especificação aberta e “livre como em liberdade“. Este formato é comumente usado para intercambiar modelos 3D devido a onipresença de seu suporte com bons importadores e exportadores em quase todos os estúdios de CAD, bons em razão do que já foi supracitado. Em anos recentes, com a emergência da impressão 3D, este formato vem se tornando muito popular também no nicho da impressão 3D, principalmente devido ao formato STL, próprio para impressão 3D, não suportar informação de color e textura.

O formato de arquivo Wavefront OBJect foi originalmente criado pela Wavefront Technologies para uso de sua aplicação Advanced Visualizer para armazenar geometrias compostas de linhas, polígonos, curvas de forma livre, e superfícies. A mais recente especificação está versionada como 3.0, sobrepondo a especificação anterior versionada como 2.11.

Peculiaridade

As principais diferenças entre o formato Wavefront OBJect e os demais disponíveis é o suporte à informação de cena (tal com luzes) e animações. Este formato não suporta essas informações em contraposição (por exemplo) ao CollaDA. Caso você necessite de animações para seu game ou metragem audiovisual, então seria a vez do formato CollaDA “entrar em cena”.

Vantagem

Primeiramente, como já supracitado, Wavefront OBJect é um formato simples e de especificação aberta. Possui um amplo suporte em importação e exportação através dos estúdios de CAD, o que efetivamente significa que seu modelo em OBJect há menos chances que qualquer outro de ser tratado incorretamente e inconsistentemente. O mesmo já não pode ser dito para os formatos CollaDA (.dae) ou Filmbox (.fbx) por exemplo.

Apesar do CollaDA (.dae) ser também um formato neutro e aberto, é instituído de uma complexidade muito elevada (com XML e os caralhos), o que acaba por gerar inconsistências entre os estúdios de CAD. Já o Filmbox (.fbx) é uma caixa preta de avião, o que força qualquer tentativa de suporte a ser feito por meio de hacks, o que efetivamente “garante” inconsistências.

Material Template Library

O formato Wavefront OBJect (quase) sempre está acompanhado de um arquivo-satélite denominado de material template library, com sua icônica extensão .mtl. Você pensava que esta extensão era apenas uma contração de “material” né?

O formato MTL também é literal (isto é, pode ser aberto num editor de texto), o qual define propriedade de reflexão de luz duma superfície acordando ao modelo Phong de reflexão. Das propriedades deste formato estão inclusivas: cor ambiental, cor difusa, cor especular, transparência, e ademais.

Em adição à propriedades, o formato MTL também suporta indicação de mapa de texel (como uma imagem Targa (.tga), por exemplo), o qual é o mais conveniente método de especificar cores e texturas. No mapeamento de textura, todo ponto na superfície do modelo 3D é mapeado a uma imagem 2D. As coordenadas da imagem 2D possuem atributos como cor e textura.

Deixe um comentário

SIGMA Co. 🇧🇷

SIGMA Co. 🇧🇷