.NET में 3D मॉडल कैसे बदलें
Aspose.3D for .NET फ़ॉर्मेट रूपांतरण को दो‑चरणीय प्रक्रिया बनाता है: स्रोत फ़ाइल को Scene.Open() के साथ लोड करें, फिर लक्ष्य फ़ॉर्मेट को Scene.Save() के साथ सहेजें। आउटपुट फ़ॉर्मेट फ़ाइल एक्सटेंशन से अनुमानित किया जाता है।
चरण-दर-चरण गाइड
चरण 1: पैकेज स्थापित करें
dotnet add package Aspose.3D --version 26.1.0चरण 2: नेमस्पेसेस आयात करें
using Aspose.ThreeD;
using Aspose.ThreeD.Formats;चरण 3: स्रोत फ़ाइल लोड करें
var scene = new Scene();
scene.Open("input.fbx");चरण 4: लक्ष्य स्वरूप में सहेजें
scene.Save("output.glb");लाइब्रेरी एक्सटेंशन से लक्ष्य फ़ॉर्मेट का पता लगाती है। समर्थित निर्यात फ़ॉर्मेट: OBJ, STL, glTF 2.0 / GLB, FBX, COLLADA, और 3MF.
चरण 5: फ़ॉर्मेट-विशिष्ट सहेजने के विकल्पों का उपयोग करें
सूक्ष्म नियंत्रण के लिए, एक SaveOptions उपवर्ग पास करें:
// FBX output — always produces binary FBX
// FbxSaveOptions exists but has no format-specific properties in this version
scene.Save("output.fbx");
// OBJ with flipped coordinate system
scene.Save("output.obj", new ObjSaveOptions { FlipCoordinateSystem = true });
// COLLADA with indented XML
scene.Save("output.dae", new ColladaSaveOptions { Indented = true });सामान्य रूपांतरण रेसिपी
| Source | Target | Code |
|---|---|---|
| OBJ to GLB | scene.Open("input.obj"); scene.Save("output.glb"); | वेब व्यूअर्स के लिए बाइनरी glTF |
| FBX to STL | scene.Open("input.fbx"); scene.Save("output.stl"); | 3D प्रिंटिंग के लिए त्रिकोणीय मेष |
| glTF to COLLADA | scene.Open("input.gltf"); scene.Save("output.dae"); | DAE एक्सचेंज फ़ॉर्मेट |
| STL to OBJ | scene.Open("input.stl"); scene.Save("output.obj"); | मॉडलिंग टूल्स के लिए Wavefront |
सामान्य समस्याएँ और समाधान
आउटपुट फ़ाइल खाली है या बहुत छोटी है
सुनिश्चित करें कि स्रोत फ़ाइल सफलतापूर्वक लोड हो गई है। scene.RootNode.ChildNodes.Count को Open() के बाद जाँचें।
रूपांतरण के दौरान खोए गए सामग्री
सभी फ़ॉर्मेट समान सामग्री गुण नहीं ले जाते। OBJ सामग्री Lambert/Phong का उपयोग करती हैं; glTF PBR का उपयोग करता है। सामग्री मैपिंग फ़ॉर्मेट सीमाओं के पार सर्वोत्तम प्रयास है।
स्रोत और आउटपुट के बीच स्केल अंतर
विभिन्न उपकरण विभिन्न इकाई प्रणालियों का उपयोग करते हैं। आयात पर ObjLoadOptions.Scale लागू करें या सहेजने से पहले node.Transform.Scale समायोजित करें।
अक्सर पूछे जाने वाले प्रश्न (FAQ)
क्या मैं PLY को किसी अन्य फ़ॉर्मेट में परिवर्तित कर सकता हूँ?
PLY केवल आयात के लिए है। PLY फ़ाइल लोड करें और किसी भी निर्यात स्वरूप (OBJ, STL, GLB, FBX, COLLADA) में सहेजें।
क्या रूपांतरण एनीमेशन को संरक्षित करता है?
एनीमेशन डेटा (AnimationClip) तब संरक्षित रहता है जब दोनों फ़ॉर्मेट इसे समर्थन करते हैं (उदाहरण के लिए, FBX से glTF)। STL और OBJ एनीमेशन डेटा नहीं ले जाते।
क्या मैं कई फ़ाइलों को बैच-कन्वर्ट कर सकता हूँ?
एक लूप में प्रत्येक फ़ाइल के लिए एक नया Scene बनाएं। प्रत्येक Scene स्वतंत्र है और इसे समानांतर रूप से प्रोसेस किया जा सकता है।