Τι είναι ένα αρχείο OBJ;
Τα αρχεία OBJ χρησιμοποιούνται από την εφαρμογή Advanced Visualizer της Wavefront για τον ορισμό και την αποθήκευση των γεωμετρικών αντικειμένων. Η μετάδοση γεωμετρικών δεδομένων προς τα πίσω και προς τα εμπρός καθίσταται δυνατή μέσω αρχείων OBJ. Τόσο η πολυγωνική γεωμετρία, όπως σημεία, γραμμές, κορυφές υφής, όψεις και γεωμετρία ελεύθερης μορφής (καμπύλες και επιφάνειες) υποστηρίζονται από μορφή OBJ. Αυτή η μορφή δεν υποστηρίζει κινούμενα σχέδια ή πληροφορίες που σχετίζονται με το φως και τη θέση των σκηνών.
Ένα αρχείο OBJ είναι συνήθως ένα τελικό προϊόν της διαδικασίας τρισδιάστατης μοντελοποίησης που δημιουργείται από ένα CAD (Computer Aided Design). Η προεπιλεγμένη σειρά αποθήκευσης κορυφών είναι αριστερόστροφα αποφεύγοντας τη ρητή δήλωση των κανονικών προσώπων. Αν και τα αρχεία OBJ δηλώνουν πληροφορίες κλίμακας σε μια γραμμή σχολίων, ωστόσο δεν έχουν δηλωθεί μονάδες για συντεταγμένες OBJ.
Ιστορία της μορφής 3D OBJ
Η Wavefront Technologies δημιούργησε τη μορφή αρχείου OBJ για την εφαρμογή Advanced Visualizer για την αποθήκευση γεωμετρικών αντικειμένων και τρισδιάστατων δεδομένων. Η έκδοση 2.11 αντικαθίσταται από μια πρόσφατα τεκμηριωμένη έκδοση 3. Η μορφή αρχείου είναι ανοιχτή και έχει εφαρμοστεί από άλλους προμηθευτές για την εφαρμογή τρισδιάστατων γραφικών τους. Η Wavefront Technologies διατήρησε αυτή τη μορφή αρχείου ανοιχτού κώδικα και ουδέτερη.
Μορφή αρχείου OBJ
Στα τρισδιάστατα αντικείμενα, η κωδικοποίηση της γεωμετρίας της επιφάνειας είναι μια απαιτητική εργασία που η μορφή αρχείου OBJ πέτυχε πολύ καλά. Αυτή η μορφή είναι αρκετά ευέλικτη καθώς προσφέρει έναν αριθμό επιλογών για την κωδικοποίηση της γεωμετρίας της επιφάνειας. Ακολουθούν τρεις επιτρεπόμενες μορφές με τα δικά τους πλεονεκτήματα και μειονεκτήματα:
Tessellation με πολυγωνικά πρόσωπα
Η μορφή αρχείου OBJ διευκολύνει τον χρήστη να δημιουργήσει μια επιφάνεια τρισδιάστατου μοντέλου χρησιμοποιώντας απλά ή πολύπλοκα γεωμετρικά σχήματα. Για την κωδικοποίηση της γεωμετρίας της επιφάνειας ενός μοντέλου, ένα αρχείο αποθηκεύει τις κορυφές και τις κανονικές σε κάθε πολύγωνο. Μολονότι το tessellation αυξάνει την αδρότητα του μοντέλου, ωστόσο είναι απαραίτητο να ανακαλύψετε τη σωστή ισορροπία μεταξύ του μεγέθους ενός αρχείου και της ποιότητας εκτύπωσης του.
Καμπύλη ελεύθερης μορφής
Η μορφή αρχείου OBJ επιτρέπει στις καμπύλες επιφάνειας ελεύθερης μορφής που ορίζονται από το χρήστη να καθορίσουν τη γεωμετρία της επιφάνειας ενός μοντέλου. Καθώς οι καμπύλες ελεύθερης μορφής είναι πιο περίπλοκες από τις πολυγωνικές όψεις, καθώς, με λίγες μαθηματικές παραμέτρους, οι καμπύλες γραμμές μπορούν να οριστούν καλύτερα από καμπύλες ελεύθερης μορφής. Επομένως, με λιγότερα δεδομένα σε σύγκριση με τις πολυγωνικές τυπογραφίες, οι καμπύλες ελεύθερης μορφής χρησιμοποιούνται για τη δημιουργία υψηλής ποιότητας κωδικοποίησης οποιουδήποτε τρισδιάστατου μοντέλου χωρίς επέκταση του μεγέθους του αρχείου.
Επιφάνειες ελεύθερης μορφής
Η μορφή αρχείου OBJ καθορίζει επίσης την επικάλυψη της γεωμετρίας της επιφάνειας με μπαλώματα επιφάνειας ελεύθερης μορφής. Αυτό το είδος επιφανειακών μπαλωμάτων ελεύθερης μορφής (NURBS) είναι πολύ κατάλληλο για επιφάνειες χωρίς άκαμπτες ακτινικές διαστάσεις όπως το σώμα ενός φορτηγού, τα φτερά του ελικοπτέρου ή το κύτος ενός σκάφους. Η χρήση επιφανειών ελεύθερης μορφής είναι πολύ πλεονεκτική καθώς είναι πιο ακριβείς για να διατηρούν τα μεγέθη αρχείων μικρότερα με μεγαλύτερη ακρίβεια. Αυτές οι επιφάνειες αποτελούν ουσιαστικό μέρος της αεροδιαστημικής και της αυτοκινητοβιομηχανίας όπου η χαμηλή ακρίβεια δεν συγχωρεί.
Οι ακόλουθες λέξεις-κλειδιά είναι ταξινομημένες ανά τύπο δεδομένων για να ορίσουν τη γεωμετρία της επιφάνειας.
Στοιχεία | Δηλώσεις καμπύλης/σώματος επιφάνειας ελεύθερης μορφής | χαρακτηριστικά καμπύλης/επιφάνειας ελεύθερης μορφής |
---|---|---|
p | Point | parm |
l | Γραμμή | trim |
f | Πρόσωπο | τρύπα |
curv | Curve | scrv |
curv2 | 2D curve | sp |
surf | Επιφάνεια | τέλος |
Προβολή/απόδοση χαρακτηριστικών | g | Όνομα ομάδας |
λοξοτομή | Προβολή λοξοτομής | shadow_obj |
lod | Επίπεδο λεπτομέρειας | trace_obj |
d_interp | Διάλυση παρεμβολής | ctech |
c_interp | Χρωματική παρεμβολή | stech |
usemtl | Όνομα υλικού | mtllib |
Γεωμετρικές κορυφές | ||
v | Γεωμετρικές κορυφές | vn |
vt | Κορυφές υφής | vp |
Χρώμα και υφή
Το αρχείο OBJ επιτρέπει την αποθήκευση πληροφοριών χρώματος και υφής σε μια συσχετισμένη μορφή αρχείου που ονομάζεται Material Template Library (MTL). Τα πολύχρωμα γεωμετρικά μοντέλα αποδίδονται χρησιμοποιώντας αυτά τα δύο αρχεία μαζί. Τα αρχεία MTL βασίζονται σε ASCII και διευκολύνουν την απόδοση σε υπολογιστή, περιγράφοντας τις ιδιότητες ανάκλασης φωτός μιας επιφάνειας χρησιμοποιώντας το μοντέλο της ανάκλασης Phong. Το πρότυπο έχει υιοθετηθεί από μεγάλο αριθμό πωλητών λογισμικού που εκμεταλλεύονται το πλεονέκτημά του για την ανταλλαγή υλικών. Η μορφή MTL είναι ελαφρώς ξεπερασμένη επειδή δεν έχει υποστήριξη στις πιο πρόσφατες τεχνολογίες, όπως χάρτες specular και parallax.