UltKit

تبدیل glTF به GLB

خروجی glTF معمولاً از سه نوع فایل تشکیل می‌شود: یک فایل JSON با پسوند .gltf، یک یا چند بافر .bin و پوشه‌ای از تکسچرها. GLB همان مدل است که در یک فایل باینری واحد بسته‌بندی شده و فرم‌های بارگذاری، نمایشگرها و اپلیکیشن‌های واقعیت افزوده همین را می‌خواهند.

مبدل مدل سه‌بعدی

یا فایل‌های STL, OBJ, MTL … را اینجا رها کنید ·

حداکثر 95 MB برای هر فایل· تا 20 فایل· حذف پس از 30 دقیقه

خروجی

فایل‌ها روی سرورهای ما پردازش می‌شوند و پس از 30 دقیقه حذف می‌شوند.

نحوه استفاده از این ابزار

  1. 1

    پوشهٔ glTF را زیپ کنید

    فایل .gltf، فایل‌های .bin و تصاویر بافت را با همان ساختار پوشه‌ای که خروجی گرفتن ساخته است در یک ZIP قرار دهید و بارگذاری کنید. فایل .gltf مستقلی که داده‌ها در خودش جاسازی شده‌اند را می‌توان به‌تنهایی بارگذاری کرد. حداکثر 20 فایل، هر کدام تا 95 MB.

  2. 2

    مدل را بدون تغییر بگذارید

    واحد مدل روی m و محور بالا روی Keep بماند، چون یک glTF معتبر از پیش بر حسب متر و با محور Y رو به بالاست. گزینهٔ حفظ بافت‌ها و متریال‌ها روشن است تا همهٔ تصاویر جاسازی شوند.

  3. 3

    تبدیل به GLB

    روی تبدیل به GLB بزنید و برای هر مدل یک فایل دانلود کنید. فایل‌های بارگذاری‌شده و نتایج بعد از 30 دقیقه حذف می‌شوند.

پاسخ

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

هر دو همان مدل glTF 2.0 را ذخیره می‌کنند. .gltf یک JSON خواناست که به فایل‌های .bin و تصویر جدا اشاره می‌کند؛ GLB همان JSON، بافرها و تصاویر را در یک فایل باینری جمع می‌کند.

چرا glTF را در یک فایل GLB بسته‌بندی کنیم

گروه Khronos نسخهٔ glTF 2.0 را که در سال 2017 منتشر شد به‌عنوان فرمت انتقال طراحی کرد: آخرین مرحله میان ابزار سه‌بعدی و کسی که مدل را نمایش می‌دهد. شکل JSON برای توسعه‌دهندگان راحت است چون می‌شود آن را خواند و ویرایش کرد، اما در عمل شکننده است. اگر نام یک بافت را عوض کنید، .gltf را بدون .bin بارگذاری کنید یا یک CMS ساختار پوشه را حذف کند، مدل با هندسهٔ ناقص یا سطوح سفید بارگذاری می‌شود.

GLB با قرار دادن همه‌چیز در یک ظرف این مشکل را حل می‌کند. رسانهٔ محصول Shopify، Scene Viewer اندروید، model-viewer گوگل و بیشتر بازارهای دارایی سه‌بعدی به همین دلیل GLB می‌خواهند. تبدیل بدون افت است: مبدل JSON را می‌خواند، هر بافر و تصویر ارجاع‌شده را بارگذاری می‌کند، آن‌ها را در یک بخش باینری می‌نویسد و ارجاع‌ها را طوری بازنویسی می‌کند که به درون فایل اشاره کنند.

ساختار یک فایل GLB

سرآیند: کلمهٔ شناسایی glTF، نسخهٔ 2 و طول کل
12 بایت
اول JSON، سپس یک بخش BIN شامل بافرها و تصاویر
2 بخش
تراز هر بخش که تا آن پر می‌شود
4 بایت
به‌جای .gltf + .bin + بافت‌ها
1 فایل

GLTF

فرمت انتقال GL (glTF)

glTF یک فرمت سه‌بعدی باز از گروه Khronos است که نخستین بار در سال 2015 منتشر شد و اغلب «JPEG دنیای سه‌بعدی» خوانده می‌شود. فایل gltf. یک JSON است که صحنه را توصیف می‌کند و معمولاً همراه فایل‌های جداگانه هندسه (bin.) و تصاویر بافت می‌آید. از متریال‌های PBR، انیمیشن و اسکین پشتیبانی می‌کند و برای رندر بی‌درنگ کارآمد طراحی شده است. فایل‌های جدا ممکن است هنگام اشتراک‌گذاری گم شوند؛ به همین دلیل شکل تک‌فایلی GLB اغلب ترجیح داده می‌شود.

فشرده‌سازی
–
شفافیت
–
انیمیشن
بله
سال معرفی
2015 · Khronos Group
مبدل GLTF

GLB

glTF دودویی (GLB)

