Animasi · bei.pm

Diterbitkan pada 19/11/2015·Dikemas kini pada 13/02/2025·Malaiisch
Teks ini telah diterjemahkan secara automatik melalui OpenAI GPT-4o Mini.

Bentuk fail yang diterangkan di halaman ini berdasarkan analisis teknikal harta intelek daripada Dynamix, Inc. dan Sierra Entertainment.
Harta intelek ini kini adalah sebahagian daripada aset Activision Publishing, Inc. / Activision Blizzard, Inc. dan kini dimiliki oleh Microsoft Corp..

Informasi ini telah dikumpulkan melalui Rekayasa Balik dan Analisis Data untuk tujuan pengarsipan dan interoperabiliti dengan data sejarah.
Tiada spesifikasi proprietari atau rahsia yang digunakan.

Permainan ini kini boleh dibeli sebagai muat turun di gog.com.

Sekarang kita masuk ke kelas utama disiplin dalam format data Outpost 2:
Animasi.

Senarai animasi dimulakan dengan header global yang berfungsi terutamanya untuk pengesahan data. Seterusnya adalah definisi animasi yang terperinci, yang dibahagikan kepada 3 tahap:

  1. Animasi
    Satu animasi adalah instans tertinggi; ia menggambarkan animasi bagi satu unit, bangunan, atau 'animasi partikel' (kejadian meteor, cuaca, letupan) dalam keadaan tertentu.
  2. Frame
    Satu frame adalah satu gambar dalam satu animasi. Satu animasi boleh mengandungi satu atau lebih frame.
  3. Subframe
    Satu subframe adalah maklumat yang menunjukkan bahawa bitmap tertentu harus dilukis pada posisi tertentu dalam satu frame berdasarkan kriteria tertentu. Satu frame boleh mengandungi satu atau lebih subframe.

Seterusnya adalah definisi animasi yang spesifik.

Adr x0 x1 x2 x3 x4 x5 x6 x7 x8 x9 xA xB xC xD xE xF watak
0x0000 -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- . . . . . . . . . . . . . . . .
Offset Jenis Data Nama Penjelasan
0x0000 uint(32) Jumlah animasi

Berapa banyak rekod animasi yang terdapat

0x0004 uint(32) Bilangan Bingkai

Berapa banyak bingkai yang sepatutnya ada secara keseluruhan

0x0008 uint(32) Bilangan Subframe

Berapa banyak subframe yang seharusnya ada secara keseluruhan

0x000c uint(32) Bilangan entri pilihan

Berapa banyak "entri pilihan" yang ada.

Animasi

Adr x0 x1 x2 x3 x4 x5 x6 x7 x8 x9 xA xB xC xD xE xF watak
0x0000 -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- . . . . . . . . . . . . . . . .
0x0010 -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- . . . . . . . . . . . . . . . .
0x0020 -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- . . . . . . . . . . . . . . . .
Offset Jenis Data Nama Penjelasan
0x0000 uint(32) Tidak dikenali 1

Maklumat Tidak Dikenali

0x0004 uint(32) Kotak Pembatas: Kiri

Menunjukkan awal kiri (dalam piksel) bagi Bounding Box.

0x0008 uint(32) Kotak Pembatas: Atas

Memberikan permulaan atas (dalam pixel) bagi Bounding Box.

0x000c uint(32) Kotak Pembatas: Lebar

Memberi lebar (dalam Piksel) bagi Bounding Box.

0x0010 uint(32) Kotak Pembatas: Tinggi

Menunjukkan tinggi (dalam Piksel) Bounding Box.

0x0014 uint(32) Offset: X

Menunjukkan titik tengah mendatar animasi

0x0018 uint(32) Offset: Y

Menunjukkan tengah vertikal animasi

0x001c uint(32) Tidak Dikenali 2

Maklumat Tidak Dikenali

0x0020 uint(32) Bilangan Bingkai

Menunjukkan berapa banyak bingkai animasi yang terdapat dalam animasi ini

0x0024 uint(32) Bilangan Tingkap

Nyatakan berapa banyak tingkap yang perlu digunakan semasa melukis

