Giriş animasyon dosyası biçimi — MRTK2
Genel yapı
Giriş animasyon ikili dosyası 64 bitlik bir tamsayı sihirli sayı ile başlar. Bu sayının onaltılık gösterimindeki değeridir 0x6a8faf6e0f9e42c6
ve geçerli giriş animasyon dosyalarını tanımlamak için kullanılabilir.
Sonraki sekiz bayt, dosyanın ana ve ikincil sürüm numarasını belirten iki Int32 değeridir.
Dosyanın geri kalanı, sürüm numaraları arasında değişebilecek animasyon verileriyle alınır.
Section | Tür |
---|---|
Sihirli Sayı | Int64 |
Ana Sürüm Numarası | Int32 |
İkincil Sürüm Numarası | Int32 |
Animasyon Verileri | sürüm bölümüne bakın |
Sürüm 1.1
Giriş animasyonu verileri, animasyonun Kamera, El ve Göz Bakışı verilerini içerip içermediğini gösteren üç boole değerinden ve ardından animasyon eğrilerinden oluşan bir diziden oluşur. Mevcut eğriler bu boolean değerlerine bağlıdır. Her eğrinin farklı sayıda ana karesi olabilir.
Section | Tür | Notlar |
---|---|---|
Kamera Pozu Var | Boole | |
El Verisi Var | Boole | |
Göz Bakışı Var | Boole | |
Kamera | Poz Eğrileri | Yalnızca Kamera Pozu Var doğruysa |
Elle İzlenen Sol | Boole Eğrisi | Yalnızca El Verisi Var doğruysa |
Sağdan İzlenen El | Boole Eğrisi | Yalnızca El Verisi Var doğruysa |
Sola Sıkıştıran El | Boole Eğrisi | Yalnızca El Verisi Var doğruysa |
Eli Sağa Sıkıştırma | Boole Eğrisi | Yalnızca El Verisi Var doğruysa |
Sol El Eklemleri | Eklem Poz Eğrileri | Yalnızca El Verisi Var doğruysa |
El Eklemleri Sağ | Eklem Poz Eğrileri | Yalnızca El Verisi Var doğruysa |
Göz Bakışı | Işın Eğrileri] | Yalnızca Göz Bakışı Var doğruysa |
Sürüm 1.0
Giriş animasyon verileri bir dizi animasyon eğrisi içerir. Animasyon eğrilerinin sayısı ve anlamı sabittir, ancak her eğrinin farklı sayıda ana karesi olabilir.
Section | Tür |
---|---|
Kamera | Poz Eğrileri |
Elle İzlenen Sol | Boole Eğrisi |
Sağdan İzlenen El | Boole Eğrisi |
Sola Sıkıştıran El | Boole Eğrisi |
Eli Sağa Sıkıştırma | Boole Eğrisi |
Sol El Eklemleri | Eklem Poz Eğrileri |
El Eklemleri Sağ | Eklem Poz Eğrileri |
Eklem poz eğrileri
Her el için bir eklem animasyon eğrileri dizisi depolanır. Eklem sayısı sabittir ve her eklem için bir dizi poz eğrisi depolanır.
Section | Tür |
---|---|
Hiçbiri | Poz Eğrileri |
Bilek | Poz Eğrileri |
Palm | Poz Eğrileri |
ThumbMetacarpalJoint | Poz Eğrileri |
ThumbProximalJoint | Poz Eğrileri |
ThumbDistalJoint | Poz Eğrileri |
Başparmak İpucu | Poz Eğrileri |
IndexMetacarpal | Poz Eğrileri |
IndexKnuckle | Poz Eğrileri |
IndexMiddleJoint | Poz Eğrileri |
IndexDistalJoint | Poz Eğrileri |
Dizin İpucu | Poz Eğrileri |
MiddleMetacarpal | Poz Eğrileri |
MiddleKnuckle | Poz Eğrileri |
MiddleMiddleJoint | Poz Eğrileri |
MiddleDistalJoint | Poz Eğrileri |
Orta İpucu | Poz Eğrileri |
RingMetacarpal | Poz Eğrileri |
RingKnuckle | Poz Eğrileri |
RingMiddleJoint | Poz Eğrileri |
RingDistalJoint | Poz Eğrileri |
Halka İpucu | Poz Eğrileri |
PinkyMetacarpal | Poz Eğrileri |
PembeKnuckle | Poz Eğrileri |
PinkyMiddleJoint | Poz Eğrileri |
PinkyDistalJoint | Poz Eğrileri |
Pembe İpucu | Poz Eğrileri |
Poz eğrileri
Poz eğrileri, konum vektörünün 3 animasyon eğrisinin ve ardından döndürme quaternion için 4 animasyon eğrisinin bulunduğu bir dizidir.
Section | Tür |
---|---|
Konum X | Kayan Eğri |
Konum Y | Kayan Eğri |
Z Konumunu Belirleme | Kayan Eğri |
Döndürme X | Kayan Eğri |
Döndürme Y | Kayan Eğri |
Döndürme Z | Kayan Eğri |
Döndürme W | Kayan Eğri |
Ray eğrileri
Ray eğrileri, kaynak vektör için 3 animasyon eğrisinin ve ardından yön vektörünün 3 animasyon eğrisinin yer aldığı bir dizidir.
Section | Tür |
---|---|
Kaynak X | Kayan Eğri |
Kaynak Y | Kayan Eğri |
Kaynak Z | Kayan Eğri |
Yön X | Kayan Eğri |
Yön Y | Kayan Eğri |
Yön Z | Kayan Eğri |
Kayan eğri
Kayan nokta eğrileri, değişken sayıda ana kareye sahip tam teşekküllü Bézier eğrileridir. Her ana karede bir saat ve eğri değerinin yanı sıra her ana karenin sol ve sağ tarafında tanjantlar ve ağırlıklar depolar.
Section | Tür |
---|---|
Kaydırma Öncesi Modu | Int32, Kaydırma Modu |
Kaydırma Sonrası Modu | Int32, Kaydırma Modu |
Ana kare sayısı | Int32 |
Ana Kareler | Kayan Anahtar Çerçeve |
Kayan ana kare
Kayan anahtar kare, tanjant ve ağırlık değerlerini temel süre ve değerin yanı sıra depolar.
Section | Tür |
---|---|
Saat | Float32 |
Değer | Float32 |
InTangent | Float32 |
DışTangent | Float32 |
InWeight | Float32 |
OutWeight | Float32 |
WeightedMode | Int32, Ağırlıklı Mod |
Boole eğrisi
Boole eğrileri açık/kapalı değerlerin basit dizileridir. Her ana karede eğrinin değeri hemen çevrilir.
Section | Tür |
---|---|
Kaydırma Öncesi Modu | Int32, Kaydırma Modu |
Kaydırma Sonrası Modu | Int32, Kaydırma Modu |
Ana kare sayısı | Int32 |
Ana Kareler | Boole Anahtar Çerçevesi |
Boole ana karesi
Boole ana karesi yalnızca bir saati ve değeri depolar.
Section | Tür |
---|---|
Saat | Float32 |
Değer | Float32 |
Kaydırma modu
Pre-ve Post-Wrap modlarının semantiği Unity WrapMode tanımını izler. Bunlar aşağıdaki bitlerin birleşimidir:
Değer | Anlamı |
---|---|
0 | Varsayılan: Daha yüksek ayarlanmış varsayılan yineleme modunu okur. |
1 | Bir kez: Zaman animasyon klibinin sonuna ulaştığında, klip otomatik olarak yürütülmeyi durdurur ve zaman klibin başına sıfırlanır. |
2 | Döngü: Zaman animasyon klibinin sonuna ulaştığında, zaman başlangıçta devam eder. |
4 | PingPong: Zaman animasyon klibinin sonuna ulaştığında, zaman başlangıç ve bitiş arasında geri ping pong yapacaktır. |
8 | ClampForever: Animasyonu geri alır. Sona ulaştığında, son kareyi oynamaya devam eder ve asla durmaz. |
Ağırlıklı mod
Ağırlıklı modun semantiği Unity WeightedMode tanımını izler.
Değer | Anlamı |
---|---|
0 | Hiçbiri: Eğri segmentleri hesaplanırken hem Sıklık hem de outWeight değerini hariç tutun. |
1 | In: Önceki eğri segmentini hesaplarken InWeight'a ekleyin. |
2 | Out: Sonraki eğri segmentini hesaplarken outWeight ekleyin. |
3 | Her İkisi: Eğri segmentlerini hesaplarken Sıklık ve outWeight'a dahil edin. |