STL vs OBJ vs 3MF: কোন 3D ফাইল ফরম্যাট ব্যবহার করবেন?
এক রঙের প্রিন্ট শুধু স্লাইস করতে হলে STL ব্যবহার করুন; রেন্ডারিং বা গেম ইঞ্জিনের জন্য মডেলে টেক্সচার থাকলে OBJ; আর আপনার স্লাইসার সাপোর্ট করলে এবং ইউনিট, রং ও একাধিক পার্ট অক্ষত রাখতে চাইলে 3MF। মেশের সঙ্গে কোন মেটাডেটা যাবে তা ফরম্যাট ঠিক করে; মেশটি নিজে ত্রুটিমুক্ত কি না, তা ফরম্যাট কখনো ঠিক করে না।
STL: শুধু ত্রিভুজের একটি তালিকা, আর কিছু নয়
STL লেখা হয়েছিল 1987 সালে 3D Systems-এর প্রথম স্টেরিওলিথোগ্রাফি মেশিনের জন্য, আর এর নকশায় সেই উৎস স্পষ্ট। একটি ফাইল হলো ত্রিভুজের সমতল তালিকা, প্রতিটি ত্রিভুজ একটি ফ্যাসেট নরমাল ও তিনটি কোণের বিন্দু দিয়ে বর্ণিত। কোনো শেয়ার্ড ভার্টেক্স টেবিল নেই, তাই ছয়টি ত্রিভুজ যে কোণে মিলেছে সেটি ছয়বার লেখা হয়। ইউনিটের কোনো ঘরও নেই: 25 মানে মিলিমিটার, ইঞ্চি বা মিটার যে কোনোটি হতে পারে, আর প্রায় সব স্লাইসার মিলিমিটার ধরে নেয়। রং, টেক্সচার ও অংশের নাম মূল ফরম্যাটে রাখার জায়গাই নেই, আর ঠিক এ কারণেই প্রতিটি স্লাইসার, CAD প্যাকেজ ও প্রিন্ট সার্ভিস আজও এটি পড়তে পারে।
STL দুই ধরনের এনকোডিংয়ে আসে। ASCII STL সবকিছু টেক্সটে লেখে, যেমন facet normal, outer loop ও vertex 12.5 0 3.2 লাইন, তাই টেক্সট এডিটরে খুলে সংখ্যাগুলো পড়া যায়। বাইনারি STL শুরু হয় 80 বাইটের হেডার ও 4 বাইটের ত্রিভুজ সংখ্যা দিয়ে, তারপর প্রতিটি ত্রিভুজ রাখে বারোটি 4 বাইটের ফ্লোট এবং 2 বাইটের অ্যাট্রিবিউট ঘর হিসেবে: ঠিক 50 বাইট প্রতি ত্রিভুজে। এই নিয়মে সাইজ আগে থেকে আন্দাজ করা সহজ। দশ লাখ ত্রিভুজের মডেল বাইনারিতে প্রায় 50 MB, আর একই মেশের ASCII সংস্করণ সাধারণত চার থেকে ছয় গুণ বড়, কারণ প্রতিটি অঙ্ক একেকটি অক্ষর হয়ে যায়।
সরলতাই এর শক্তি, আবার ফাঁদও। STL বলতে পারে না এটি এক অংশ না তিন অংশ হওয়ার কথা ছিল, ইঞ্চিতে এক্সপোর্ট হয়েছে কি না, বা ত্রিভুজগুলো সত্যিই কোনো সলিড ঘিরে আছে কি না। স্লাইসার কাঁচা কোঅর্ডিনেট থেকে তা অনুমান করে, আর ভুল অনুমান করলে অংশ 25.4 গুণ ছোট হয় বা একটি দেয়াল বাদ পড়ে। নিজে ডিজাইন করা এক রঙের অংশ মিলিমিটারে এক্সপোর্ট করলে এসবের কিছুই সমস্যা নয়, এবং STL-ই সবচেয়ে কম প্রত্যাখ্যাত হওয়া ফরম্যাট থাকে।
OBJ: পলিগন, UV ও আলাদা একটি ম্যাটেরিয়াল ফাইল
OBJ এসেছে Wavefront Technologies থেকে, যাদের Advanced Visualizer সফটওয়্যার 1980-র দশকের শেষে এটি ব্যবহার করত, আর 1990-এর দশকে এটি সাধারণ টেক্সট ফরম্যাট হিসেবে ছড়িয়ে পড়ে যা প্রায় সব 3D প্রোগ্রাম আদানপ্রদান করতে পারত। STL-এর মতো নয়, এটি ভার্টেক্স তালিকা রাখে এবং ইনডেক্স দিয়ে ফেস বানায়, তাই শেয়ার্ড কোণ একবারই জমা হয়, আর ফেস ত্রিভুজ, চতুর্ভুজ বা বড় পলিগন হতে পারে। v দিয়ে শুরু লাইনে অবস্থান, vt-তে টেক্সচার কোঅর্ডিনেট (UV), vn-এ নরমাল এবং f-এ ফেস থাকে। গ্রুপ (g) ও অবজেক্ট (o) অংশগুলোর নাম দেয়, ফলে Blender, Maya বা ZBrush-এ আসা-যাওয়ার পরেও OBJ-এর কাঠামো অক্ষুণ্ণ থাকে।
চেহারার তথ্য .obj ফাইলের বাইরে থাকে। mtllib লাইন একটি সহযোগী .mtl ফাইলের নাম দেয়, আর usemtl লাইন ফেসে ম্যাটেরিয়াল বরাদ্দ করে। .mtl ফাইলে Kd (ডিফিউজ)-এর মতো রং থাকে এবং map_Kd wood.png-এর মতো এন্ট্রি দিয়ে টেক্সচার ছবির দিকে নির্দেশ করে। তাই টেক্সচারযুক্ত OBJ কমপক্ষে তিনটি ফাইল: জ্যামিতি, ম্যাটেরিয়াল লাইব্রেরি ও এক বা একাধিক ছবি, সবই আপেক্ষিক পাথে উল্লেখ করা। শুধু .obj পাঠালে প্রাপক ধূসর মডেল দেখবেন। গেম ও VFX পাইপলাইনে এই বিভাজন কাজের, কারণ শিল্পীরা জ্যামিতি না ছুঁয়ে টেক্সচার বদলান; আবার ডাউনলোড করা মডেল ভুল দেখানোর এটিই সবচেয়ে সাধারণ কারণ।
স্কেলের ক্ষেত্রে OBJ-এরও STL-এর মতোই অন্ধ দিক আছে: এটি ইউনিট ছাড়া শুধু সংখ্যা রাখে। বেশিরভাগ মডেলিং টুল মিটার বা সেন্টিমিটারে লেখে, অথচ স্লাইসার মিলিমিটার পড়ে, তাই গেম অ্যাসেট স্টোর থেকে পাওয়া OBJ 10 বা 1,000 গুণ ভুল মাপে আসতে পারে। প্রিন্টিংয়ের জন্য OBJ-এ এমন কিছু নেই যা স্লাইসার ব্যবহার করে, শুধু কয়েকটি টুলে প্রতি ভার্টেক্স রং ছাড়া, তাই আর্ট অ্যাসেট প্রিন্ট করতে হলে রেন্ডারিংয়ের জন্য টেক্সচার রেখে স্লাইসারকে পরিষ্কার মেশ পাঠানোই সাধারণত সহজ। উল্টো পথে, প্রিন্ট মডেল থেকে রেন্ডারিং বা গেম ওয়ার্কফ্লোতে যাওয়ার সবচেয়ে সংক্ষিপ্ত পথ হলো STL থেকে OBJ কনভার্ট করা।
3MF: প্রিন্টিংয়ের জন্য তৈরি ZIP প্যাকেজ
3MF প্রকাশিত হয় 2015 সালে 3MF Consortium দ্বারা, Microsoft-এর শুরু করা একটি গোষ্ঠী, যাতে প্রিন্টিং ও CAD শিল্পের কোম্পানিগুলো আছে। একটি .3mf ফাইল হলো ZIP আর্কাইভ, যে কনটেইনার ফরম্যাট নিয়ে ZIP vs RAR vs 7z-এ আলোচনা হয়েছে। নাম বদলে .zip করলে পাবেন মেশসহ 3D/3dmodel.model XML ফাইল, একটি কনটেন্ট-টাইপ ফাইল, রিলেশনশিপ ফাইল এবং প্রায়ই থাম্বনেইল ও স্লাইসার কনফিগারেশন। প্রতিটি মডেল নিজের ইউনিট ঘোষণা করে (মাইক্রন, মিলিমিটার, সেন্টিমিটার, ইঞ্চি, ফুট বা মিটার), তাই STL ও OBJ-এর স্কেল সমস্যা এখানে হয়ই না। রং, বেস ম্যাটেরিয়াল, একাধিক অবজেক্ট ও বিল্ড প্লেটে তাদের অবস্থান সবই স্পেসিফিকেশনের অংশ।
স্পেসিফিকেশন আরও চায় যে মেশ ম্যানিফোল্ড ও সামঞ্জস্যপূর্ণ দিকমুখী হবে: প্রতিটি এজ ঠিক দুটি ত্রিভুজের মধ্যে ভাগ করা এবং সবগুলো বাইরের দিকে মুখ করা। নিয়ম মানা এক্সপোর্টার STL-এর মতো খোলা, নিজেকে ছেদ করা জ্যামিতি লিখতে পারে না। বর্তমান টুলগুলোতে সমর্থন ব্যাপক। PrusaSlicer, Bambu Studio, OrcaSlicer ও UltiMaker Cura 3MF পড়ে, PrusaSlicer ও Bambu Studio পুরো প্রজেক্ট .3mf হিসেবে সেভ করে যার ভেতরে প্রিন্ট সেটিংস ও আঁকা রং থাকে, আর Windows-এ Microsoft-এর 3D Builder অ্যাপ সরাসরি খোলে। দুর্বল দিক হলো পুরনো ফার্মওয়্যার, প্রিন্ট-ফার্ম পোর্টাল ও CAD ইমপোর্টার যারা এখনও STL চায়; সেগুলোর জন্য 3MF কে STL-এ কনভার্ট করুন এবং মেনে নিন যে বাড়তি তথ্য পেছনে থেকে যাবে।
| from ↓ · to → | Units | Color | Textures | একাধিক অংশ | প্রিন্ট সেটিংস | ম্যানিফোল্ড নিয়ম |
|---|---|---|---|---|---|---|
| STL | – STL to Units: no | – STL to Color: no | – STL to Textures: no | – STL to একাধিক অংশ: no | – STL to প্রিন্ট সেটিংস: no | – STL to ম্যানিফোল্ড নিয়ম: no |
| OBJ | – OBJ to Units: no | OBJ to Color: yes | OBJ to Textures: yes | OBJ to একাধিক অংশ: yes | – OBJ to প্রিন্ট সেটিংস: no | – OBJ to ম্যানিফোল্ড নিয়ম: no |
| 3MF | 3MF to Units: yes | 3MF to Color: yes | 3MF to Textures: yes | 3MF to একাধিক অংশ: yes | 3MF to প্রিন্ট সেটিংস: yes | 3MF to ম্যানিফোল্ড নিয়ম: yes |
কাজ অনুযায়ী ফরম্যাট বাছাই
সঠিক ফরম্যাট নির্ভর করে ফাইলটি এরপর কোথায় যাবে তার ওপর, কোনটি নতুন তার ওপর নয়। পরের গন্তব্য স্লাইসার এবং অংশ এক রঙের হলে STL ঠিকই আছে, আর প্রতিটি ফোরাম, মডেল লাইব্রেরি ও প্রিন্ট সার্ভিস এখনও এটি বোঝে। পরের গন্তব্য রেন্ডারার, গেম ইঞ্জিন বা অন্য শিল্পীর মডেলিং টুল হলে OBJ সেই UV, নরমাল ও নামযুক্ত গ্রুপ রাখে যা STL ফেলে দেয়, আর এর টেক্সট রূপে সমস্যা খুঁজে দেখা সহজ।
ফাইলে জ্যামিতির চেয়ে বেশি তথ্য থাকলে 3MF-এর প্রয়োজন হয়। Bambu Studio-তে রং করা বহুরঙা প্রিন্ট, একটি কাজের জন্য সাজানো বারোটি অংশের প্লেট, ইঞ্চিতে ডিজাইন করা অংশ, বা একই লেয়ার হাইট ও ইনফিল সহ আবার খুলতে চাওয়া প্রজেক্ট, সবকিছুতেই 3MF লাগে, কারণ এখানকার আর কোনো ফরম্যাট সেই তথ্য ধরে রাখতে পারে না। একাধিক গন্তব্যে পাঠাতে হলে সবচেয়ে সমৃদ্ধ সংস্করণ মাস্টার কপি হিসেবে রাখুন এবং কনভার্সনের পর কনভার্সন না করে 3D মডেল কনভার্টার দিয়ে তা থেকে সরল সংস্করণ এক্সপোর্ট করুন।
সাধারণ প্রিন্টের জন্য STL
একটি অংশ, এক রং, মিলিমিটারে এক্সপোর্ট করা। প্রতিটি স্লাইসার, CAD ইমপোর্ট ডায়ালগ ও প্রিন্ট-সার্ভিস আপলোড ফর্মে খোলে।
টেক্সচারযুক্ত মডেলের জন্য OBJ
Blender, Maya, Unity বা Unreal-এর জন্য UV, নরমাল ও নামযুক্ত গ্রুপ। .mtl ফাইল ও টেক্সচার ছবিগুলো সাথে পাঠান।
আধুনিক স্লাইসারের জন্য 3MF
আসল ইউনিট, রং, একাধিক অবজেক্ট ও প্রিন্ট সেটিংস এক ZIP-এ। PrusaSlicer ও Bambu Studio-র নেটিভ প্রজেক্ট ফরম্যাট।
3D ফাইলে ভুল হওয়ার পাঁচটি কারণ
ফরম্যাটের দোষ দেওয়া বেশিরভাগ ব্যর্থ প্রিন্ট আর ভাঙা ইমপোর্টের আসল সমস্যা থাকে মেশে, অথবা গ্রহণকারী প্রোগ্রাম মেশ সম্পর্কে যা ধরে নিয়েছিল তাতে। STL সবচেয়ে ঝুঁকিপূর্ণ, কারণ ভুল ধরার মতো কোনো মেটাডেটা এতে থাকে না। OBJ-তে স্কেল আর ফাইল হারিয়ে যাওয়ার সমস্যা একই রকম। 3MF নকশার কারণেই বেশিরভাগ সমস্যা এড়ায়, তবে অসতর্ক এক্সপোর্টার তাতেও খারাপ মেশ লিখে ফেলতে পারে। প্রতিটি সমস্যা দেখতে কেমন এবং সাধারণত কোথা থেকে আসে, তা জানতে নিচের সারিগুলো খুলুন।
নন-ম্যানিফোল্ড মেশ
একটি ত্রিভুজ বা তিন বা তার বেশি ত্রিভুজ ভাগ করা এজ, পৃষ্ঠের মাঝে ফাঁক, অথবা শূন্য পুরুত্বের দেয়াল। স্লাইসারে লেয়ার বাদ পড়া, এলোমেলো ছিদ্র বা খোলা এজ নিয়ে সতর্কবার্তা দেখা যায়। কারণ থাকে মডেলিং বা এক্সপোর্টে, প্রায়ই যেসব অংশ শুধু স্পর্শ করে আছে সেগুলো মার্জ করার ফলে।
উল্টে যাওয়া নরমাল
কিছু ত্রিভুজ ভেতরের দিকে মুখ করে থাকে। রেন্ডারারে কালো বা স্বচ্ছ দাগ দেখা যায়, আর স্লাইসার ওই অংশকে ফাঁকা জায়গা ধরতে পারে। Blender, Meshmixer বা স্লাইসারের রিপেয়ার টুলে নরমাল পুনরায় হিসাব করার কমান্ড দিলে ঠিক হয়ে যায়।
মিলিমিটার আর ইঞ্চির গোলমাল
ইঞ্চিতে আঁকা অংশ মিলিমিটার ধরে নেওয়া স্লাইসারে ২৫.৪ গুণ ছোট হয়ে আসে। সেন্টিমিটারকে মিলিমিটার পড়লে ১০ গুণ ভুল হয়। STL ও OBJ একক সংরক্ষণ করতে পারে না, তাই এক্সপোর্ট বা কনভার্টের সময় আপনাকে একক ঠিক করে দিতে হয়।
হারানো .mtl ফাইল বা টেক্সচার
যে OBJ ধূসর বা ম্যাজেন্টা রঙে লোড হয়, তার ম্যাটেরিয়াল লাইব্রেরি বা ছবি হারিয়ে গেছে, অথবা .mtl-এর ভেতরের পাথ আসল শিল্পীর কম্পিউটারের কোনো ফোল্ডারের দিকে নির্দেশ করছে। সব ফাইল একই ফোল্ডারে রাখুন এবং একসাথে জিপ করুন।
বিশাল ASCII STL ফাইল
ASCII STL হিসেবে সেভ করা বিস্তারিত স্ক্যান কয়েকশো মেগাবাইট ছাড়িয়ে যেতে পারে, ফলে স্লাইসার ধীর হয় এবং আপলোডের সীমায় আটকে যায়। একই মেশ বাইনারি STL হিসেবে আবার এক্সপোর্ট করলে একটি ত্রিভুজও না বদলে আকার প্রায় পাঁচ ভাগের এক ভাগ হয়ে যায়।
প্রতিটি ফরম্যাটের ফাইল সাইজ সাধারণত কত হয়
আকার নির্ভর করে কাঠামোর ওপর। বাইনারি STL-এ প্রতি ত্রিভুজ নির্দিষ্ট ৫০ বাইট, তাই এক্সপোর্টের আগেই হিসাব করা যায়। ASCII STL প্রতিটি কোণ টেক্সট হিসেবে বারবার লেখে, তাই সাধারণত বাইনারির চার থেকে ছয় গুণ হয়। OBJ প্রতিটি শেয়ার করা ভার্টেক্স একবার রেখে ইনডেক্স দিয়ে উল্লেখ করে, তাই সাধারণ বদ্ধ মেশে ASCII STL-এর চেয়ে ছোট হয় এবং মোটামুটি বাইনারি STL-এর কাছাকাছি থাকে। UV আর নরমাল থাকলে বড় হয়। 3MF ইনডেক্স করা XML রাখে এবং ZIP-এর ভেতরে কম্প্রেস করে, তাই একই জ্যামিতির জন্য সাধারণত তিনটির মধ্যে সবচেয়ে ছোট হয়।
নিচের সংখ্যাগুলো প্রায় ৫,০০,০০০ ত্রিভুজের একটি বদ্ধ মেশের জন্য সাধারণ, যেমন বিস্তারিত একটি ফিগারিন। বাস্তব ফাইল কোঅর্ডিনেটের নির্ভুলতা আর এক্সপোর্টারভেদে আলাদা হয়, তাই এগুলোকে মোটামুটি পরিমাণ হিসেবে দেখুন। প্রিন্ট সার্ভিস আপলোডে সীমা দিলে, অথবা 3MF থেকে এক্সপোর্ট করা STL কয়েক গুণ বড় হলে এগুলো কাজে লাগে।
- বাইনারি STL (৫,০০,০০০ ত্রিভুজ × ৫০ বাইট)
- ≈ 25 MB
- ASCII STL, একই মেশ, সাধারণত
- ≈ 100–150 MB
- UV ছাড়া OBJ, সাধারণত
- ≈ 15–30 MB
- ZIP কম্প্রেশনের পর 3MF, সাধারণত
- ≈ 5–12 MB
কনভার্ট করলে কী ঠিক হয় আর কী কখনো হবে না
কনভার্সন এক কন্টেইনার থেকে ত্রিভুজগুলো পড়ে অন্যটিতে লেখে। টার্গেট ফরম্যাট যা প্রকাশ করতে পারে তা সাথে যায়, যা পারে না তা বাদ পড়ে। তাই STL থেকে OBJ জ্যামিতির জন্য লসলেস, 3MF থেকে STL-এ রঙ, একক ও প্লেটের বিন্যাস হারায়, আর OBJ থেকে STL-এ টেক্সচার ও অংশের নাম হারায়। UltKit-এর 3D টুলে বাড়তি সিদ্ধান্তগুলো স্পষ্ট: মডেলের একক কনভার্টারকে জানায় সোর্স কোন স্কেল ব্যবহার করে, উপরের অক্ষ গেম ইঞ্জিন ও স্লাইসারের Y-up বনাম Z-up পার্থক্য সামলায়, আর একটি মেশে একত্র করুন ঠিক করে আলাদা অংশগুলো আলাদা থাকবে কি না।
কোনো কনভার্সনই মেশ মেরামত করে না। STL-এ ছিদ্র থাকলে তা থেকে বানানো OBJ-তেও একই ছিদ্র থাকে, আর 3MF এক্সপোর্টার হয় তা প্রত্যাখ্যান করবে, নয়তো তা-ই লিখে দেবে। মেরামত আলাদা ধাপ, যা মেশ টুল বা স্লাইসারের বিল্ট-ইন ফিক্সারে করতে হয়, এবং অন্য কিছু এক্সপোর্টের আগে আপনার মাস্টার ফাইলে একবার করাই ভালো। স্কেলের ক্ষেত্রেও একই কথা: আপনি না বললে কনভার্সন জানতে পারে না যে অংশটি ইঞ্জিনে ধরা ছিল। বিস্তারিত অংশও একই রকম: কম-পলিগনের STL থেকে কম-পলিগনের OBJ বা 3MF হয়, তাই মান গুরুত্বপূর্ণ হলে সোর্স মডেল থেকে আবার এক্সপোর্ট করুন।
ফরম্যাট বদলালে যা হয়
- একই ত্রিভুজ এমন কন্টেইনারে নেয় যা অন্য প্রোগ্রাম গ্রহণ করে
- মডেলের একক-এ বেছে নেওয়া একক প্রয়োগ করে, ২৫.৪ গুণ বা ১০ গুণ স্কেলের ভুল ঠিক করে
- উপরের অক্ষ দিয়ে মডেলকে Y-up ও Z-up-এর মধ্যে ঘোরায়
- বাইনারি লিখে ASCII STL ছোট করে
- একটি মেশে একত্র করুন-এর ওপর নির্ভর করে আলাদা অংশ রাখে বা মেশায়
যা ঠিক আগের মতোই থাকে
- ছিদ্র, খোলা এজ ও নন-ম্যানিফোল্ড জ্যামিতি
- উল্টানো বা অসামঞ্জস্যপূর্ণ নরমাল
- নিজেকে ছেদ করা অংশ ও শূন্য পুরুত্বের দেয়াল
- মেশ প্রথমবার এক্সপোর্টের সময় হারানো বিস্তারিত অংশ
- টার্গেট ফরম্যাটে জায়গা না থাকলে রঙ ও টেক্সচার
সিদ্ধান্ত নেওয়ার টেবিল: STL, OBJ নাকি 3MF
এই প্রশ্ন উঠলেই আরও দুটি ফরম্যাটের কথা আসে। STEP (ISO 10303) ত্রিভুজের বদলে নিখুঁত সলিড ও সারফেস রাখে, তাই সম্পাদনার জন্য কোনো অংশ Fusion 360, SolidWorks বা FreeCAD-এ ফেরত নিতে হলে এটিই ব্যবহার করুন। GLB হলো Khronos Group-এর glTF 2.0-এর বাইনারি রূপ, যা মেশের সাথে ম্যাটেরিয়াল ও টেক্সচার মিটার এককে একটি ফাইলে রাখে এবং ওয়েবে বা Android AR-এ মডেল দেখানোর জন্য উপযুক্ত।
এই লেখার তিনটি ফরম্যাটের জন্য নিচের টেবিলে গন্তব্য অনুযায়ী পছন্দ দেওয়া আছে। দুটি সারি মিলে গেলে যে ফরম্যাটে বেশি তথ্য থাকে সেটি বেছে নিন এবং সরলটি পরে এক্সপোর্ট করুন। 3MF থেকে STL করা সহজ, কিন্তু হারানো রঙ বা একক ফিরিয়ে আনা হাতে করার কাজ।
| পরিস্থিতি | সেরা ফরম্যাট | কেন |
|---|---|---|
| যেকোনো স্লাইসারে যাবে এমন একরঙা অংশ | STL (বাইনারি) | সর্বজনীন সাপোর্ট; স্লাইসারের আর কিছু লাগে না |
| মডেল লাইব্রেরি বা প্রিন্ট সার্ভিসে আপলোড | STL, সাথে 3MF দিলে সেটিও | STL সবসময় গ্রহণযোগ্য; 3MF একক ও রঙ ধরে রাখে |
| বহুরঙা বা বহু-ম্যাটেরিয়ালের প্রিন্ট | 3MF | এখানে একমাত্র ফরম্যাট যা স্লাইসারের জন্য রঙ ও প্রতিটি অংশের ম্যাটেরিয়াল রাখে |
| প্রিন্ট সেটিংসহ একাধিক অংশের প্লেট | 3MF | অবজেক্টের অবস্থান ও স্লাইসার সেটিংস একটি ফাইলে রাখে |
| ইঞ্চিতে ডিজাইন করা অংশ | 3MF | একক ঘোষণা করে, তাই কিছুই ২৫.৪ দিয়ে স্কেল হয় না |
| Blender, Unity বা Unreal-এর জন্য টেক্সচারযুক্ত মডেল | OBJ (+ .mtl ও ছবি) | UV, নরমাল ও ম্যাটেরিয়াল নির্ধারণ ধরে রাখে |
| টেক্সট এডিটরে দ্রুত দেখা | OBJ বা ASCII STL | সাধারণ টেক্সট, লাইন ধরে পড়া যায় |
| পুরোনো ফার্মওয়্যার বা সফটওয়্যার যা শুধু STL দেখায় | STL | বাড়তি তথ্য বাদ দিয়ে শুধু মেশ পাঠান |
মূল কথা
- STL শুধু ত্রিভুজ রাখে: কোনো একক নেই, রঙ নেই, আর বাইনারি রূপে প্রতি ত্রিভুজ ৫০ বাইট।
- OBJ UV, নরমাল ও নামযুক্ত গ্রুপ যোগ করে, কিন্তু এর রঙ ও টেক্সচার আলাদা .mtl ফাইল ও ছবির ফাইলের ওপর নির্ভর করে।
- 3MF হলো XML-এর একটি ZIP, যা একক, রঙ, একাধিক অবজেক্ট ও প্রিন্ট সেটিংস রাখে এবং বদ্ধ মেশ দাবি করে।
- সাধারণ একরঙা প্রিন্টে STL, আর্ট ও গেম পাইপলাইনে টেক্সচারযুক্ত মডেলে OBJ, আর স্লাইসার সাপোর্ট করলেই 3MF ব্যবহার করুন।
- কনভার্ট করলে কন্টেইনার বদলায়, মেশ নয়: ছিদ্র ও নরমাল মেশ টুলে মেরামত করুন এবং একক নিজে ঠিক করে দিন।
সচরাচর জিজ্ঞাসা
3MF কি STL-এর জায়গা নিয়ে নিচ্ছে?
প্রিন্টিং ওয়ার্কফ্লোতে ধীরে ধীরে। PrusaSlicer ও Bambu Studio ইতিমধ্যে প্রজেক্ট 3MF হিসেবে সেভ করে, তবে STL-ই এখনও সব টুল ও মডেল লাইব্রেরির গ্রহণযোগ্য ফরম্যাট, তাই দুটি আরও বহু বছর পাশাপাশি চলবে।
বাইনারি STL কি রং সংরক্ষণ করতে পারে?
কোনো প্রমিত উপায়ে নয়। কিছু প্রোগ্রাম প্রতিটি ত্রিভুজের ২ বাইটের অ্যাট্রিবিউট ফিল্ডে রঙ লেখে, কিন্তু বেশিরভাগ স্লাইসার তা উপেক্ষা করে, তাই রঙ গুরুত্বপূর্ণ হলে 3MF বা OBJ ব্যবহার করুন।
ডাউনলোড করার পর আমার OBJ ধূসর দেখায় কেন?
.mtl ফাইল বা টেক্সচারের ছবি পেছনে রয়ে গেছে, অথবা .mtl-এর ভেতরের পাথ এমন ফোল্ডার দেখাচ্ছে যা আপনার কম্পিউটারে নেই। .obj, .mtl ও ছবিগুলো একই ফোল্ডারে রেখে মডেল আবার লোড করুন।
ASCII নাকি বাইনারি STL, কোনটিতে প্রিন্ট বেশি নিখুঁত হয়?
বাস্তবে কোনোটিই বেশি নিখুঁত প্রিন্ট করে না। দুটিই একই ত্রিভুজ বর্ণনা করে; বাইনারি কোঅর্ডিনেট ৩২-বিট ফ্লোট হিসেবে আর ASCII টেক্সট হিসেবে রাখে, এবং বাইনারি ফাইল সাধারণত কয়েক গুণ ছোট হয়।
প্রিন্ট করার জন্য OBJ-কে কি আবার STL-এ কনভার্ট করা যায়?
হ্যাঁ। ত্রিভুজ অপরিবর্তিত থাকে, তবে UV, ম্যাটেরিয়াল ও টেক্সচার বাদ পড়ে কারণ STL-এ সেগুলোর জায়গা নেই। পরে স্কেল দেখে নিন, কারণ মডেলিং টুলের OBJ ফাইল প্রায়ই মিটার বা সেন্টিমিটারে থাকে।
অন্যরা প্রিন্ট করবে এমন মডেল শেয়ার করতে কোন ফরম্যাট ব্যবহার করব?
সবচেয়ে বেশি সামঞ্জস্যের জন্য একটি STL দিন। মডেলে একাধিক অংশ বা রঙ থাকলে, অথবা ইঞ্চিতে ডিজাইন করা হলে, তার পাশে একটি 3MF-ও দিন, যাতে আধুনিক স্লাইসারের ব্যবহারকারীরা পূর্ণ সেটআপ পান।
আরও পড়ুন
ZIP বনাম RAR বনাম 7z: কোন আর্কাইভ ফরম্যাট ব্যবহার করবেন?
ZIP সব কম্পিউটার ও ফোনে খোলে, 7z সবচেয়ে ছোট হয় ও ফাইলের নাম লুকায়, RAR-এ রিকভারি রেকর্ড আছে। কম্প্রেশন, এনক্রিপশন, OS সাপোর্ট ও সীমার তুলনা।
Lucas Ferreira · ২৭ সেপ, ২০২৬ · 11 মিনিটের পাঠ
TTF vs OTF vs WOFF: কোন ফন্ট ফরম্যাট কোথায় ব্যবহার করবেন
Windows, macOS ও Linux-এ TTF বা OTF ইনস্টল করুন; ওয়েবসাইটে WOFF2, ফলব্যাক হিসেবে WOFF। ফরম্যাটে কী থাকে, সাইজ কত ও কনভার্টে কী বদলায়।
Jonas Weber · ১০ সেপ, ২০২৬ · 11 মিনিটের পাঠ
PNG থেকে SVG কনভার্ট: লোগো, আইকন ও লাইন আর্ট ট্রেস | UltKit
PNG কেবল ট্রেসিংয়েই আসল SVG হয়। কোন ছবি ভালো ট্রেস হয়, PNG কীভাবে তৈরি করবেন, কোন রং ও থ্রেশহোল্ড বাছবেন এবং পাথ কীভাবে যাচাই করবেন জানুন।
Jonas Weber · ৪ অক্টো, ২০২৬ · 12 মিনিটের পাঠ