glTF JSON (.gltf)
ISO/IEC স্ট্যান্ডার্ডGL Transmission Format (glTF) হলো WebGL, WebGPU, গেম ইঞ্জিন এবং নেটিভ অ্যাপ্লিকেশন দ্বারা থ্রিডি দৃশ্য এবং মডেলের দক্ষ ট্রান্সমিশন ও লোডিংয়ের জন্য ওপেন-স্ট্যান্ডার্ড, রয়্যালটি-মুক্ত JSON স্পেসিফিকেশন।
GLTF থেকে GLB কনভার্ট করুন
বিনামূল্যে ইন-ব্রাউজার GLTF থেকে GLB কনভার্টার। আপনার ডিভাইসে তাত্ক্ষণিকভাবে ফাইল কনভার্ট করুন।
ইনস্পেক্ট ও মেটাডেটা
অপারেটিং সিস্টেম এবং ফাইল অ্যানালাইজারগুলো শুরুর বাইনারি বাইট সিকোয়েন্স পরীক্ষা করে glTF ফাইল শনাক্ত করে:
বাইট-লেভেল হেডার সিগনেচার (ম্যাজিক বাইটস)
অপারেটিং সিস্টেম এবং ফাইল অ্যানালাইজারগুলো শুরুর বাইনারি বাইট সিকোয়েন্স পরীক্ষা করে glTF ফাইল শনাক্ত করে:
হেক্স সিগনেচার (অফসেট 0):
7B 0A 20 20 22 61 73 73 65 74 22ASCII রিপ্রেজেন্টেশন: {\n "asset"
স্ট্যান্ডার্ডাইজেশন: ISO/IEC 12113:2022 / Khronos Open Standard
প্রযুক্তিগত বৈশিষ্ট্য
| কন্টেইনার আর্কিটেকচার | Human-readable JSON document describing scene graph, nodes, meshes, accessors, materials, and animations, referencing external buffers |
| কম্প্রেশন | External textures (PNG, JPEG, WebP) and optional Draco geometry compression |
| বাইট এন্ডিয়াননেস | UTF-8 JSON text (referencing Little-Endian .bin buffers) |
| কালার স্পেস | sRGB base color, Linear roughness/metallic |
| চ্যানেল ও কাঠামো | Scene hierarchy, nodes, cameras, PBR materials, skinning skeletons, and morph targets |
| সর্বোচ্চ মাত্রা | Unbounded coordinate space and triangle count |
| স্বচ্ছতা | Alpha mode BLEND, MASK with cutoff threshold, or volumetric transmission |
| স্ট্রিমিং ও প্রোগ্রেসিভ | Asynchronous loading: scene JSON loads instantly while heavy binary buffers stream in background |
টেকনিক্যাল তুলনা ম্যাট্রিক্স: glTF বনাম প্রতিযোগীগণ
| প্রযুক্তিগত বৈশিষ্ট্য | glTF (বর্তমান) | GLB | OBJ | FBX |
|---|---|---|---|---|
| ফাইল আর্কিটেকচার | JSON সিন টেক্সট + সহচর .bin / টেক্সচার | একক স্বয়ংসম্পূর্ণ বাইনারি ফাইল | সাধারণ টেক্সট ভার্টেক্স ও ফেস + .mtl | প্রোপাইটারি বাইনারি/অ্যাসকি কন্টেইনার |
| PBR ম্যাটেরিয়াল স্ট্যান্ডার্ড | স্ট্যান্ডার্ডাইজড মেটালিক-রাফনেস PBR | স্ট্যান্ডার্ডাইজড মেটালিক-রাফনেস PBR | লেগ্যাসি Phong/Lambert ম্যাটেরিয়াল | কাস্টম প্রোপাইটারি ম্যাটেরিয়াল |
| অ্যানিমেশন সমর্থন | স্কেলিটাল স্কিনিং ও মরফ লক্ষ্যমাত্রা | স্কেলিটাল স্কিনিং ও মরফ লক্ষ্যমাত্রা | নেই (শুধুমাত্র স্ট্যাটিক জিওমেট্রি) | জটিল অ্যানিমেশন ও বোন |
| রানটাইম পারফরম্যান্স | WebGL ও রিয়েল-টাইম ইঞ্জিনের জন্য অপ্টিমাইজড | WebGL ও রিয়েল-টাইম ইঞ্জিনের জন্য অপ্টিমাইজড | ধীর পার্সিং ও পুনর্নির্মাণ প্রয়োজন | জটিল ডেস্কটপ SDK পার্সিং প্রয়োজন |
সাধারণ করাপশন মোড এবং হেক্স রিকভারি গাইড
থ্রিডি ইঞ্জিন ত্রুটি: 'Failed to load buffer: URI not found'।
মূল কারণ: .gltf ফাইলের পাশাপাশি সহচর .bin বাইনারি ফাইল বা টেক্সচার ইমেজ আপলোড করা হয়নি।
পুনরুদ্ধার: সমস্ত সহচর ফাইল একসাথে প্যাকেজ করুন অথবা File2File ব্যবহার করে সরাসরি একটি একক GLB ফাইলে রূপান্তর করুন।
নিরাপত্তা বিশ্লেষণ ও পার্সার অ্যাটাক ভেক্টর
glTF JSON ফাইলগুলো বাহ্যিক URI (ডেটা URI বা রিমোট URL) উল্লেখ করে যা সার্ভার-সাইড রিকোয়েস্ট ফোর্জারি (SSRF) বা পাথ ট্রাভার্সাল ঘটাতে পারে।
পরিচিত অ্যাটাক ভেক্টর
- রিলেটিভ বাফার URI-এর মাধ্যমে পাথ ট্রাভার্সাল (যেমন 'uri: ../../../etc/passwd')।
- সার্ভার-সাইড থ্রিডি থাম্বনেইল জেনারেটরে রিমোট নেটওয়ার্ক বাফার ফেচিংয়ের মাধ্যমে SSRF।
- ত্রুটিপূর্ণ রিকার্সিভ নোড হায়ারার্কি চক্রের মাধ্যমে সার্ভিস অস্বীকার (DoS)।
প্রতিরক্ষামূলক সেরা অনুশীলন:
ঐতিহাসিক উৎপত্তি ও মাইলফলক
প্রধান সুবিধাসমূহ ও গুণাবলী
- মানুষের পাঠযোগ্য JSON স্ট্রাকচার প্রোগ্রাম্যাটিক এডিটিং, পাইপলাইন স্ক্রিপ্টিং এবং ভিজ্যুয়াল পরিদর্শনের অনুমতি দেয়।
- মডুলার ডিজাইন: হালকা ওজনের দৃশ্য মেটাডেটাকে ভারী বাইনারি জিওমেট্রি (.bin) এবং টেক্সচার থেকে আলাদা করে।
- ফিজিক্যালি বেসড রেন্ডারিং (PBR) ম্যাটেরিয়াল সংজ্ঞা নিশ্চিত করে যে থ্রিডি অ্যাসেটগুলো সমস্ত রেন্ডারিং ইঞ্জিনে হুবহু একই রকম দেখায়।
কারিগরি সীমাবদ্ধতা ও অসুবিধা
- বহু-ফাইলের জটিলতা: একটি মডেল শেয়ার করার জন্য .gltf, .bin এবং ইমেজ টেক্সচারগুলোকে একসাথে জিপ বা বান্ডিল করতে হয়।
- একাধিক HTTP অনুরোধের কারণে একক-ফাইল GLB-এর তুলনায় প্রাথমিক নেটওয়ার্ক স্টার্টআপ কিছুটা ধীরগতির হয়।
- সহচর টেক্সচার ফাইলের নাম পরিবর্তন করা হলে বা সরানো হলে রিলেটিভ পাথ নির্ভরতা নষ্ট হতে পারে।
আকর্ষণীয় কারিগরি তথ্য
- glTF-কে আনুষ্ঠানিকভাবে 'The JPEG of 3D' বলা হয় কারণ এটি তৈরির পরিবর্তে রানটাইম ট্রান্সমিশন এবং ডিসপ্লের উপর কঠোরভাবে ফোকাস করে।
- ফরম্যাটটি যৌথভাবে প্রতিষ্ঠা করেছিলেন টনি পারিসি, যিনি ১৯৯৪ সালে VRML (Virtual Reality Modeling Language) সহ-সৃষ্টি করেছিলেন।
- নাসা (NASA) জনসাধারণের ডাউনলোডের জন্য glTF ফরম্যাটে রোভার, স্যাটেলাইট এবং নভোচারীদের থ্রিডি মডেল সরবরাহ করে।
সচরাচর জিজ্ঞাসಿತ টেকনিক্যাল প্রশ্নাবলি
আমার glTF ফাইলের রঙ বা আকৃতি অনুপস্থিত কেন?
একটি .gltf ফাইলে শুধুমাত্র JSON সিন ইনস্ট্রাকশন থাকে। এটি থ্রিডি আকৃতির জন্য সহায়ক .bin ফাইল এবং রঙের জন্য .png/.jpg ফাইলের ওপর নির্ভর করে। নিশ্চিত করুন যে সমস্ত সহায়ক ফাইল একই ফোল্ডারে রয়েছে।
আমি কীভাবে একটি glTF ফাইলকে একক GLB ফাইলে পরিণত করব?
সেগুলোকে একটি একক, সেলফ-কন্টেইনড .glb ফাইলে তাৎক্ষণিকভাবে মার্জ করতে আপনার .gltf এবং এর সহায়ক .bin ও টেক্সচার ফাইলগুলো File2File.app-এ আপলোড করুন।
কোন প্রোগ্রামগুলো glTF সমর্থন করে?
Blender, Three.js, Babylon.js, Unity, Unreal Engine, Godot এবং Windows 3D Viewer ডিফল্টভাবেই glTF সমর্থন করে।
সম্পর্কিত glTF কনভার্সন পেয়ার
জিএলটিএফ জেএসওন সম্পদগুলিকে জিএলটিএফ বাইনারি কন্টেইনারগুলিতে রূপান্তর করলে দ্রুত ওয়েব সরবরাহের জন্য পৃথক টেক্সট ম্যানিফেস্ট, বাইনারি বাফার এবং টেক্সচারগুলিকে একটি একক ফাইলে প্যাকেজ করা হয়।
জিএলবি থেকে জিএলটিএফ রূপান্তরের মাধ্যমে একক বাইনারি কন্টেইনারকে আলাদা টেক্সট এবং অ্যাসেট ফাইলে বিভক্ত করা হয়, যাতে ডেভেলপাররা খুব সহজেই টেক্সচার এবং থ্রিডি জিওমেট্রি কোড সম্পাদনা করতে পারেন।
ওয়েভফ্রন্ট ওবিজে জিওমেট্রি ফাইলকে জিএলটিএফ জেসন ম্যানিফেস্টে রূপান্তর করার মাধ্যমে স্ট্যাটিক থ্রিডি মডেলগুলোকে আধুনিক ওয়েব-প্রস্তুত অ্যাসেটে রূপান্তর করা যায় যা স্ট্যান্ডার্ড ওয়েব ব্রাউজারে তাৎক্ষণিকভাবে লোড হয়।