Анимациялар · bei.pm

Жарияланған күні 19.11.2015·Жаңартылған күні 13.02.2025·Қазақ тілі
Бұл мәтін OpenAI GPT-4o Mini арқылы автоматты түрде аударылды.

Осы бетте сипатталған файл форматтары Dynamix, Inc. және Sierra Entertainment компанияларының интеллектуалдық меншік техникалық анализіне негізделген.
Интеллектуалдық меншік қазіргі уақытта Activision Publishing, Inc. / Activision Blizzard, Inc. мүлкіне кіреді және қазіргі уақытта Microsoft Corp. компаниясының меншігінде.

Ақпараттар Reverse Engineering және Деректерді талдау арқылы архивтеу және тарихи деректермен өзара әрекеттесу мақсатында жиналған.
Патенттелген немесе құпия спецификациялар қолданылған жоқ.

Ойын қазіргі уақытта gog.com сайтында жүктеп алу үшін сатып алынуы мүмкін.

Енді Outpost 2 деректер форматындағы пәндердің корольдік класына келейік:
Анимациялар.

Анимация тізімдері деректерді тексеру үшін негізінен қолданылатын глобалдық тақырыппен басталады. Одан кейін нақты анимация анықтамалары 3 деңгейге бөлінеді:

  1. Анимация
    Анимация - бұл ең жоғарғы инстанция; ол бірлік, ғимарат немесе 'бөлшек анимациясы' (комета соққысы, ауа райы, жарылыс) белгілі бір бастапқы күйдегі анимацияны білдіреді.
  2. Кадр
    Кадр - бұл анимация ішіндегі бір жалғыз сурет. Анимацияда бір немесе бірнеше кадр болуы мүмкін.
  3. Субкадр
    Субкадр - бұл белгілі бір битмаптың белгілі бір критерийлер бойынша кадрдың белгілі бір орнына салынуы туралы ақпарат. Бір кадрда бір немесе бірнеше субкадр болуы мүмкін.

Кейін тікелей жеке анимация анықтамалары жалғасады.

Adr x0 x1 x2 x3 x4 x5 x6 x7 x8 x9 xA xB xC xD xE xF символ
0x0000 -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- . . . . . . . . . . . . . . . .
Орталық Деректер түрі Атауы Түсініктеме
0x0000 uint(32) Анимациялардың саны

Қанша анимация деректері бар

0x0004 uint(32) Фреймдер саны

Барлығы қанша фрейм болуы керек

0x0008 uint(32) Субфреймдер саны

Бәрін қосқанда қанша субфрейм болуы керек

0x000c uint(32) Опционалдық жазбалар саны

Қанша "таңдаулы жазбалар" бар.

Анимация

Adr x0 x1 x2 x3 x4 x5 x6 x7 x8 x9 xA xB xC xD xE xF символ
0x0000 -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- . . . . . . . . . . . . . . . .
0x0010 -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- . . . . . . . . . . . . . . . .
0x0020 -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- . . . . . . . . . . . . . . . .
Орталық Деректер түрі Атауы Түсініктеме
0x0000 uint(32) Белгісіз 1

Белгісіз ақпараттар

0x0004 uint(32) Шекаралық жәшік: Сол жақ

Шекаралық қораптың сол жақтан басталатын (пиксельмен) арақашықтығын көрсетеді.

0x0008 uint(32) Шекаралық жәшік: Жоғары

Жоғарғы басталуды (пиксельмен) Шекаралық жәшік үшін көрсетеді.

0x000c uint(32) Шекаралық қорап: Ені

Бұрыштық қораптың (i>Bounding Box) енін (пиксельмен) көрсетеді.

0x0010 uint(32) Шекаралық жәшік: Биіктік

Bounding Box-тың биіктігін (пиксельмен) көрсетеді.

0x0014 uint(32) Офсет: X

Анимацияның горизонталь орталығын көрсетеді

0x0018 uint(32) Офсет: Y

Анимацияның вертикаль орталығын көрсетеді

0x001c uint(32) Белгісіз 2

Белгісіз ақпарат

0x0020 uint(32) Фреймдер саны

Бұл анимацияда қанша анимация кадрлары бар екенін көрсетеді

0x0024 uint(32) Терезелер саны

Сызу кезінде қанша терезе қолданылатынын көрсетіңіз