GLB شکل دودویی glTF 2.0 است؛ فرمت انتقال سه‌بعدی که گروه Khronos در سال 2017 منتشر کرد. هندسه، متریال‌های PBR، بافت‌ها و انیمیشن‌ها را در یک فایل فشرده و مناسب بارگذاری سریع جمع می‌کند. GLB در سه‌بعدی وب، نمایشگرهای AR، Android Scene Viewer و بازارهای آنلاین مدل بسیار استفاده می‌شود. برخی ابزارهای سه‌بعدی قدیمی دسکتاپ و نرم‌افزارهای CAD آن را وارد نمی‌کنند.

فشرده‌سازی
–
شفافیت
–
انیمیشن
بله
سال معرفی
2017 · Khronos Group
مبدل GLB

تبدیل glTF به GLB یک مرحلهٔ بسته‌بندی است: فرم‌های بارگذاری، AR اندروید و نمایشگرهای وب یک مدل مستقل و تک‌فایل می‌خواهند، پس .gltf و بافرهای .bin و بافت‌ها را در یک فایل جمع می‌کنند.

رفع خطای نبودن فایل .bin و تکسچرها

  • GLB هندسه ندارد یا تبدیل ناموفق است

    بافر .bin بارگذاری نشده است. آن را همراه .gltf زیپ کنید و همان نام فایلی را نگه دارید که JSON به آن اشاره می‌کند.

  • سطوح سفید یا خاکستری هستند

    بافت‌ها وجود ندارند. .gltf را در یک ویرایشگر متن باز کنید، ورودی‌های uri تصاویر را بررسی کنید و آن فایل‌ها را با همان مسیرهای نسبی در ZIP بگذارید.

  • مسیر بافت با C:\ یا /Users شروع می‌شود

    خروجی‌گیر مسیر مطلق نوشته است. با مسیرهای نسبی دوباره خروجی بگیرید، یا تصویر را کنار .gltf بگذارید و uri آن را به نام ساده فایل تغییر دهید.

  • بافت‌ها KTX2 یا WebP هستند

    این‌ها به افزونه‌های KHR_texture_basisu یا EXT_texture_webp نیاز دارند که برخی نمایشگرها پشتیبانی نمی‌کنند. برای بیشترین سازگاری با PNG یا JPEG دوباره خروجی بگیرید.

پرسش‌های رایج دربارهٔ تبدیل glTF به GLB

آیا تبدیل glTF به GLB مدل را تغییر می‌دهد؟

خیر. مش‌ها، متریال‌ها، نام نودها، انیمیشن‌ها و اسکین‌ها همان‌طور که هستند کپی می‌شوند و فقط شکل بسته‌بندی تغییر می‌کند. JSON به بخش اول GLB و بافرها و تصاویر به بخش باینری آن منتقل می‌شوند.

چرا باید فایل ZIP بارگذاری کنم و نه فقط فایل .gltf را؟

یک glTF با فایل‌های جدا فقط با مسیر نسبی به فایل .bin و بافت‌ها اشاره می‌کند. اگر به‌تنهایی بارگذاری شود، این پیوندها به جایی نمی‌رسند و GLB بدون هندسه یا تصویر ساخته می‌شود. با زیپ کردن پوشه، همهٔ فایل‌های موردنیاز کنار .gltf می‌مانند؛ راهنمای ما دربارهٔ باز کردن فایل زیپ در هر دستگاه هم این کار را در جهت عکس توضیح می‌دهد.

آیا حجم فایل GLB از glTF من کمتر می‌شود؟

در مقایسه با .gltf ای که همه‌چیز را به‌صورت متن base64 جاسازی کرده، بله و حدود یک‌چهارم کوچک‌تر می‌شود، چون base64 حجم داده‌های باینری را حدود یک‌سوم افزایش می‌دهد. در مقایسه با .gltf به‌همراه .bin و تصاویر، مجموع حجم تقریباً همان می‌ماند و مزیت کار داشتن یک فایل است.

آیا فایل‌های glTF فشرده‌شده با Draco پشتیبانی می‌شوند؟

glTF ای که از افزونهٔ KHR_draco_mesh_compression استفاده می‌کند خوانده می‌شود و هندسهٔ آن حفظ می‌گردد. اگر کوچک‌ترین فایل ممکن برای وب را می‌خواهید، فشرده‌سازی Draco یا meshopt را با ابزاری مثل glTF-Transform روی GLB نهایی اعمال کنید.

آیا می‌توانم GLB را دوباره به فایل‌های جداگانهٔ glTF برگردانم؟

بله. GLB را بارگذاری کنید و در مبدل مدل سه‌بعدی زیر تبدیل به گزینهٔ glTF را انتخاب کنید. این کار وقتی به درد می‌خورد که بخواهید JSON را دستی ویرایش کنید یا بدون خروجی گرفتن دوباره، یک بافت را عوض کنید.

کدام نرم‌افزارها خروجی glTF می‌دهند که بتوان این‌گونه بسته‌بندی‌اش کرد؟

خروجی glTF در Blender می‌تواند مستقیماً glTF Separate یا GLB بنویسد؛ دانلودهای Sketchfab، ابزارهای Substance و بیشتر خروجی‌های موتورهای بازی هم همین‌طورند. اگر ابزار شما فقط حالت جدا را ارائه می‌داد، این صفحه فایل واحد را به شما می‌دهد.