Data daripada lapisan teratas, animasi, adalah terutamanya data pengurusan - Boundingbox merujuk kepada koordinat tanda di sekitar kenderaan/bangunan, apabila ia dipilih dan juga menunjukkan kawasan yang boleh diklik.

Offset menentukan terutamanya "titik null"; titik yang perlu diselaraskan atau ditolak daripada koordinat dalaman permainan. Kita juga boleh katakan secara matematik: offset merujuk kepada asal koordinat di sini.

Bagi tingkap, sama seperti offset, terdapat 4 nilai uint(32) bagi setiap tingkap, yang menunjukkan kawasan yang boleh digunakan untuk subframe tertentu. Di luar tingkap, sepanjang ia diperuntukkan untuk bitmap, tidak boleh dilukis.

Rangka

Adr x0 x1 x2 x3 x4 x5 x6 x7 x8 x9 xA xB xC xD xE xF watak
0x0000 -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- . . . . . . . . . . . . . . . .
Offset Jenis Data Nama Penjelasan
0x0000 uint(8) Bilangan subframe dan toggle untuk Pilihan 1, 2

Nilai ini mengandungi:

  • 0x7F (Bitmask): Jumlah subframe yang digunakan dalam frame ini
  • 0x80: Maklumat sama ada Pilihan 1 dan 2 ada
0x0001 uint(8) Tidak Dikenal 1 dan Toggle untuk Pilihan 3, 4

Nilai ini mengandungi:

  • 0x7F (Bitmask): Tidak diketahui - Saya sangat mengesyaki bahawa ini adalah jumlah Gameticks yang berlalu sebelum bingkai seterusnya ditunjukkan
  • 0x80: Maklumat tentang sama ada Pilihan 3 dan 4 ada
0x0002 uint(8) Pilihan 1

Tidak Dikenali

0x0003 uint(8) Pilihan 2

Tidak Dikenali

0x0004 uint(8) Pilihan 3

Tidak Dikenali

0x0005 uint(8) Pilihan 4

Tidak Dikenali

Subframe

Adr x0 x1 x2 x3 x4 x5 x6 x7 x8 x9 xA xB xC xD xE xF watak
0x0000 -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- . . . . . . . . . . . . . . . .
Offset Jenis Data Nama Penjelasan
0x0000 uint(16) Bitmap-Id

Nyatakan bitmap mana yang harus digunakan untuk subframe ini

0x0002 uint(8) Tidak dikenali 1

Tidak diketahui - tetapi saya sangat mengesyaki bahawa ini berkaitan dengan keutamaan render (Z-Layer).

0x0003 uint(8) Id Subframe

Nyatakan dalam subframe mana kita berada

0x0004 sint(16) Offset - Mendatar

Nyatakan di mana dalam bingkai subbingkai harus diletakkan, atau berapa banyak piksel bitmap perlu dipindahkan secara mendatar

0x0006 sint(16) Offset - Vertikal

Nyatakan di mana dalam bingkai subbingkai harus diletakkan, atau berapa banyak piksel bitmap harus dipindahkan secara menegak.

Dengan ini, kita kini boleh menggabungkan bingkai individu serta animasi lengkap, di sini sebagai contoh pada animasi yang lebih kompleks, animasi dengan indeks 500, didemonstrasikan

Animasi 500

Animasi 500 menunjukkan bagaimana sebuah Plymouth-transport yang dipenuhi dengan bahan mentah biasa sedang dibongkar. Ini adalah salah satu dari sedikit animasi yang menggunakan fungsi pengendalian tetingkap.

Dan dengan itu, animasi lengkap dapat disatukan.
Malangnya, masih ada masalah dengan pintu muatan atas, kerana bit yang berkaitan dalam maklumat jenis grafik tidak ditetapkan.

Sini ada beberapa sprite lain yang dianimasikan dengan indah dari permainan:

Penjanaan animasi 500 yang diilustrasikan

Animasi 500 siap disatukan

Plymouth Kilang Bangunan

Eden Pangkalan Angkasa

Eden Pusat Perubatan

SCAT

Plymouth Pangkalan Angkasa

Easteregg:
Santa Claus

Easteregg:
Dog Dans