Жоғарғы қабаттың, анимацияның, деректері негізінен басқару деректері болып табылады - Boundingbox көліктің/ғимараттың айналасындағы белгінің координаттарын көрсетеді, егер ол таңдалса, және сонымен қатар қай аймақтың басу үшін жарамды екенін білдіреді.

Смещение негізінен "нөлдік нүктені" анықтайды; ойын ішіндегі координаттарға қосылатын немесе алынып тасталатын нүкте. Математикалық тұрғыдан алғанда, смещение мұнда координата бастауын білдіреді.

Windows-тар, смещение секілді, әрқайсысы (әр Windows үшін) 4 uint(32) мәндерінен тұрады, олар жеке субфреймдер үшін қолдануға болатын аймақты көрсетеді. Windows-тан тыс, егер Bitmap үшін тиісті түрде белгіленген болса, сызуға болмайды.

Шеңбер

Adr x0 x1 x2 x3 x4 x5 x6 x7 x8 x9 xA xB xC xD xE xF символ
0x0000 -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- . . . . . . . . . . . . . . . .
Орталық Деректер түрі Атауы Түсініктеме
0x0000 uint(8) Субкаркас саны және Опционал 1, 2 үшін қосқыш

Бұл мән мыналарды қамтиды:

  • 0x7F (Биттік маска): Бұл кадрда пайдаланылатын субкадрлар саны
  • 0x80: Опционал 1 және 2-нің бар екені туралы ақпарат
0x0001 uint(8) Белгісіз 1 және 3, 4 үшін қосқыш

Бұл мән мыналарды қамтиды:

  • 0x7F (биттік маска): Белгісіз - мен мұнда келесі кадр көрсетілгенше өтетін ойын тактыларының саны туралы айтып тұрғанымды сенімді түрде болжап отырмын
  • 0x80: 3 және 4 опцияларының бар-жоғы туралы ақпарат
0x0002 uint(8) Таңдамалы 1

Белгісіз

0x0003 uint(8) Опционал 2

Белгісіз

0x0004 uint(8) Міндетті емес 3

Белгісіз

0x0005 uint(8) Таңдаулы 4

Белгісіз

Субрамка

Adr x0 x1 x2 x3 x4 x5 x6 x7 x8 x9 xA xB xC xD xE xF символ
0x0000 -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- . . . . . . . . . . . . . . . .
Орталық Деректер түрі Атауы Түсініктеме
0x0000 uint(16) Bitmap-Id

Бұл қосымша кадр үшін қандай битмап қолданылатынын көрсетіңіз

0x0002 uint(8) Белгісіз 1

Белгісіз - бірақ мен бұл Render-Priorität (Z-Layer) екеніне күмәнім жоқ.

0x0003 uint(8) Субкаркас-идентификаторы

Қай субфрейдте екенімізді көрсетеді

0x0004 sint(16) Офсет - Горизонтальды

Фрейм ішінде субфреймнің қай жерде орналасатынын не битмаптың қанша пиксельге горизонтальды жылжытылуы керектігін көрсетеді

0x0006 sint(16) Офсет - Вертикаль

Фреймнің ішінде субфреймді қай жерде орналастыру керектігін немесе битмаптың вертикаль бойынша неше пиксельге жылжытылуы тиіс екенін көрсетіңіз

Осы арқылы біз енді жеке фреймдерді, сондай-ақ толық анимацияларды тиісті түрде жинақтай аламыз, мұнда күрделі анимацияның мысалында, индекс 500 бар анимация көрсетіледі

Анимация 500

Анимация 500 Плимут жүк көлігінің кәдімгі кенмен жүктеліп, түсірілгенін көрсетеді. Бұл терезе функционалын пайдаланатын бірнеше анимациялардың бірі.

Сондықтан толық анимацияны жинақтауға болады.
Өкінішке орай, жоғарғы жүк люгасы бойынша мәселе бар, себебі графикалық тип туралы ақпаратта сәйкес бит орнатылмаған.

Ойыннан тағы бірнеше тамаша анимирленген спрайттар:

Анимация 500-дің рендерленуі көрсетілген

Анимация 500 толық жиналған

Plymouth ғимараты-заводы

Eden ғарыш порты

Eden медициналық орталығы

SCAT

Plymouth ғарыш порты

Easteregg:
/Миколай

Easteregg:
Dans Dog