Obrazy rastrowe · bei.pm
Opisywane na tej stronie formaty plików opierają się na analizie technicznej własności intelektualnej Dynamix, Inc. oraz Sierra Entertainment.
Własność intelektualna jest obecnie częścią majątku Activision Publishing, Inc. / Activision Blizzard, Inc. i jest aktualnie w posiadaniu Microsoft Corp..
Informacje zostały zebrane poprzez inżynierię odwrotną oraz analizę danych w celach archiwizacji i interoperacyjności z danymi historycznymi.
Nie wykorzystano żadnych zastrzeżonych ani poufnych specyfikacji.
Gra jest obecnie dostępna do zakupu jako pobranie na stronie gog.com.
Adres | x0 | x1 | x2 | x3 | x4 | x5 | x6 | x7 | x8 | x9 | xA | xB | xC | xD | xE | xF | znak | |||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
0x0000 | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . |
0x0010 | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . |
Przesunięcie | Typ danych | Nazwa | Wyjaśnienie |
---|---|---|---|
0x0000 | uint(32) | Wyśrodkowana szerokość | Podaje szerokość linii danych pikseli w bajtach - ponieważ są one wyrównane do granic 4-bajtowych. Dzięki temu można szybko przejść do konkretnej linii obrazu. Dlaczego ta wartość jest przechowywana osobno, mimo że mogłaby być obliczona, jest niejasne. |
0x0004 | uint(32) | Przesunięcie | Określa przesunięcie pierwszej linii w bitmapie |
0x0008 | uint(32) | Wysokość | Podaje wysokość obrazu w pikselach |
0x000c | uint(32) | Szerokość | Podaje szerokość obrazu w pikselach |
0x0010 | uint(16) | Typ | Określa rodzaj obrazu. Wygląda na to, że jest to maska bitowa:
|
0x0012 | uint(16) | Paleta | Określa, która paleta z pliku PRT ma być używana |
Struktura danych pliku PRT określa, jak są zbudowane bitmapy używane dla sprite'ów. Bitmapy te służą jako pojedynczy element, z którego wiele łączy się w klatkę animacji sprite'a.
Konkretnych danych obrazowych można znaleźć w
op2_art.BMP w katalogu gry.
Jest niejasne, dlaczego ten plik bitmapowy posiada (przeważnie poprawny) nagłówek RIFF-Bitmap, ale prawdopodobnie Outpost 2 wykorzystuje systemowe API do ładowania grafik, tymczasowo przejmując ten nagłówek i nadpisując odpowiednie, zmienne pola.
Dane pikseli znajdują się w pliku BMP na pozycji Offset + uint32-Offset, który znajduje się w pliku BMP pod adresem 0x000A (offset danych RIFF-Bitmap) i odpowiada ponownie liniowemu układowi od góry do dołu, z lewej do prawej.
Grafiki monochromatyczne 1bpp mogą być rysowane w sposób, że kolor 0 oznacza pełną przezroczystość, a kolor 1 to półprzezroczysty czarny/szary, ponieważ monochromatyczne grafiki są zwykle używane do cieni pojazdów i budynków w animacjach.
Dzięki temu można już złożyć wiele grafik.