holodepth

3D Model Formatları · OBJ · OBJ vs glTF

Özellikler: İki Menü, İki Yetenek Yüzeyi

«İkisi de 3D dosya; neden birinde karakter oynuyor, diğerinde duruyor?» loader farkı değil; menüde olan / olmayan özelliklerdir. Dosya Boyutu faturayı tarttı; bu sayfa: OBJ ile glTF'in taşıdığı yetenek yüzeyini yüz yüze koyar.

Holodepth'te özellik kıyası, Limitleri'ndeki «OBJ'de X yok» sayfalarının özeti değildir; glTF Skinning / PBR / Keyframe derinliğinin kopyası da değildir. Burada soru şudur: hangi ihtiyaç hangi formatın menüsünde var, kısmi örtüşmeler (MTL≈PBR, o/g≈node) nerede yanıltır, karar nasıl verilir? Performans (zaman/CPU) ve modern ürün seçimi sonraki sayfalarda kalır.

Sayfayı bitirdiğinizde şu cümleyi kurabilmelisiniz: «OBJ menüsü: statik mesh + isteğe Phong-benzeri MTL. glTF menüsü: sahne grafı, PBR, clip, skin, morph, uzantılar. Ortak çekirdek geometri ve basit dokudur. Kısmi benzerlikler eşdeğerlik değildir. İhtiyaç listesi formatı seçtirir; boyut kıyası özellik ihtiyacını ezerse önce bu sayfaya bakın.»

Bu sayfanın sınırı · komşu konularla ayrım

Bu sayfa OBJ ↔ glTF yetenek yüzeyi kıyasını anlatır:

  • Ortak çekirdek ve ayrışan menüler
  • Kısmi örtüşme tuzakları
  • Uzantı vs vendor satır farkı
  • İhtiyaç → format karar iskeleti
  • Holodepth teşhis açıları

Bilinçli olarak dışarıda bırakılan konular:

  • OBJ limit derinliği (neden yok) → Limitleri grubu
  • glTF alan sözleşmeleri → ilgili glTF sayfaları (Skinning, PBR, …)
  • Byte / adil tartım → Dosya Boyutu
  • Parse, FPS, draw → Performans
  • 2020'ler ürün stratejisi → Modern Kullanım

Kısa ayrım: Özellikler «menüde ne var?» · Limitleri «OBJ neden taşımaz?» · glTF dalları «taşıyorsa nasıl yazar?»

Restoran menüsü metaforu

OBJ menüsü kısa ve nettir: çorba ve ana yemek (geometri), isteğe garnitür (MTL/doku). glTF menüsü uzun: sahne servisi, PBR mutfağı, zamanlı gösteriler (clip), iskelet dansı (skin), yüz ifadesi (morph), sezonluk özel (uzantılar). Aynı «yemek ye» ihtiyacı iki menüde farklı tabaklara düşer.

Menüde olmayanı garson (loader) uyduramaz. Uydurursa tahmin eder; sözleşme olmaz.

Ortak çekirdek: durağan yüzey

İki formatın kesişimi pratikte şudur:

  • Üçgen (veya çokgen→üçgen) mesh
  • Konum; isteğe normal ve UV
  • Basit renk / albedo doku niyeti
  • Statik, tek anlık görüntü

Bu çekirdek üzerinde OBJ ve glTF eşdeğer iş görebilir: prop, CAD inceleme kabuğu, eğitim küpü. Çekirdeğin dışına çıkan her ihtiyaç kıyası glTF lehine kaydırır; çekirdekte kalan işlerde OBJ hâlâ adaydır.

OBJ menüsü: ne sipariş edilir?

  • v / vt / vn / f geometri dili
  • o / g isim etiketleri (sahne grafı değil)
  • MTL: Ka/Kd/Ks/Ns/illum, map_* yolları
  • İnsan okunur metin; geniş DCC/CAD desteği

