3D Modelleme Araçları · Blender → Web pipeline
Collection / Empty → Sahne Grafı: Outliner'dan Runtime'a
Blender Outliner'ı yazarlık haritasıdır; glTF node ağacı runtime haritasıdır. Bu sayfa Collection üyeliği ile parent zincirini ayırır, Empty'yi bilinçli düğüm yapar ve «teslim koleksiyonu»nu web sahne grafına kilitleyen sözleşmeyi kurar. Principled → glTF PBR materyal pasaportunu kapattı; burada kim kimi taşır sorusu vardır.
Holodepth bu yaprağı glTF nodes / children
şema turu veya Three.js Object3D API'si olarak yazmaz. Bakış açısı:
Outliner'da nasıl örgütlendiğiniz, export sonrası sahnede hangi
hiyerarşinin yaşadığı. Collection bir «klasör» gibi görünür ama her
klasör otomatik node olmaz; Empty bir «boş» gibi görünür ama çoğu zaman
en önemli pivot düğümüdür.
Sayfayı bitirdiğinizde şu cümleyi kurabilmelisiniz: «Collection üyeliği parent değildir. Teslim koleksiyonu isim sözleşmesidir. Empty bilinçli kök / socket olabilir. Instance ve helper kirliliği grafı şişirir. Düz vs derin hiyerarşi web niyetine göre seçilir. Graf profili ticket'tadır. Node teorisi glTF Sahne Verileri'ndedir. Sonraki kapı web için mesh temizliktir.»
Bu sayfanın sınırı · komşu konularla ayrım
Bu sayfa Blender Collection / Empty → web sahne grafı yazarlık disiplinini anlatır:
- Outliner vs runtime iki harita
- Üyelik ≠ parent
- Empty düğüm rolleri
- Teslim koleksiyonu · instance · helper
- Graf profilleri
Bilinçli olarak dışarıda bırakılan konular:
- glTF node / children / scene indeksleri → Node Hiyerarşisi
- TRS alanları · pivot teorisi → Transform / Pivot sayfaları
- Include / Active Collection panosu → glTF / GLB exporter ayarları
- Empty scale çarpanı (cetvel) → Birim / eksen / scale
- Mesh topo · NLA → sonraki / diğer Blender yaprakları
Kısa ayrım: Bu sayfa «Outliner'ı nasıl yazarım?» · Node Hiyerarşisi «pakette node nasıl durur?» · Exporter «hangi koleksiyon kutuya girer?» · Cetvel «kök Empty scale kaç?».
İki harita: yazarlık ve runtime
Outliner'da Collection'lar sahneyi insan için düzenler: Lighting, Helpers, Deliver_Hero, Archive. Runtime glTF grafı ise loader'ın gezebileceği parent/child ağacıdır. Holodepth uyarısı: bu iki harita otomatik özdeş değildir. Güzel Outliner, çöp runtime üretebilir; dağınık Outliner bazen şaşırtıcı derecede düzgün tek kök node basabilir.
Klasör düzeni sahne grafı değildir; parent zinciri sahne grafıdır.
Stüdyo sorusu: «Web'de bu asset'i hangi kökten tutacağız?» Cevap Outliner rengine değil, parent / Empty / Armature köküne yazılır.
Collection üyeliği ≠ parent
Bir mesh aynı anda bir Collection'da görünüp başka bir objeye parent olabilir. Export sonrası runtime'da yaşayan ilişki çoğunlukla parent / children zinciridir; Collection üyeliği «bu export kapsamına gir» filtresine daha yakındır.
Holodepth disiplini:
- Kapsamı Collection ile daraltın (teslim seti)
- Hiyerarşiyi parent / Empty ile kurun (runtime seti)
- İkisini aynı şey sanmayın
«Hepsi Deliver koleksiyonunda, ama parent yok» → düz liste node'lar. «Parent var, ama Active Collection yanlış» → boş veya eksik paket. Exporter Include satırı panodadır; burada yazarlık ayrımı vardır.
Empty: boş değil, bilinçli düğüm
Empty mesh taşımaz; bu yüzden stüdyoda «önemsiz» sanılır. Web'de ise sıkça en değerli düğümdür: ürün kökü, socket (weapon_attach), LOD anahtarı, animasyon hedefi. Holodepth Empty'yi üç rolle okur:
- Kök Empty: asset'i runtime'da tek transform'dan tutmak
- Socket Empty: ekipman / FX bağlama noktası (isim sözleşmeli)
- Helper Empty: ölçü, ışık hedefi, geçici hizalama: teslimde çoğu zaman dışarıda kalmalı
Kök Empty'nin scale'i cetvel sayfasındaki gizli çarpandır; burada rol tanımı vardır. İsimsiz «Empty.001» socket'i runtime'da bulunamaz; isimlendirme stüdyo adlandırma sözleşmesi ile kesişir, bu yaprakta minimum kural: teslim Empty'si ticket adıyla aynı kökü taşır.
Teslim koleksiyonu sözleşmesi
Holodepth stüdyolarına sabit bir Outliner alışkanlığı önerir: sahne içinde Deliver_* (veya eşdeğeri) adlı koleksiyon, yalnızca web'e gidecekleri tutar. Lighting_Lab, Refs, Archive ayrı kalır. Exporter Active Collection / Visible bu sözleşmeye oturur.
- Deliver adı asset kartı / ticket ile hizalı olsun
- İçine helper ve lab ışığı sokmayın
- Bir sahgede birden fazla Deliver varsa hangisinin export edildiği yazılı olsun
Teslim koleksiyonu çöp kutusu değildir; gümrük kapısındaki yolcu listesidir.
Instance ve linked: çoğalan sürpriz
Collection Instance / linked library Blender'da sahneyi hafif tutar; export'ta ise geometri çoğalabilir, dönüşüm çift binebilir veya beklenen tek kök kaybolabilir. Holodepth web tesliminde: instance'ı ya bilinçli «realize / make real» ile teslim kopyasında çözün, ya da exporter'ın instance davranışını preset notuna yazın. «Viewport'ta bir tane var» runtime'da on tane demektir bazen.
GPU instancing extension teorisi glTF Extensions izleğindedir; burada yazarlık tuzağı vardır.
Helper kirliliği: graf şişmanlığı
Ölçü Empty'leri, camera aim, light target, «temp_align» parent'ları Outliner'da masumdur. Include genişse hepsi node olur; runtime'da traverse maliyeti ve kafa karışıklığı artar. Exporter Cameras/Lights bagajı panodadır; burada Outliner hijyeni vardır: helper'ları Deliver dışındaki koleksiyonda tutun.
Holodepth teşhisi: bağımsız viewer'da beklenmedik Empty / Camera kalabalığı varsa önce Outliner teslim setine, sonra Include satırına bakın.
Düz mü, derin mi? Web niyeti
Derin parent zinciri (parça → alt parça → vida) DCC'de okunaklıdır; web ürün vitrininde çoğu zaman tek kök + birkaç socket yeter. Avatar / mekanik demo ise derin grafı bilinçli ister. Holodepth kuralı: derinlik «organizasyon zevki» için değil, runtime'ın tutacağı transform sayısı için seçilir.
- Vitrin: sığ graf, tek kök Empty, az child
- Avatar / rig: Armature kök sözleşmesi · mesh bağlı
- Modüler kit: socket Empty'leri + isim sözleşmesi
Üç sahne grafı profili
Ticket diline yapışan üç Outliner/runtime profili:
-
01 · Graf
Tek kök vitrin
- Outliner
- Deliver_* dar · helper dışarı
- Runtime
- Tek Empty kök · sığ child
- Include
- Active Collection = Deliver
-
02 · Graf
Avatar iskelet
- Outliner
- Karakter Deliver · lab ayrı
- Runtime
- Armature kök sözleşmesi · mesh bağlı
- Include
- Skin açık · helper kapalı
-
03 · Graf
Socket kit
- Outliner
- Deliver + Sockets koleksiyonu
- Runtime
- İsimli Empty socket'ler · scale 1
- Include
- Instance realize politikası yazılı
Örnek ticket: «Vitrin ürün · Metre ürün · Vitrin pişmiş · Vitrin MR · Tek kök vitrin».
Holodepth perspektifleri
Kök adı = asset adı
Runtime'da «Scene» veya «Empty.003» ile tutulan ürün, kod ve içerik ekibini ayırır. Kök ismi ticket ile aynı olsun.
İki haritayı ayrı yazın
Outliner screenshot'ı tek başına export kanıtı değildir. «Parent zinciri şu, Deliver şu» iki satır yeter.
Node şemasını burada ezberlemeyin
nodes, children, scene indeksleri
Node Hiyerarşisi
sayfasındadır. Bu yaprak Blender yazarlık diplomatıdır.
Teşhis maddeleri
- Graf profili ticket'ta mı?
- Deliver koleksiyonu dar ve isimli mi?
- Üyelik ile parent karıştırılmadı mı?
- Kök / socket Empty rolleri yazılı mı?
- Helper'lar Deliver dışında mı?
- Instance realize politikası var mı?
- Kök scale 1,1,1 (cetvel ile uyumlu) mu?
- Bağımsız viewer'da beklenen hiyerarşi görünüyor mu?
Holodepth içgörüsü
Web'de «hiyerarşi bozuk» cümlesi çoğu zaman glTF hatası değil, Outliner klasörü ile parent zincirinin aynı sanılmasıdır. Holodepth: koleksiyon yolcu listesidir; Empty ve parent runtime iskeletidir.
Sonraki kapı: web için mesh temizlik
Graf kilitlenince sıradaki kırılma çoğu zaman geometri kalitesidir: N-gon, custom normal, gereksiz yoğunluk. Sonraki sayfa Web için mesh temizlik bu hijyeni kurar.