فایل باینری glTF (.glb)

ISO/IEC استاندارد

فرمت glTF باینری (GLB) بسته‌بندی باینری مستقل و تک‌فایلی استاندارد glTF 2.0 است که به طور گسترده برای گرافیک‌های سه‌بعدی مبتنی بر وب، واقعیت افزوده (AR) و موتورهای بازی‌سازی بلادرنگ به عنوان «JPEG سه‌بعدی» شناخته می‌شود.

تبدیل GLTF به GLB

مبدل رایگان GLTF به GLB درون مرورگر. فایل‌ها را فورا روی دستگاه خود تبدیل کنید.

بررسی و فراداده

سیستم‌عامل‌ها و تحلیلگرهای فایل، فایل‌های GLB را با بررسی توالی بایت‌های دودویی ابتدایی شناسایی می‌کنند:

انتخاب یا رها کردن فایل‌ها در اینجا

تبدیل ۱۰۰٪ خصوصی در مرورگر - فایل‌ها هرگز دستگاه شما را ترک نمی‌کنند

یا جای‌گذاری کنید Ctrl+V
تضمین حریم خصوصی بدون انتقال شبکه: صفر بایت به سرورهای خارجی آپلود می‌شود. تمام پردازش‌ها به صورت محلی در سندباکس مرورگر شما انجام شد.

امضای هدر در سطح بایت (Magic Bytes)

سیستم‌عامل‌ها و تحلیلگرهای فایل، فایل‌های GLB را با بررسی توالی بایت‌های دودویی ابتدایی شناسایی می‌کنند:

امضای HEX (آفست 0):

67 6C 54 46

نمایش ASCII: glTF

استانداردسازی: ISO/IEC 12113:2022 / Khronos Open Standard

مشخصات فنی

معماری کانتینر12-byte binary header ('glTF', version, length) followed by JSON chunk (CHUNK 0) and binary buffer chunk (CHUNK 1)
فشرده‌سازیDRACO mesh geometry compression, KHR_texture_basisu (KTX2/Basis Universal GPU textures), and ExtMeshopt
ترتیب بایت‌ها (Endianness)Little-Endian (Intel x86 / WebGL standard)
فضاهای رنگیsRGB textures, Linear PBR roughness/metallic channels
کانال‌ها و ساختارPBR materials (Metallic-Roughness), skinned skeletal meshes, morph targets, animations, cameras, and lights
حداکثر ابعادUnbounded vertex and triangle count (supports multi-gigabyte models)
شفافیت مشخصاتAlpha coverage (MASK), alpha blending (BLEND), and volumetric transmission
استریمینگ و پیش‌روندهSingle self-contained file with binary offset tables for direct GPU VBO loading

ماتریس مقایسه فنی: GLB در برابر رقبا

ویژگی فنیGLB (فعلی)GLTFUSDZFBX
مدل بسته‌بندیفایل باینری تک و مستقلJSON + فایل‌های خارجی .bin و بافتآرشیو ZIP از اسکیماها و بافت‌های USDباینری/ASCII اختصاصی Autodesk
استاندارد وب و ARاستاندارد جهانی WebGL و اندروید ARاستاندارد جهانی WebGL (چندفایلی)استاندارد AR اپل iOS Quick Lookاستاندارد واردات موتور بازی دسکتاپ
مدل متریالاستاندارد glTF PBR Metallic-Roughnessاستاندارد glTF PBRاسکیمای متریال یونیورسال پیکسار PBRشیدرهای اختصاصی Phong/Lambert/PBR
عملکرد خواندن GPUفوری (نقشه‌برداری مستقیم حافظه)سریع (درخواست‌های متعدد شبکه)سریع (ورودی‌های فشرده‌نشده ZIP)کند (نیازمند تجزیه پیچیده)

حالت‌های رایج خرابی و راهنمای بازیابی هگز

مدل سه‌بعدی با بافت‌های گم‌شده یا سطوح کاملاً سیاه رندر می‌شود.

علت ریشه‌ای: چانک بافت جاسازی‌شده خراب یا مرجع متریال metallic-roughness PBR گم‌شده.

بازیابی: بررسی و تعمیر آفست‌های چانک با استفاده از File2File 3D Converter یا glTF-Transform.

