Animaatiot · bei.pm
Tällä sivulla kuvattuja tiedostomuotoja on analysoitu teknisesti Dynamix, Inc.- ja Sierra Entertainment-yhtiöiden henkisen omaisuuden perusteella.
Henkinen omaisuus on nykyään osa Activision Publishing, Inc.- / Activision Blizzard, Inc.-yhtymää ja tällä hetkellä sen omistaa Microsoft Corp..
Tiedot on kerätty käänteisen insinöörityön ja tietoanalyysin avulla arkistointia ja yhteensopivuutta varten historiallisten tietojen kanssa.
Ei ole käytetty mitään omia tai luottamuksellisia spesifikaatioita.
Peli on tällä hetkellä saatavilla ostettavaksi ladattavana gog.com -sivustolla.
Nyt siirrymme Outpost 2 -tiedostomuotojen huipputason kurinalaisuuksiin:
Animaatioihin.
Animaatioruettelot alkavat globaalilla otsikolla, joka palvelee ensisijaisesti tietojen varmennusta. Tämän jälkeen seuraavat varsinaiset animaatiomääritelmät, jotka jakautuvat kolmeen tasoon:
-
Animaatio
Animaatio on korkein taso; se esittää animaatiota yksiköstä, rakennuksesta tai 'hiukkasanimaatiosta' (komettakolari, sää, räjähdys) tietyssä lähtötilanteessa. -
Kehys
Kehys on yksi kuva animaatiossa. Animaatio voi sisältää yhden tai useamman kehyksen. -
Alakehys
Alakehys on tieto siitä, että tietty bitmap on piirrettävä tiettyyn kehykseen tietyillä kriteereillä. Kehys voi sisältää yhden tai useamman alakehyksen.
Sitten seuraavat suoraan yksittäiset animaatiomääritelmät.
Osoite | x0 | x1 | x2 | x3 | x4 | x5 | x6 | x7 | x8 | x9 | xA | xB | xC | xD | xE | xF | merkki | |||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
0x0000 | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . |
Siirtymä | Tietotyyppi | Nimi | Selitys |
---|---|---|---|
0x0000 | uint(32) | Animaatioiden määrä | Kuinka monta animaatiotietuetta on olemassa |
0x0004 | uint(32) | Kehysten määrä | Kuinka monta kehystä yhteensä pitäisi olla |
0x0008 | uint(32) | Alustojen määrä | Kuinka monta alirunkoa pitäisi yhteensä olla |
0x000c | uint(32) | Valinnaisten tietojen määrä | Kuinka monta "valinnaista merkintää" on olemassa. |
Animaatio
Osoite | x0 | x1 | x2 | x3 | x4 | x5 | x6 | x7 | x8 | x9 | xA | xB | xC | xD | xE | xF | merkki | |||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
0x0000 | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . |
0x0010 | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . |
0x0020 | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . |
Siirtymä | Tietotyyppi | Nimi | Selitys |
---|---|---|---|
0x0000 | uint(32) | Tuntematon 1 | Tuntemattomat tiedot |
0x0004 | uint(32) | Rajauslaatikko: Vasemmalla | Antaa Bounding Box:n vasemman alun (pikseleissä). |
0x0008 | uint(32) | Rajauslaatikko: Ylhäällä | Antaa yläosan alun (pikseleinä) Bounding Box:lle. |
0x000c | uint(32) | Raja-alue: Leveys | Antaa Bounding Box:n leveyden (pikseleinä). |
0x0010 | uint(32) | Rajauskehys: Korkeus | Ilmoittaa Bounding Boxin korkeuden (pikseleinä). |
0x0014 | uint(32) | Siirto: X | Ilmaisee animaation vaakasuoran keskikohdan |
0x0018 | uint(32) | Siirto: Y | Ilmaisee animaation pystysuoran keskikohdan |
0x001c | uint(32) | Tuntematon 2 | Tuntematon tieto |
0x0020 | uint(32) | Kehysten määrä | Ilmoittaa, kuinka monta animaatio kehystä tässä animaatiossa on |
0x0024 | uint(32) | Windowsin määrä | Ilmoittaa, kuinka monta ikkunaa piirrettäessä käytetään |
Ylimmän tason, animaation, tiedot ovat ensisijaisesti hallintotietoja - Boundingbox tarkoittaa auton/rakennuksen ympärillä olevia koordinaatteja, kun se on valittuna, ja se myös osoittaa, mikä alue on klikattavissa.
Offset määrittää ensisijaisesti "nollapisteen"; pisteen, jota pelin sisäisiin koordinaatteihin kuuluu lisätä tai vähentää. Voisi myös sanoa matemaattisesti: offset tarkoittaa tässä koordinaattien alkuperää.
Ikkunoissa on, aivan kuten offsetissa, kullekin ikkunalle 4 uint(32) -arvoa, jotka määrittävät alueen, joka on käytettävissä yksittäisille alarunkoille. Ikkunoiden ulkopuolella ei saa piirtää, ellei bitmapille ole erikseen varattu tilaa.
Runko
Osoite | x0 | x1 | x2 | x3 | x4 | x5 | x6 | x7 | x8 | x9 | xA | xB | xC | xD | xE | xF | merkki | |||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
0x0000 | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . |
Siirtymä | Tietotyyppi | Nimi | Selitys |
---|---|---|---|
0x0000 | uint(8) | Alarun määrä ja kytkin Valinnainen 1, 2 | Tämä arvo sisältää:
|
0x0001 | uint(8) | Tuntematon 1 ja Vaihto-ominaisuus 3, 4 | Tämä arvo sisältää:
|
0x0002 | uint(8) | Valinnainen 1 | Tuntematon |
0x0003 | uint(8) | Valinnainen 2 | Tuntematon |
0x0004 | uint(8) | Valinnainen 3 | Tuntematon |
0x0005 | uint(8) | Valinnainen 4 | Tuntematon |
Aluke
Osoite | x0 | x1 | x2 | x3 | x4 | x5 | x6 | x7 | x8 | x9 | xA | xB | xC | xD | xE | xF | merkki | |||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
0x0000 | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . |
Siirtymä | Tietotyyppi | Nimi | Selitys |
---|---|---|---|
0x0000 | uint(16) | Bitmap-ID | Ilmoittaa, mikä bitmapia käytetään tälle alireunalle |
0x0002 | uint(8) | Tuntematon 1 | On tuntematon - epäilen kuitenkin vahvasti, että tässä on kyse renderöintiprioriteetista (Z-kerros). |
0x0003 | uint(8) | Alustakehys-ID | Ilmaisee, missä alikehyksessä olemme |
0x0004 | sint(16) | Offset - Vaaka | Ilmoittaa, mihin kohtaan kehystä alikehys tulisi sijoittaa, tai kuinka monta pikseliä bittikarttaa tulisi siirtää vaakasuunnassa. |
0x0006 | sint(16) | Offset - Vertikaalinen | Ilmoittaa, mihin kehykseen aliframe tulisi sijoittaa, tai kuinka monta pikseliä bittikarttaa tulisi siirtää pystysuunnassa. |
Nyt voimme koota yksittäisiä kehyksiä sekä kokonaisia animaatioita. Tässä esimerkkinä monimutkaisemmasta animaatiosta, animaatiosta, jonka indeksi on 500, demonstroidaan.
Animaatio 500
Animaatio 500 näyttää, kuinka Plymouth-kuljetusauto, joka on tavallisilla mineraaleilla kuormattu, puretaan. Tämä on yksi harvoista animaatioista, jotka hyödyntävät ikkunointitoimintoa.
Niinpä koko animaatio voidaan yhdistää.
Valitettavasti yläkuormausluukun kanssa on edelleen ongelma, sillä vastaavaa bittiä grafiikkatyyppitiedossa ei ole asetettu.
Tässä vielä muutamia kauniisti animoituja spritejä pelistä: