FBX σε OBJ

Ένα αρχείο FBX είναι μια μορφή που χρησιμοποιείται για την ανταλλαγή δεδομένων τρισδιάστατης γεωμετρίας και κινούμενων εικόνων. Τα αρχεία FBX χρησιμοποιούνται στην ανάπτυξη ταινιών, παιχνιδιών και επαυξημένης πραγματικότητας και εικονικής πραγματικότητας (AR/VR).Επίσης, για να ανοίξουμε, να επεξεργαστούμε και να εξάγουμε αρχεία FBX σε αρχεία 2D και 3D υψηλής πιστότητας, χρειαζόμαστε κάποιο λογισμικό τρίτων, όπως το Autodesk FBX Review, κ.λπ. Ενώ, το OBJ είναι μια πολύ απλούστερη μορφή που διατηρεί μόνο τη γεωμετρία (κορυφή, κανονικά, κ.λπ.) και συχνά προορίζεται για δεδομένα πρώτων υλών, μερικά απλά πολύγωνα. Επομένως, ενδέχεται να απαιτείται η απόδοση των αρχείων FBX σε μορφή OBJ. Σε αυτό το άρθρο, θα μάθουμε για τα βήματα σχετικά με τον τρόπο μετατροπής αρχείων FBX μέσω προγραμματισμού σε αρχεία OBJ χρησιμοποιώντας το REST API.

API επεξεργασίας αρχείων 3D

Προκειμένου να δημιουργήσουμε και να επεξεργαστούμε με προγραμματισμό τρισδιάστατα μοντέλα, αντικείμενα και οντότητες, συμπεριλαμβανομένων των Box, Cylinder, Sphere, Torus και Plane, δημιουργήσαμε ένα API που βασίζεται σε REST με το όνομα Aspose.3D Cloud. Εκτελέστε όλες τις λειτουργίες όπως μετασχηματισμός και μετάφραση, κλιμάκωση, παραμετρική μοντελοποίηση, περιστροφή τρισδιάστατων αντικειμένων και ακόμη και εργασία με Triangulate Meshes χωρίς εγκατάσταση λογισμικού. Δεδομένου ότι βασίζεται στην αρχιτεκτονική REST, το API μπορεί να χρησιμοποιηθεί σε επιτραπέζιους υπολογιστές, ιστούς, κινητά και σε υβριδικές εφαρμογές.

Σε αυτό το άρθρο, θα συζητήσουμε τη μετατροπή του αρχείου FBX σε μορφή OBJ χρησιμοποιώντας το απόσπασμα κώδικα C# .NET, επομένως πρέπει να εστιάσουμε στο Aspose.3D Cloud SDK για .NET. Το SDK είναι ένα περιτύλιγμα γύρω από το REST, έτσι ώστε να έχετε όλες τις δυνατότητες της επεξεργασίας αρχείων 3D απευθείας στο αγαπημένο σας IDE.

Εγκατάσταση

Το πρώτο βήμα στη χρήση του SDK είναι η εγκατάστασή του. Το Cloud SDK είναι διαθέσιμο για λήψη μέσω NuGet και GitHub. Επομένως, για να εγκαταστήσετε το SDK από το NuGet, σκεφτείτε να εκτελέσετε την ακόλουθη εντολή στο τερματικό.

nuget install Aspose.3D-Cloud

NuGet Package Manager

Μπορείτε επίσης να εξετάσετε το ενδεχόμενο να εκτελέσετε την ακόλουθη εντολή στην Κονσόλα διαχείρισης πακέτων στο Visual Studio για να ανακτήσετε και να αναφέρετε τη διάταξη Aspose.3D στο έργο σας.

PM> Install-Package Aspose.3D-Cloud

Visual Studio

Μια άλλη προσέγγιση είναι η εγκατάσταση απευθείας στη λύση Visual Studio:

  1. Ανοίξτε την Εξερεύνηση λύσεων.
  2. Αναπτύξτε το έργο και κάντε δεξί κλικ στο φάκελο Πακέτα στη λύση σας.
  3. Επιλέξτε Διαχείριση πακέτων NuGet…
  4. Κάντε κλικ στην καρτέλα Αναζήτηση και αναζητήστε το “Aspose.3D-Cloud”
  5. Κάντε κλικ στο πακέτο Aspose.3D-Cloud από τα αποτελέσματα αναζήτησης
  6. Επιλέξτε την κατάλληλη έκδοση στη δεξιά καρτέλα και κάντε κλικ στο κουμπί Εγκατάσταση.
Aspose.3D-Cloud NuGet

Εικόνα 1:- Aspose.3D Cloud as NuGet πακέτο στο Visual Studio.

Cloud Dashboard

Στην Aspose, η Εμπιστευτικότητα, η Ακεραιότητα και η Διαθεσιμότητα των δεδομένων είναι υψίστης σημασίας. Επομένως, μόνο εξουσιοδοτημένα άτομα μπορούν να έχουν πρόσβαση στα API του Cloud καθώς και στα αρχεία που είναι αποθηκευμένα μέσω του χώρου αποθήκευσης Cloud. Το επόμενο σημαντικό βήμα είναι η δημιουργία ενός δωρεάν λογαριασμού συνδρομής μέσω του Aspose.Cloud dashboard. Η συνδρομή είναι δωρεάν και δεν απαιτούνται στοιχεία πιστωτικής κάρτας ή πληρωμής. Κάτω από τον δωρεάν λογαριασμό συνδρομής, μπορείτε να εκτελέσετε έως και 150 δωρεάν αιτήματα επεξεργασίας εγγράφων.

Τώρα χρησιμοποιήστε τον λογαριασμό σας στο GitHub ή στο Google, απλώς Εγγραφείτε. Διαφορετικά, κάντε κλικ στο κουμπί Δημιουργία νέου λογαριασμού και δώστε τις απαιτούμενες πληροφορίες. Τώρα συνδεθείτε στον πίνακα εργαλείων χρησιμοποιώντας διαπιστευτήρια και αναπτύξτε την ενότητα Εφαρμογές από τον πίνακα εργαλείων και μετακινηθείτε προς τα κάτω προς την ενότητα Διαπιστευτήρια πελάτη για να δείτε στοιχεία Client ID και Client Secret.

Διαπιστευτήρια πελάτη

Εικόνα 2:- Διαπιστευτήρια πελάτη στον πίνακα ελέγχου Aspose.Cloud.

FBX σε OBJ σε C#

Ακολουθήστε τα βήματα που καθορίζονται παρακάτω για να πραγματοποιήσετε τη μετατροπή του FBX σε μορφή OBJ χρησιμοποιώντας το απόσπασμα κώδικα C# .NET.

  • Πρώτα πρέπει να δημιουργήσουμε ένα στιγμιότυπο της κλάσης ThreeDCloudApi ενώ διαβιβάζουμε το Client ID και το Client Secret ως ορίσματα.
  • Δεύτερον, φορτώστε το αρχείο εισόδου FBX από το τοπικό σύστημα στο αντικείμενο FileStream.
  • Τώρα ανεβάστε το αρχείο στο χώρο αποθήκευσης cloud χρησιμοποιώντας τη μέθοδο UploadFile(…) της κλάσης ThreeDCloudApi.
  • Το επόμενο βήμα είναι να καλέσετε τη μέθοδο PostConvertByFormatWithHttpInfo(…) η οποία λαμβάνει ως ορίσματα το όνομα του αρχείου εισόδου, τη μορφή εξόδου και το όνομα αρχείου που προκύπτει.
  • Τέλος, εκτυπώστε το μήνυμα επιτυχίας στην κονσόλα και αυτή τη στιγμή, η έξοδος θα αποθηκευτεί στο χώρο αποθήκευσης Cloud.
// Λήψη ClientID από https://dashboard.aspose.cloud/
string clientSecret = "d757548a9f2558c39c2feebdf85b4c44";
string clientID = "4db2f826-bf9c-42e7-8b2a-8cbca2d15553";

// όνομα του αρχείου εισόδου FBX
String inputFileName = "Wolf-Blender-2.82a.fbx";
// προκύπτουσα μορφή αρχείου
String newFormat = "wavefrontobj";
// όνομα του αρχείου εξόδου
String newFileName = "resultant.obj";

// δημιουργήστε μια παρουσία του ThreeDCloud API
ThreeDCloudApi threeDCloudApi = new ThreeDCloudApi("client_credentials", clientID, clientSecret);

try
{
    // φορτώστε την είσοδο FBX από την τοπική μονάδα δίσκου
    using (var inputStream = new FileStream("C:\\Users\\nayyer\\Downloads\\" + inputFileName, FileMode.Open))
    {
        // μεταφορτώστε το αρχείο στο χώρο αποθήκευσης Cloud
        threeDCloudApi.UploadFile(inputFileName, inputStream);
        
        // εκκινήστε τη λειτουργία μετατροπής αρχείων
        var response = threeDCloudApi.PostConvertByFormatWithHttpInfo(inputFileName, newFormat, newFileName, null, isOverwrite: true, null);
        
        // μήνυμα επιτυχίας εκτύπωσης εάν η μετατροπή είναι επιτυχής
        if (response != null && response.Equals("OK"))
        {
            Console.WriteLine("Successfully converted FBX to OBJ !");
            Console.ReadKey();
        }
    }
}catch (Exception ex)
{
    Console.WriteLine("error:" + ex.Message + "\n" + ex.StackTrace);
}

Για λόγους αναφοράς, τα δείγματα αρχείων που χρησιμοποιούνται στο παραπάνω παράδειγμα μεταφορτώνονται μέσω Wolf-Blender-2.82a.fbx και resultant.obj.