Menüde olmayanlar (özet, Limitleri'ne köprü): zaman clip, joint/weight, metallic–roughness sözleşmesi, node TRS ağacı, morph weights, standart uzantı kataloğu. Derin «neden yok» orada; burada «sipariş edilemez» yeter.

glTF menüsü: ne sipariş edilir?

  • scenes / nodes / meshes / primitives
  • accessors, bufferViews, binary buffer'lar
  • pbrMetallicRoughness (+ texture slotları)
  • animations (channels / samplers)
  • skins (joint, IBM, weights)
  • morph targets
  • extensionsUsed / extensionsRequired yüzeyi

Her satırın dosya sözleşmesi ilgili glTF sayfasındadır. Bu listenin kıyas anlamı: web runtime'ın beklediği modern varlık dili burada toplanır; OBJ'de karşılığı yoktur veya yaklaşıkdır.

Sahte eşdeğerler

Kıyası bozan dört sık «≈» iddiası:

  • MTL ≈ PBR: Phong dil ≠ metallic–roughness. Renk yolu benzer; enerji modeli değil.
  • o/g ≈ nodes: etiket ≠ parent–child TRS zinciri.
  • çoklu OBJ ≈ animations[]: dosya dizisi clip sözleşmesi değildir.
  • yorum/# PBR map ≈ ORM packing: parser yorumu okumaz.

Holodepth: kısmi benzerliği eşdeğerlik diye yazmayın. Ürün brief'inde «var» demek için menü satırı gerekir.

Uzantı yüzeyi vs vendor notu

glTF'de Draco, Basis, variants, instancing gibi yetenekler extensions* ile beyan edilir; loader matrisi bilinçli seçilir. OBJ'de vendor'ın eklediği satırlar (Pr/Pm, özel map) evrensel sözleşme değildir; bir araç okur, web loader düşürür.

Kıyas sonucu: glTF'de «ek özellik» resmi ve taşınabilir olabilir; OBJ'de «ek satır» çoğu zaman taşınamaz. Import/Export Köprüsü bunu bagaj dilinde, burada menü dilinde sabitler.

İhtiyaç listesi formatı seçer

Boyuttan önce (veya boyuta paralel) şu soruları işaretleyin:

  • Clip / iskelet / morph lazım mı? → glTF
  • IBL / metal–rough lookdev lazım mı? → glTF
  • Node hiyerarşisi / instance sahne lazım mı? → glTF
  • Yalnızca statik siluet + basit albedo mu? → OBJ aday
  • CAD/scan handoff / metin diff mu? → OBJ aday

Tek «evet» glTF kutusu çoğu web ürününde formatı kilitler. Hepsi «hayır» ise OBJ hâlâ meşru; Modern Kullanım bu ayrımı ürün dilinde sürdürür.

Göç haritası: ne gelir, ne uydurulur?

OBJ→glTF dönüşümünde tipik kader:

  • Geometri / UV / normal → gelir
  • Kd / map_Kd → baseColor'a yaklaşık map
  • Ks/Ns → roughness/metal tahmin veya sabit
  • Clip / skin / morph → gelmez (kaynakta yok)
  • o/g → bazen node/mesh adına; TRS zinciri doğmaz

«glTF oldu» ≠ «özellik yüzeyi OBJ ile aynı kaldı». Eksik menü satırları dönüşümle doğmaz; DCC'de yeniden üretilir.

Holodepth perspektifleri

Brief dili

Müşteri «animasyonlu PBR model» dediğinde format tartışması bitmiştir: glTF (veya eşdeğer). «Statik maket» dediğinde OBJ açılır. Brief'i format adından önce özellik listesine çevirin.

Checklist boşluğu

Ekipler bazen yalnızca boyut kıyaslar; sonra «neden oynatmıyor?» diye sorar. Özellik checklist'i boyut slaytından önce gelsin.

Hibrit dürüstlük

Master OBJ + publish glTF meşrudur; ikisine de «aynı özellik» demek değildir. README'de menü farkını yazın.

Teşhis maddeleri

  1. İhtiyaç listesi yazılı mı?
  2. İhtiyaç ortak çekirdekte mi, glTF menüsünde mi?
  3. Sahte eşdeğer (MTL≈PBR vb.) kullanılıyor mu?
  4. Vendor OBJ satırı web sözleşmesi sanılıyor mu?
  5. Dönüşüm sonrası eksik özellik DCC'de planlandı mı?

Holodepth içgörüsü

Format savaşında önce menüyü açın. Boyut ve FPS, menüde olmayan yemeği getirmez. İhtiyaç glTF satırındaysa OBJ optimizasyonu zaman kaybıdır.

Menü net; sırada zaman ve maliyet

Yetenek yüzeyi kıyaslandı. Sonraki sayfa aynı iki formatı yükleme ve çalışma maliyeti açısından tartar: Performans.

Format okuyucusu özeti: OBJ kısa menü (statik + MTL); glTF uzun menü (sahne, PBR, zaman, skin, uzantı). Ortak çekirdek durağan mesh'tir. Sahte eşdeğerlerden kaçının. İhtiyaç listesi formatı seçer.