س سازهSazeh ← بازگشت به بلاگ

مقایسه GLB و FBX در Sketchfab: کدام فرمت برای موتور بازی و web بهتر است؟

Sketchfab GLB vs FBX: کدام فرمت برای موتور بازی؟

وقتی مدل از Sketchfab می‌خرید، معمولاً چندین فرمت در tab "Download Formats" موجود است: GLB، FBX، USDZ، OBJ. برای پروژه گیم Unity/Unreal یا WebXR، انتخاب صحیح فرمت زمان setup را به نصف کاهش می‌دهد. در این مقاله دقیق ۸ معیار را بین GLB و FBX مقایسه می‌کنیم تا برای پروژه خود فرمت صحیح انتخاب کنید.

معرفی هر فرمت

FBX (Filmbox): فرمت Autodesk از ۲۰۰۶. استاندارد industry برای ۳D animation و VFX. تمام اطلاعات (geometry، textures، animation، rigging، lights، cameras) را در یک فایل ذخیره می‌کند. binary یا ASCII version دارد.

GLB (Binary glTF): فرمت جدید Khronos Group از ۲۰۱۷. طراحی شده مخصوصاً برای web و real-time applications. compact، PBR-native، single file. در Three.js، Babylon.js، Unity، Unreal native پشتیبانی می‌شود.

فلسفه متفاوت: FBX برای pipeline studio طراحی شده (Maya → Max → Mudbox → Unity). GLB برای end-user delivery (engine → user device). هر کدام use case خاص.

برای پروژه Sketchfab: GLB معمولاً اولین انتخاب چون Sketchfab native در GLB ذخیره می‌کند. FBX export شده از GLB است (نه برعکس).

File size - تفاوت چشمگیر

GLB به‌طور سیستماتیک کوچک‌تر از FBX است. مثال‌های واقعی:

یک کاراکتر متوسط (۵۰K poly، ۲K textures):

- GLB: ۸-۱۲ MB (compressed)

- FBX: ۱۵-۲۵ MB (uncompressed binary)

یک ساختمان معماری (۲۰۰K poly، ۴K textures):

- GLB: ۲۵-۴۰ MB

- FBX: ۸۰-۱۵۰ MB

صحنه شهری (۱M poly، multi materials):

- GLB: ۸۰-۱۵۰ MB

- FBX: ۳۰۰-۶۰۰ MB

GLB ~۲-۴ برابر کوچک‌تر. این به دلیل compression Draco (geometry) و KTX2 (textures) embedded در GLB. FBX uncompressed.

برای web/AR: GLB حیاتی. ۱۰ MB load در ۲ ثانیه، ۵۰ MB در ۱۰ ثانیه. user UX معیار اصلی.

Compatibility با engines

Unity:

- FBX: native support از ۲۰۱۰. اولین فرمت که Unity import می‌کند. animation، rigging، materials کامل.

- GLB: package "glTFast" یا "UnityGLTF" نصب کنید (Package Manager). سپس native support.

Unreal Engine:

- FBX: native support قوی. ۹۵٪ از پروژه Unreal از FBX استفاده می‌کند.

- GLB: plugin "glTF for Unreal" (Epic رسمی، رایگان). نصب از Marketplace.

Blender:

- FBX: import/export native. اما گاهی issues با animation و materials در round-trip.

- GLB: native در Blender 2.8+. ساده‌تر و قابل اعتمادتر از FBX.

Web (Three.js، Babylon.js، Model Viewer):

- FBX: نه. browser native نمی‌فهمد.

- GLB: native. این فرمت متولد شده برای web است.

برای پروژه ساده Unity/Unreal: FBX راحت‌تر چون native. برای پروژه که web هم هست: GLB single-source-of-truth.

PBR materials - نقطه قوت GLB

GLB از پایه برای PBR طراحی شده. material structure استاندارد: metallic-roughness workflow + emissive + normal + AO. کاملاً portable بین engines.

FBX قبل از PBR طراحی شده. در FBX 2018+ Adobe extension برای PBR اضافه شد ولی support در engines متغیر است. Maya FBX export ممکن است V-Ray material داشته باشد، Unity import آن را فهم نمی‌کند.

مثال عملی: شما یک کاراکتر در Substance Painter texture می‌کنید (PBR clean). export به Unity:

- GLB: متادیتای textures درست منتقل می‌شود. Unity automatic Standard Material می‌سازد. آماده.

- FBX: textures جداگانه export می‌شوند. شما باید Unity Material دستی setup کنید (assign Albedo، Normal، Metallic). ۱۰-۲۰ دقیقه manual.

برای workflow modern (Substance Painter → Unity)، GLB سریع‌تر بسیار. FBX legacy.

Animation و Rigging

این یک نقطه قوت تاریخی FBX است:

FBX animation: standard industry. تمام Maya HumanIK، Mocap data، blendshapes، constraints منتقل می‌شود. بسیاری از pipelines بزرگ هالیوود FBX-only هستند.

GLB animation: support اساسی. skeletal animation، blendshapes (morph targets). ولی برخی features پیشرفته (IK constraints، expressions) منتقل نمی‌شود.

برای کاراکتر animated پیچیده: FBX. به‌خصوص اگر rig HumanIK یا Maya-specific دارید.