تحلیل امنیتی و بردارهای حمله تجزیه‌کننده (Parser)

تجزیه‌کننده‌های GLB چانک‌های متنی JSON را به همراه بافرهای باینری دلخواه پردازش می‌کنند که در صورت عدم تطابق طول بافرها می‌توانند باعث سرریز بافر شوند.

بردارهای حمله شناخته‌شده

  • سرریز خواندن بافر زمانی که مقدار byteOffset + byteLength در bufferView از طول چانک باینری بیشتر شود.
  • خواندن شاخص راس خارج از محدوده (Out-of-bounds) در طول اجرای WebGL drawElements.
  • حمله انکار سرویس (DoS) از طریق حلقه‌های فشرده‌زدا غیرطبیعی Draco.

بهترین روش‌های پدافندی:

تاریخچه و نقاط عطف

2022استانداردسازی بین‌المللی glTF 2.0 و GLB توسط ISO/IEC تحت عنوان ISO/IEC 12113:2022.
2018گوگل فرمت GLB را به عنوان استاندارد سه‌بعدی برای Android Scene Viewer و تجربیات واقعیت افزوده وب <model-viewer> پذیرفت.
2015گروه Khronos فرمت GLB را به عنوان کانتینر باینری تک‌فایلی برای اکوسیستم glTF معرفی کرد.

مزایا و نقاط قوت کلیدی

  • کاملاً مستقل: هندسه سه‌بعدی، متریال‌های PBR، بافت‌ها (PNG/JPEG/KTX2) و انیمیشن‌های اسکلتی را در یک فایل بسته‌بندی می‌کند.
  • بارگذاری مستقیم روی پردازنده گرافیکی (GPU): بافرهای هندسی باینری با طرح‌بندی حافظه WebGL / Vulkan بدون سربار تجزیه پردازنده مرکزی (CPU) مطابقت دارند.
  • استاندارد بی‌رقیب برای WebGL، WebGPU، پیش‌نمایش‌های محصولات سه‌بعدی در تجارت الکترونیک و واقعیت افزوده موبایل.

محدودیت‌ها و معایب فنی

  • ماهیت باینری، بازرسی یا ویرایش دستی متن را بدون ابزارهای تخصصی سه‌بعدی دشوار می‌کند.
  • هنگام استفاده از افزونه‌های فشرده‌سازی پیشرفته، به کتابخانه‌های فشرده‌زدا Draco یا Basis Universal نیاز دارد.
  • پلتفرم‌های اپل از USDZ برای واقعیت افزوده بومی iOS Quick Look پشتیبانی می‌کنند که نیاز به تبدیل فرمت از GLB دارد.

نکات فنی جالب

  • ۴ بایت اول هر فایل GLB برابر با 0x67 0x6C 0x54 0x46 است که متن ASCII کلمه «glTF» را تشکیل می‌دهند.
  • هنگام مشاهده یک کفش کتانی سه‌بعدی در مرورگر وب گوشی هوشمند، تقریباً به طور حتم در حال مشاهده یک مدل تعاملی GLB هستید.
  • GLB به طور خاص طراحی شده است تا سخت‌افزار گرافیکی بتواند بافرهای راس را مستقیماً از دیسک بدون هیچ‌گونه تبدیلی به VRAM بخواند.

سوالات فنی متداول

تفاوت بین glTF و GLB چیست؟

فرمت glTF یک فایل JSON است که به فایل‌های هندسی خارجی .bin و فایل‌های بافت تصویر جداگانه اشاره می‌کند. فرمت GLB کل آن بسته را می‌گیرد و در یک فایل باینری منفرد و فشرده بسته‌بندی می‌کند.

چگونه می‌توانم GLB را برای واقعیت افزوده اپل (Apple AR) به USDZ تبدیل کنم؟

شما می‌توانید مدل‌های GLB را با استفاده از File2File.app مستقیماً در مرورگر وب خود با یک کلیک به فایل‌های آماده اپل یعنی USDZ تبدیل کنید.

آیا می‌توانم فایل‌های GLB را در بلندر (Blender) باز کنم؟

بله. نرم‌افزار Blender شامل یک واردکننده و صادرکننده بومی و با عملکرد بالای glTF/GLB است که مستقیماً در داخل نرم‌افزار تعبیه شده است.