3D Model Formatları · FBX · Animasyon Sistemi
Rig Verileri: Kemik, Cluster ve Influence Envanteri
«Skin var ama 4 influence; motor 8 bekliyor / isimler çakışıyor» dans hatası değil; rig envanterinin taşınma şeklidir. Skeletal Animation üç ipin nasıl oynadığını anlattı; bu sayfa: iskelet ve skin tarafında hangi verilerin listelendiğini sabitler.
Holodepth'te rig verisi, zaman eğrilerinin scrub'ı değildir. Joint hiyerarşisinin topolojisi, cluster başına influence listesi, ağırlık yoğunluğu, isim/namespace disiplini ve bind ile ilişkili matris/pose alanlarının envanteridir. Constraintler IK gibi yardımcı bağları, Blend Shape iskeletsiz hedefleri alır. glTF'deki JOINTS/WEIGHTS packing Skinning (glTF)'de kalır.
Sayfayı bitirdiğinizde şu cümleyi kurabilmelisiniz: «Rig verisi joint ağacı + cluster/influence tablosudur. İsim ve kök seçimi export'ta kırılır. Influence sayısı motor limitine çarpar. Helper kemikler consumer'da sürpriz üretir. Skeletal sayfa oyunu, bu sayfa kadroyu anlatır. Constraint ayrı kadrodur.»
Bu sayfanın sınırı · komşu konularla ayrım
Bu sayfa FBX rig envanterini anlatır:
- Joint hiyerarşisi veri olarak
- Cluster / influence tablosu
- İsim, kök, helper disiplini
- Limit ve motor uyumu
- Holodepth teşhis açıları
Bilinçli olarak dışarıda bırakılan konular:
- Üç ipin birleşik oyunu / take → Skeletal Animation
- IK, parent, aim constraint → Constraintler
- Morph hedefleri → Blend Shape
- Objects/Connections genel → Scene Verisi
- glTF skin accessors → Skinning (glTF)
Kısa ayrım: Rig Verileri «kadro ve tablo» · Skeletal Animation «kadronun dansı» · Constraintler «yardımcı bağlar»
Kadro metaforu: kim sahneye yazılı?
Rig, oyunun kendisi değil kadro listesidir: hangi joint'ler var, kim kimin çocuğu, hangi cluster hangi Geometry'ye bağlı, köşe başına kaç influence yazılı. Skeletal Animation bu kadronun zamanla nasıl oynadığını anlatır; yanlış kadroyla doğru take birleşmez.
Orkestra partisyonu (take) doğru olsa bile eksik kemancı (joint) veya yanlış mikrofon hattı (cluster) konseri bozar.
Joint ağacı: topoloji verisi
FBX'te iskelet çoğu zaman Model (veya joint tipi düğüm) hiyerarşisidir: kök, omurga, kollar, parmak zincirleri. Her düğümün local TRS'i ve parent bağlantısı vardır. Ağaç topolojisi retarget ve motor tarafında «aynı isimli farklı ebeveyn» hatalarının kaynağıdır.
Holodepth envanter soruları: tek mi çoklu armature? Kök hangisi? Parmaklar dahil mi? Twist / roll yardımcı kemikleri export'ta var mı? Bunlar dans eğrisinden önce kadro kararlarıdır.
Cluster / Skin: influence tablosu
Cluster (veya eşdeğer skin linki) bir joint'in hangi köşeleri ne ağırlıkla etkilediğini tablolar. Tüm skin, bu tabloların Geometry üzerindeki birleşimidir. Scene bağlantısı kopuksa tablo dosyada «var» görünüp sahneye işlemez.
Pratik alanlar: köşe indeksi listesi, weight dizisi, ilişkili joint referansı, bazen link mode (normalize / total one / additive aileleri). Motor veya dönüştürücü normalize varsayımını yanlış okursa dirsek şişer.
Influence bütçesi: 4, 8 ve ötesi
DCC'de köşe başına onlarca influence boyanabilir; oyun motoru ve glTF yolu sıkça 4 (bazen 8) ile sınırlar. Export «prune / limit influences» yapmazsa ya sessizce kırpılır ya da consumer reddeder. Kırpma görsel kayıptır; red pipeline kırığıdır.
Holodepth: hedef platform influence tavanını rig checklist'ine yazın. «Maya'da güzel» tavanı bilmez; FBX kadrosu tavanı taşıyabilir veya taşıyormuş gibi yapabilir.
İsim ve namespace disiplini
Retarget, take eğrileri ve motor avatar şemaları isimle eşler:
LeftArm vs mixamorig:LeftArm vs
Arm_L. Namespace, prefix ve case farkı «rig yok» sanrısı üretir;
aslında kadro vardır, etiket uyuşmaz.
Skeletal sayfadaki take–joint buluşması burada köklenir: eğri yolu joint adınadır. Rename sonrası eski take, yeni kadroya yapışmaz.
Helper, leaf ve kontrol kemikleri
Stüdyo rig'i sıkça kontrol eğrileri, IK handle kemikleri, leaf tip, weapon socket gibi helper'lar içerir. Export hepsini joint sanıp consumer'a doldurursa hiyerarşi şişer, retarget bozulur. «Deformation bones only» / bake control preset'leri kadroyu sadeleştirir.
Constraint sayfası bu helper'ların davranışını; burada envanter uyarısını sabitler: dosyadaki her Model joint değildir.
Bind verisi envanterde
Skeletal sayfa bind'in neden kritik olduğunu anlattı. Rig envanteri açısından bakınca: her skin linkinin rest/bind ile ilişkili transform bilgisi, joint local matrisi ve Geometry'nin bind anındaki hali kontrol listesindedir. Eksik bind kaydı «patlak mesh» üretir; bu weight boyama hatası gibi görünür.
Teşhis: ağırlıklar simetrik ve temiz, bind/export pose kaymış → envanter bind satırına bakın.
glTF'e inen kadro (köprü)
Dönüştürücü joint listesini nodes'a, weight'leri JOINTS/WEIGHTS accessor'larına, bind'i inverseBindMatrices'e map'ler. Influence kırpma, unused joint atma, isim normalize burada olur. Holodepth: FBX kadrosunu «olduğu gibi» sanmayın; glTF kadrosu filtrelenmiş bir görünüm olabilir. Ayrıntı Skinning (glTF) sayfasında.
Holodepth perspektifleri
Sayılarla konuşun
Joint sayısı, max influence, skinned mesh adedi, orphan cluster sayısı: ticket'a sayı yazın. «Rig bozuk» sayı olmadan teşhis edilmez.
Şema çarpışması
Mixamo, motor iskeleti, stüdyo naming aynı FBX'te üst üste binebilir. Retarget öncesi tek şemaya normalize edin; kadroyu çoğaltmayın.
Teşhis maddeleri
- Joint ağacı tek kök mü, isimler stabil mi?
- Her skinned Geometry'nin cluster bağlantısı var mı?
- Max influence hedef tavanın altında mı?
- Helper kemikler bilinçli mi, sızmış mı?
- Bind envanteri tutarlı mı?
- Take eğri yolları güncel isimlerle mi?
- glTF/motor çıktısında joint sayısı beklenen mi?
Holodepth içgörüsü
Rig ticket'ında scrub bar'ı değil kadro sayımını açın. Yanlış isim, fazla helper veya kırpılmış influence çoğu «animasyon bug»unun asıl nedenidir.
Kadro net; sırada yardımcı bağlar
Joint ve cluster envanteri sabitlendi. Sonraki sayfa IK ve diğer constraint bağlarının FBX'te nasıl (veya bake edilerek) taşındığını açar: Constraintler.
Format okuyucusu özeti: Rig verisi kadro ve influence tablosudur. İsim, kök, helper ve tavan limitleri export'ta kırılır. Bind envanterdedir. Skeletal sayfa dansı, bu sayfa oyuncuları anlatır.