برای کاراکتر animation ساده (walk، run، idle cycles): GLB کاملاً کافی.

Mixamo character + Mixamo animation: هر دو فرمت کار می‌کنند. Mixamo FBX و GLB هر دو export می‌کند. برای Unity GLB راحت‌تر، برای Maya FBX.

Sketchfab specific - کدام بهتر؟

Sketchfab مدل را به‌صورت native در GLB ذخیره می‌کند. سپس export به فرمت‌های دیگر می‌کند:

GLB از Sketchfab: original، optimized، compressed. کمترین file size.

FBX از Sketchfab: convert شده از GLB. file size بزرگ‌تر، گاهی textures جدا. کیفیت یکسان.

OBJ از Sketchfab: ساده‌ترین. فقط geometry + UV. textures جدا. مناسب ZBrush/Blender artist workflow.

USDZ از Sketchfab: برای Apple AR Quick Look و Vision Pro. بسیار optimized. توضیح در AR-Ready Sketchfab.

توصیه: همیشه GLB بخرید (default Sketchfab). اگر engine نیاز FBX دارد، می‌توانید در Blender GLB → FBX convert کنید (۲ دقیقه). این بهتر از خرید FBX directly چون یک کپی original-source-of-truth (GLB) دارید.

تبدیل بین فرمت‌ها

گاهی نیاز به conversion دارید. ابزارها:

Blender (free): import یک فرمت، export فرمت دیگر. ۹۵٪ مواقع perfect نتیجه. animation و materials معمولاً منتقل می‌شود.

Adobe Substance 3D Stager: import GLB، USDZ، FBX. export متعدد. ابزار پروفشنال.

Cesium / glTF Pipeline: command-line tool برای optimization GLB. compress geometry، compress textures. مناسب workflow batch.

RapidCompact: online tool برای optimize/decimate models. file conversion + LOD generation.

برای اکثر کاربران Blender کافی. workflow ساده:

۱. File → Import → glTF (یا FBX، OBJ)

۲. (optional) edit نهایی

۳. File → Export → GLB (یا FBX)

این process زمان حدود ۲-۵ دقیقه می‌برد. کاملاً قابل اعتماد.

نتیجه‌گیری: کدام انتخاب کنم؟

GLB استفاده کنید اگر:

- پروژه web (Three.js، Babylon.js، WebXR)

- AR Quick Look یا Scene Viewer

- Vision Pro Apple (USDZ derivative GLB)

- Unity یا Unreal با package glTF نصب شده

- می‌خواهید file size کوچک

- workflow modern (Substance Painter PBR)

FBX استفاده کنید اگر:

- legacy pipeline Maya/Max/Houdini

- character با rig پیچیده Maya HumanIK

- Mocap data از سیستم industry

- engine بدون package gltf (Unity legacy)

- compatibility با Mudbox، Mari، classic VFX tools

توصیه عمومی: شروع با GLB. اگر engine یا workflow specific FBX می‌خواهد، در Blender convert کنید. این یک workflow standardize است که در آینده هم آسان می‌ماند.

Sketchfab خرید: همیشه GLB primary. FBX secondary اگر نیاز داشتید. توضیح خرید در راهنمای Sketchfab.

سوالات متداول

GLB در iOS Safari کار می‌کند؟

iOS Safari برای AR Quick Look از USDZ استفاده می‌کند نه GLB. اما GLB در WebXR (Safari ۱۵+) کار می‌کند. برای AR در iOS، USDZ را استفاده کنید. Sketchfab معمولاً USDZ به‌علاوه GLB ارائه می‌کند.

GLB compression چقدر loss دارد?

Draco compression (geometry) معمولاً lossless اما با cost CPU هنگام decompress. KTX2 (textures) lossy اما کیفیت بسیار بالا. در عمل difference visual ناچیز.

FBX در نسخه‌های مختلف compatibility چه؟

FBX 2018-2020 standard. قدیمی‌تر (FBX 2010-2015) ممکن است در engines جدید issues داشته باشد. Sketchfab معمولاً نسخه modern export می‌کند.

برای Unity URP کدام بهتر؟

URP با glTFast package (رایگان از Unity) GLB native کار می‌کند. material conversion automatic. توصیه شد. FBX هم کار می‌کند ولی manual material setup.

multiple models در یک فایل؟

هر دو فرمت ساپورت می‌کنند. GLB همه meshes را در یک scene graph قرار می‌دهد. FBX hierarchy تخت‌تر. در engines، scene graph صحیح imported می‌شود.

license برای فرمت تفاوت دارد؟

خیر. license مدل به فرمت ربط ندارد. شما با خرید license همه فرمت‌ها را دریافت می‌کنید.

OBJ هنوز استفاده می‌شود؟

برای ZBrush sculpting و Blender simple workflow بله. اما برای production OBJ outdated است (textures جدا، animation نه). GLB جایگزین modern.

مقالات مرتبط

Sketchfab ۸ خرداد ۱۴۰۴ • 12 دقیقه Sketchfab ۱ خرداد ۱۴۰۴ • 12 دقیقه Sketchfab ۲۵ اردیبهشت ۱۴۰۴ • 12 دقیقه