Format de geometrie OBJ | |
---|---|
Extensie | .obj |
tip MIME | text/ simplu și model/obiect [1] |
Dezvoltator | Tehnologii Wavefront [d] [2] |
Tip de format | Format model 3D |
OBJ este un format de fișier de descriere a geometriei dezvoltat de Wavefront Technologies pentru pachetul lor de animație Advanced Visualizer . Formatul de fișier este deschis și a fost adoptat de alți dezvoltatori de aplicații de grafică 3D . Poate fi exportat/importat în e-Frontier's Poser , Maya , XSI , Blender , MeshLab , Misfit Model 3D , 3D Studio Max și Rhinoceros 3D , Hexagon , CATIA , Newtek Lightwave , Art of Illusion , milkshape 3d, Modo , Cinema 4D , Zanoza Modeler , PC LIRA , Mineways , etc. În cea mai mare parte, acesta este un format comun.
Formatul de fișier OBJ este un format simplu de date care conține doar geometrie 3D, și anume poziția fiecărui vârf, relația coordonatelor texturii cu vârf, normalul pentru fiecare vârf și parametrii care creează poligoane.
Rândurile care încep cu #sunt comentarii , adică nu sunt procesate și nu afectează rezultatul.
# Acesta este un comentariuFormatul OBJ oferă mai multe tipuri de definiții:
# Lista de vârfuri, cu coordonatele (x,y,z[,w]), w este opțională și implicit este 1.0. v 0,123 0,234 0,345 1,0 v... ... # Coordonatele texturii (u,v,[w]), w este opțional și este implicit 0. # Coordonata texturii în y poate fi specificată ca 1 - v, iar în acest caz x = u vt 0,500 -1,352 [0,234] vt... ... # Normale (x,y,z); normalurile pot să nu fie normalizate . . vn 0,707 0,000 0,707 vn... ... # Parametrii vârfurilor în spațiu (u [,v] [,w]); stare geometrică în formă liberă (vezi mai jos) vp 0,310000 3,210000 2,100000 vp... ... # Definiții suprafețe (laturi) (vezi mai jos) f 1 2 3 f 3/1 4/2 5/3 f 6/4/1 3/5/3 7/6/5 f 6//1 3//3 7//5 f... ... # Grup g Grupa 1 ... # Un obiect o Obiect 1Vârful este specificat în linii care încep cu litera v. Este urmată de coordonate în ordinea x, y, z, și o componentă opțională w. Valoarea weste responsabilă pentru grosimea vârfului și este necesară pentru curbele și suprafețe raționale, nu este necesară setarea, valoarea implicită este 1.0. Unele programe acceptă specificarea culorilor vârfurilor conform modelului RGB prin specificarea valorilor roșu, verde și albastru în intervalul 0 la 1 după coordonate.
O suprafață este definită într-o listă de vârfuri, coordonate de textură și normale. Poligoane ca un pătrat pot fi definite cu mai mult de 3 vârfuri/coordonate de textură/normale.
Coarda care începe cu feste indicele suprafeței. Fiecare suprafață poate consta din trei sau mai multe vârfuri.
f v1 v2 v3 v4...Indexarea începe de la primul element, și nu de la zero, așa cum este obișnuit în majoritatea limbajelor de programare, iar indexarea poate fi, de asemenea, negativă. Un indice negativ indică poziția în raport cu ultimul element (indicele -1 indică ultimul element).
Împreună cu vârfurile, pot fi stocați indicii corespunzători de coordonate a texturii.
f v1/vt1 v2/vt2 v3/vt3 v4/vt4...De asemenea, este acceptabil să stocați indici normali corespunzători.
f v1/vt1/vn1 v2/vt2/vn2 v3/vt3/vn3 v4/vt4/vn4...În absența datelor despre coordonatele texturii, este permisă o înregistrare cu omisiune de indice de textură.
f v1//vn1 v2//vn2 v3//vn3 v4//vn4...Format de material MTL | |
---|---|
Extensie | .mtl |
tip MIME | text/ simplu și model/obiect [1] |
Dezvoltator | Tehnologii Wavefront |
Tip de format | Format textura 3D |
OBJ este unul dintre cele mai populare formate de transfer al geometriei computerului 3D. Informațiile despre aspectul obiectelor (materialelor) sunt transmise în fișiere satelit în format MTL (Material Library). OBJ se referă la un astfel de fișier, dacă este necesar, folosind directiva:
mtllib [nume extern fișier MTL]MTL este un standard stabilit de Wavefront Technologies. Toate informațiile sunt reprezentate de caractere ASCII (lizibile de către om). Standardul MTL este, de asemenea, foarte popular și este acceptat de majoritatea pachetelor de grafică 3D.
Informațiile despre materialele simple din fișier arată astfel:
newmtl material_name1 # Anunțul următorului material # Culori Ka 1.000 1.000 0.000 # Culoarea luminii ambientale (galben) Kd 1.000 1.000 1.000 # Culoare difuză (alb) # Opțiuni de reflecție Ks 0,000 0,000 0,000 # Culoare speculară (0;0;0 - oprit) Ns 10.000 # Coeficient de reflexie speculară (de la 0 la 1000) # Opțiuni de transparență d 0.9 # Transparența este specificată folosind directiva d Tr 0.9 # sau alte implementări de format cu Tr # Postarea următoare newmtl material_name2 ...Toți parametrii sunt opționali. În absența oricărui parametru, programul îl setează automat în mod implicit.