Μετατρέψτε το FBX σε OBJ χρησιμοποιώντας την εντολή cURL

Η αρχιτεκτονική REST των API του Cloud σάς επιτρέπει να έχετε πρόσβαση σε αυτά μέσω εντολών cURL, ώστε να μπορούμε επίσης να έχουμε πρόσβαση στο Aspose.3D Cloud μέσω εντολών cURL. Ταυτόχρονα, τα API μας είναι προσβάσιμα μόνο σε εξουσιοδοτημένα άτομα, επομένως πρέπει πρώτα να δημιουργήσουμε ένα διακριτικό πρόσβασης JWT με βάση τα εξατομικευμένα διαπιστευτήρια πελάτη μας. Εκτελέστε την ακόλουθη εντολή για τη δημιουργία διακριτικών πρόσβασης JWT.

curl -v "https://api.aspose.cloud/connect/token" \
-X POST \
-d "grant_type=client_credentials&client_id=4db2f826-bf9c-42e7-8b2a-8cbca2d15553&client_secret=d757548a9f2558c39c2feebdf85b4c44" \
-H "Content-Type: application/x-www-form-urlencoded" \
-H "Accept: application/json"

Τώρα πρέπει να ανεβάσουμε το αρχείο στο χώρο αποθήκευσης cloud ενώ εκτελούμε την παρακάτω εντολή.

curl -X PUT "https://api.aspose.cloud/v3.0/3d/storage/file/Esso.3ds" \
-H  "accept: application/json" \
-H  "authorization: Bearer <JWT Token>" \
-H  "Content-Type: multipart/form-data" \
-d {"File":{c:\Users\nayyer\Esso.3ds}} -v

Μόλις δημιουργηθεί το διακριτικό πρόσβασης JWT, εκτελέστε την ακόλουθη εντολή για να μετατρέψετε το αρχείο FBX σε μορφή OBJ. Παρακάτω δίνονται οι λεπτομέρειες των παραμέτρων που γίνονται δεκτές από το PostConvertByFormat API

  • όνομα - Το όνομα του αρχείου προέλευσης.
  • newformat - Η μορφή του νέου αρχείου.
  • newfilename - Το όνομα του νέου αρχείου.
  • φάκελος (προαιρετικό) - Ο φάκελος του αρχείου προέλευσης.
  • IsOverwrite (προαιρετικό) - Αντικατάσταση του αρχείου προέλευσης; (η προεπιλεγμένη τιμή είναι ψευδής)
  • αποθήκευση (προαιρετικό) - Ο τύπος αποθήκευσης.
curl -X POST "https://api.aspose.cloud/v3.0/3d/saveas/newformat?name=Wolf-Blender-2.82a.fbx&newformat=wavefrontobj&newfilename=Converted.obj&IsOverwrite=true" \
-H  "accept: application/json" \
-H  "authorization: Bearer <JWT Token>" \
-v

Αίτημα URL

https://api.aspose.cloud/v3.0/3d/saveas/newformat?name=Esso.3ds&newformat=FBX&newfilename=Iphone.fbx&IsOverwrite=false

Σύναψη

Σε αυτό το άρθρο, συζητήσαμε τα βήματα σχετικά με τον τρόπο μετατροπής του αρχείου FBX σε μορφή OBJ χρησιμοποιώντας το απόσπασμα κώδικα C# .NET και χρησιμοποιώντας τις εντολές cURL. Επιπλέον, τα Cloud SDK μας έχουν αναπτυχθεί σύμφωνα με το μοντέλο αδειοδότησης Opensource, επομένως ο πλήρης πηγαίος κώδικας μπορεί να ληφθεί από το GitHub.

Για να ανακεφαλαιώσουμε, παραθέτουμε παρακάτω τις τρισδιάστατες μορφές που υποστηρίζονται αυτήν τη στιγμή από το Cloud API

Additive Manufacturing Format AMF, 3D Studio 3DS, AVEVA RVM, Google Draco DRC, Collada DAE, AutoCAD DXF, Autodesk FBX, Wavefront OBJ, 3D PDF, Πολύγωνο Μορφή αρχείου PLY, Standard Triangle Language STL, Universal3D Transmission U3D, GLT

Σας ενθαρρύνουμε να δοκιμάσετε να χρησιμοποιήσετε το API μας και σε περίπτωση που αντιμετωπίσετε προβλήματα ή έχετε σχετικά ερωτήματα, μη διστάσετε να επικοινωνήσετε μαζί μας μέσω του Δωρεάν φόρουμ υποστήριξης.

Σχετικά άρθρα

Συνιστούμε επίσης να επισκεφτείτε τους παρακάτω συνδέσμους και να μάθετε περισσότερα σχετικά με τις δυνατότητες των βραβευμένων API μας